Retrieve the Geographical Data of Country-Specific Shapes
The GetBoundaryGeoJSON() Apex method returns the geographical data, area, and perimeter for a list of geographical IDs.
Where,
mapsis the namespace that’s available after you install Salesforce Maps.APIis the class that contains the global methods exposed to developers.GetBoundaryGeoJSON()is the method.
This code takes two geographical IDs and returns their total and individual geometric data, area, and perimeter.
If you invoke methods within a flow, process builder, or trigger, avoid uncommitted work errors when you perform one of the following.
- Call the methods through a future method
- Call the methods as queueable
Uncommitted work errors can also arise if calling out to Salesforce Maps methods more than one time in a single transaction and the Salesforce Maps token hasn’t refreshed in the last 24 hours. If these errors occur, separate each callout into individual transactions.
Different processes refresh the token, such as plotting a route or schedule. The refresh process is almost immediate after each qualifying action occurs.
Input Format of the Parameters
- A list of geographical IDs with the format
{countrycode}-{level}-{id}. - A Boolean that determines whether the returned information of the shape is merged (
true) or separated (false).
Example
Although the return value is an Apex Map<String, Object> object, this JSON response illustrates the essential data you receive in the resulting map.