KML Layers

KML/KMZ layers allow you to view external geospatial data on top of your Salesforce data. They're also quite interesting to look at, as you can see in the below snapshot of the US Drought Monitor.

A KML (Keyhole Markup Language) file specifies a set of features for display in mapping software. These features may include places of interest, images, polygons, etc. and can offer insight about everything from crime statistics to recent earthquakes. KML files are sometimes compressed into KMZ files, but both file formats work in Geopointe. Many KML files are available publicly online from government websites and other sources. 

Add a New KML

KML layers are added to your Geopointe environment from the Map page on the Saved Layers tab. Click the Plus Sign (+).

Select KML from the list.

Give your KML a name and select the folder to store it in.

Now you need to decide how your KML is going to be stored. You can either upload the file (stored in a secure location via Geopointe) or link out to public URL (perfect for a KML that is updated by an external source on a regular basis). If you want to use a URL, swap the save settings by clicking Click to use a public URL instead. Geopointe supports KML, KMZ, and GeoRSS formats.

When ready, click Save & Add to Map to see your new layer or simply Save Layer if you don't need to see it right away.

Retrieve a Saved KML

Saved KML layers are available to you on the Saved Layers tab of the Geopointe control panel. All KML layers should be saved in a folder. To load one on the map, locate it in the folders or use the search function at the top of the list.

Once you've located your layer, click on it. It'll immediately begin to load onto the map.

Exporting KMLs from Geopointe

Rather than pulling data into Geopointe, you may need to pull your data out. If your Salesforce data needs to be exported and displayed in another mapping application (usually Google Earth), you can export map search results and shapes directly to a KML file. To do so, click the Actions button below the map. You should see Export KML as an option there. It will create and download a KML for you.

If the button is not there, a Geopointe Admin can activate it in Geopointe Setup on the Actions tabEdit Export KML in the List Actions and check the box for Available (Web). Click Save

This export will transfer your mapped search results into the KML file and hand-drawn polygon shapes, but no other layer types.

KML Restrictions and Limitations

It is important to note that Geopointe falls under the same restrictions as Google Maps KMLs do. That means that all files must meet Google's guidelines. Here is a highlight of some of the limits included in the guidelines (these can change at anytime):
Maximum fetched file size (raw KML, raw GeoRSS, or compressed KMZ) 3MB
Maximum uncompressed KML file size 10MB
Maximum number of Network Links 10
Maximum number of total document-wide features 1,000

It should also be noted that KML files in Geopointe are strictly a visual overlay; you cannot interact with them. They cannot be search against, filtered by, or used as map boundaries. If attribute data exists, you can click on the KML and see it, but that's the most you can do; no other actions are available.

KML Security

Because your uploaded KMLs are stored inside Geopointe, we have taken steps to ensure that your data remains secure. Here is an overview of the processes used to keep your data safe: 
  • A unique key is generated inside your Salesforce system for every file that gets uploaded. This key is used, along with some other information stored in Protected Custom Settings, to encrypt the file on our servers. This ensures that the data is unreadable by anyone on the Geopointe team. The file can only be unencrypted using the key in your Salesforce system in conjunction with the Geopointe software.
  • Google's servers need access to the file at the time of rendering the KML layer for a user. To accommodate this, we built an API for Google's servers to have special access to the unencrypted version of the file when the Geopointe software requests it. This access is for a very short period of time while it needs to be rendered onto the user's map (no more than a few seconds of access). Google does not have access to the files without Geopointe involved.

Note: Due to how the security of these files is implemented, KML Layers transferred from Production to a Sandbox via a Sandbox Refresh will not be loadable in the Sandbox. Files will need to be uploaded again from within that Sandbox system.

Publicly Stored KMLs

As mentioned above, KMLs do not have to be stored in Geopointe. They can also be stored externally and accessed through a public URL. It could be stored in one of the following ways:

  • Directly at the source - if permitted. If you want to pull in data from an external source that doesn't mind if you hyperlink to the original file, this is the easiest way to do it (and will keep your file up to date with any changes made).
  • On your company website - The file can be uploaded to your company's website and referenced from there.
  • Via a publicly shared link from an online storage provider - For example, the file could be stored in Dropbox or Google Drive where it's not strictly public, but can be accessed with a link.

Again, if you want to store KMLs publicly, use the Click to use a public URL instead link when you create the layer. A location for the URL will appear on your screen instead of the upload option.