IRestService Interface Reference

Inherits IRestGeofenceService, IRestAvoidFavorService, IRestCustomPlaceService, IRestMapService, IRestPolygonService, IRestGeocodeService, IRestPOIService, IRestLinkAttributesService, and IRestAccountInformationService.

Public Member Functions

Response About (Request request)
 The /About POST request returns a short blurb about the API version. More...
 
Task< List< TrafficIncident > > GetTrafficIncidentsBoxAsync (string bbox, string language)
 The /trafficIncidents/box GET request retrieves traffic incidents within a given geographic bounding box. More...
 
ProfileResponseBody GetProfiles (ALK.PCM.Model.VehicleType? vehicleType, DataRegion region)
 
RouteResponse GetRoutePath (List< double[]> stops, ALK.PCM.Model.VehicleType? vehType, ALK.PCM.Model.RoutingType? routing, bool hwyOnly, bool useAvoidFavors, ClassOverrideType? classOvrdtype, DistanceUnits? distUnits, bool tollAvoid, bool? borders, bool ovrdRestrict, HazMatType? hazMat, TunnelCategory? tunnelCategory, RouteOptimizeType? routeOpt, bool hubRouting, TruckStyle? vehProfile, VehicleDimUnits? trkUnits, string trkHeight, string trkLength, string trkWidth, string trkWeight, int? trkAxles, TruckStyle? truckConfig, bool trkLCV, string estimatedTimeOpts, bool useTraffic, int[] afSetIDs, string[] afSetNames, bool stopsAsViaPoints, bool reduceResponsePoints, uint? elevLimit, bool ferryDiscourage, bool hosEnabled, double? hosRemDriveTimeUntilBreak, double? hosRemDriveTime, double? hosRemOnDutyTime, HoSScheduleType hosRuleType, double? hosRemCycleDutyTime, SideOfStreetAdherenceLevel? sideOfStreetAdherence, int? governorSpeedLimit, bool useSites, bool includePLIDs, bool? maintainHeading, DataRegion? region, ALK.PCM.Model.DataVersion dataset, bool? includeVehicleRestrictedCleanupPoints, bool includePLIDRoutePathMapping, string[] avoidState, string[] avoidCountry, string[] favorState, string[] favorCountry, bool? includeTrimblePlaceIDs, TollRoadsType? tollroads, DiagnosticsType?[] debug, string assetID, HazMatType[] hazMatTypes, TunnelCategory[] tunnelCategories)
 The /route/routePath GET request retrieves a list of geographic coordinate points that make up the requested route. More...
 
RouteResponse PostRoutePath (RoutePointsRequestBodyRest request, ALK.PCM.Model.DataVersion dataset)
 The /route/routePath POST request retrieves a list of geographic coordinate points that make up the requested route. More...
 
TrafficRouteResponse PostTrafficRoutePath (TrafficRoutePointsRequestBodyRest request, ALK.PCM.Model.DataVersion dataset)
 
DetailedRoutePLIDResponse GetRoutePathPLIDs (List< double[]> stops, DataRegion? region)
 
List< ReportGetRouteReports (string routeId, List< double[]> stops, List< StopCosts > stopCosts, ALK.PCM.Model.VehicleType? vehType, ALK.PCM.Model.RoutingType? routing, bool hwyOnly, bool custRoadSpds, bool useAvoidFavors, ClassOverrideType? classOvrdtype, DistanceUnits? distUnits, VolumeUnits? fuelUnits, bool tollAvoid, bool? ferryDist, bool? borders, bool ovrdRestrict, HazMatType? hazMat, TunnelCategory? tunnelCategory, RouteOptimizeType? routeOpt, LanguageType? lang, bool hubRouting, TruckStyle? vehProfile, VehicleDimUnits? trkUnits, string trkHeight, string trkLength, string trkWidth, string trkWeight, int? trkAxles, TruckStyle? truckConfig, bool trkLCV, ReportTypeFlag? reports, bool condenseDirections, ReportFormat? reportFmt, bool? inclTollData, double? fuelEconLoad, double? fuelEconEmpty, double? costPerFuelUnit, double? costGHG, double? costMaintLoad, double? costMaintEmpty, double? costTimeLoad, double? costTimeEmpty, Currency? tollCurrency, double exchangeRate, string tollPlan, double? citeInt, string estimatedTimeOpts, float? breakInterval, float? breakLength, float? borderWait, float? remHrsOfSvc, bool useTraffic, int[] afSetIDs, string[] afSetNames, bool tHoursWithSeconds, WeatherAlertUrgency? urgency, WeatherAlertSeverity? severity, WeatherAlertCertainty? certainty, string[] eventNames, uint? elevLimit, bool ferryDiscourage, bool hosEnabled, double? hosRemDriveTimeUntilBreak, double? hosRemDriveTime, double? hosRemOnDutyTime, HoSScheduleType hosRuleType, double? hosRemCycleDutyTime, SideOfStreetAdherenceLevel? sideOfStreetAdherence, int? governorSpeedLimit, bool useSites, bool? maintainHeading, TrailerType? trlType, int? trlCount, string trlMaxHt, int? trlMaxWt, int? trlMaxAxles, bool? isHybrid, EngineEmissionType? emiType, bool? minPoll, bool refrigerated, FuelType? fuelType, double fuelConsumption, bool? includeTrimblePlaceIDs, DataRegion? region, ALK.PCM.Model.DataVersion? dataVersion, string[] avoidState, string[] avoidCountry, string[] favorState, string[] favorCountry, TollRoadsType? tollroads, DiagnosticsType?[] debug, string assetID, HazMatType[] hazMatTypes, TunnelCategory[] tunnelCategories)
 The /route/routeReports GET request retrieves a set of requested reports for the requested route. More...
 
List< ReportPostRouteReports (ReportRequestBody request, ALK.PCM.Model.DataVersion? dataVersion)
 The /route/routeReports POST request retrieves a list of requested reports for the given route. More...
 
RouteMatrixResponseBody GetRteMatrix (List< double[]> originStops, List< double[]> destStops, VehicleType? vehType, RoutingType? routing, bool? hwyOnly, bool useAvoidFavors, ClassOverrideType? classOvrdtype, DistanceUnits? distUnits, bool tollAvoid, bool? borders, bool ovrdRestrict, HazMatType? hazMat, TunnelCategory? tunnelCategory, TruckStyle? vehProfile, VehicleDimUnits? trkUnits, string trkHeight, string trkLength, string trkWidth, string trkWeight, int? trkAxles, bool trkLCV, int[] afSetIDs, string[] afSetNames, uint? elevLimit, bool ferryDiscourage, SideOfStreetAdherenceLevel? sideOfStreetAdherence, int? governorSpeedLimit, DataRegion? region, ALK.PCM.Model.RegionalDataSet dataset, string[] avoidState, string[] avoidCountry, string[] favorState, string[] favorCountry, TollRoadsType? tollroads, HazMatType[] hazMatTypes, TunnelCategory[] tunnelCategories)
 The /route/matrix GET request generates and returns a matrix of time and distance from a list of origins and destinations. More...
 
RouteMatrixResponseBody PostRouteMatrix (RouteMatrixRequestBody request, ALK.PCM.Model.RegionalDataSet dataset)
 The /route/matrix POST request generates and returns a matrix of time and distance from a list of origins and destinations. More...
 
RouteResponse GetDerivedRoutePath (List< double[]> routePings, double offRouteMiles, bool? hwyOnly, ALK.PCM.Model.VehicleType? vehType, ALK.PCM.Model.RoutingType? routing, ClassOverrideType? classOvrdtype, DistanceUnits? distUnits, bool tollAvoid, bool? borders, bool ovrdRestrict, HazMatType? hazMat, TunnelCategory? tunnelCategory, TruckStyle? vehProfile, VehicleDimUnits? trkUnits, string trkHeight, string trkLength, string trkWidth, string trkWeight, int? trkAxles, bool trkLCV, string estimatedTimeOpts, bool useTraffic, uint? elevLimit, bool ferryDiscourage, SideOfStreetAdherenceLevel? sideOfStreetAdherence, int? governorSpeedLimit, DataRegion? region, RegionalDataSet dataset, string[] avoidState, string[] avoidCountry, string[] favorState, string[] favorCountry, TollRoadsType? tollroads, DiagnosticsType?[] debug, HazMatType[] hazMatTypes, TunnelCategory[] tunnelCategories)
 The derivedRoute/routePath GET request retrieves a list of reduce trip coordinates in GeoJson format based on a series of longitudes/latitude pings and off route mileages window. More...
 
RouteResponse PostDerivedRoutePath (ReduceTripRequestBody request, RegionalDataSet dataset)
 The /derivedRoute/routePath POST request retrieves a list of reduced trip coordinates in GeoJson format based on a series of longitudes/latitude pings and off route mileages window. More...
 
ReportResponseBody PostDerivedRouteReports (ReduceTripRequestBody request, RegionalDataSet dataset)
 The /derivedRoute/routeReports POST request retrieves a report (typically Mileage or Detailed) for the reduced trip based upon a series of latitude/longitudes pings. More...
 
Stream GetRouteSyncMessage (string routeId, OutOfRouteCompliance compliance, double? distance, bool? isFirstLegManaged, List< double[]> stops, ALK.PCM.Model.VehicleType? vehType, ALK.PCM.Model.RoutingType? routing, bool hwyOnly, bool useAvoidFavors, ClassOverrideType? classOvrdtype, DistanceUnits? distUnits, bool tollAvoid, bool? borders, bool ovrdRestrict, HazMatType? hazMat, TunnelCategory? tunnelCategory, RouteOptimizeType? routeOpt, bool hubRouting, TruckStyle? vehProfile, VehicleDimUnits? trkUnits, string trkHeight, string trkLength, string trkWidth, string trkWeight, int? trkAxles, bool trkLCV, string estimatedTimeOpts, bool useTraffic, int[] afSetIDs, string[] afSetNames, bool createRouteSyncFromPoints, uint? elevLimit, RouteSyncMessageVersion messageVersion, bool ferryDiscourage, bool hosEnabled, double? hosRemDriveTimeUntilBreak, double? hosRemDriveTime, double? hosRemOnDutyTime, HoSScheduleType hosRuleType, double? hosRemCycleDutyTime, SideOfStreetAdherenceLevel? sideOfStreetAdherence, int? governorSpeedLimit, bool useSites, bool? maintainHeading, DataRegion? region, ALK.PCM.Model.DataVersion? dataVersion, string[] avoidState, string[] avoidCountry, string[] favorState, string[] favorCountry, TollRoadsType? tollroads, bool? removeWayPoints, HazMatType[] hazMatTypes, TunnelCategory[] tunnelCategories)
 The /RouteSync GET request retrieves a route sync message in the form of a byte array. More...
 
Stream PostRouteSyncMessage (CreateRouteSyncMsgRequestBody request, ALK.PCM.Model.DataVersion? dataVersion)
 The /RouteSync POST request takes a route and creates a binary route sync message blob containing the info to send to the CoPilot device. More...
 
List< WeatherAlertEventWeatherAlerts (double[] corner1, double[] corner2, double[] point, List< double[]> route, WeatherAlertUrgency? urgency, WeatherAlertSeverity? severity, WeatherAlertCertainty? certainty, string[] eventNames, string startTime, string endTime)
 The /WeatherAlerts GET request retrieves weather alerts for a give map view port. More...
 
List< List< WeatherAlertEvent > > GetWeatherAlertsPoints (List< double[]> points, WeatherAlertUrgency? urgency, WeatherAlertSeverity? severity, WeatherAlertCertainty? certainty, string[] eventNames, string startTime, string endTime)
 The /WeatherAlerts/Batch GET request retrieves weather alerts for a set of points. More...
 
TimeWindowOptimizedSequence OptimizeTimeWindowSequence (DataRegion? region, RegionalDataSet? dataset, TimeWindowSequence request)
 The /route/optimize POST request performs a "Time Window Routing Optimization" on a stop sequence. More...
 
Task< List< TrafficCameraBase > > GetTrafficCamerasBoxAsync (string bbox)
 The /trafficCams/box GET request retrieves known traffic cameras for a given viewport. More...
 
Task< TrafficCameraGetTrafficCameraMetaAsync (string id)
 The /trafficCam/metadata GET request retrieves detailed information for a given camera by its id. More...
 
Task< Stream > GetTrafficCameraImgAsync (string id, TrafficCameraImgResolution resolution)
 The /trafficCam/img GET request retrieves a current image from a given camera identified by its id and image resolution. More...
 
Task< int[]> RoadSurfaceRouteAsync (List< double[]> routePath, int routeDuration, RoadSurfaceProvider provider)
 The /roadSurface/route POST request retrieves a list of road surface conditions at each point of a route path. More...
 
List< GeofenceSetGetGeofenceSets (string setID, string setName, string setTag, bool? includeFences)
 The /GeofenceSets GET operation retrieves geofence sets. More...
 
List< GeofenceGetGeofences (string fenceId, string fenceName)
 The /Geofence GET operation retrieves geofences. More...
 
GeofenceRouteIntersectResponseBody GetGeofencesRouteIntersection (GeofenceRouteIntersectRequestBody request)
 The /Geofence/Intersection/Route POST request retrieves the geofences with which the supplied route intersects. More...
 
GeofencePointIntersectResponseBody[] GetGeofencesPointsIntersection (GeofencePointIntersectRequestBody[] requests)
 The /Geofence/Intersection/Points POST request retrieves the geofences with which the supplied points intersect. More...
 
int GeofenceSetAdd (string setName, string setTag, GeofenceState? activeState, bool? visible, int? borderColor, byte? borderAlpha, byte? borderWidth, int? fillColor, byte? fillAlpha, string startTime, string endTime)
 The /GeofenceSets POST request creates a new geofence set. More...
 
int GeofenceSetUpdate (string setID, string name, string tag, GeofenceState? activeState, bool? visible, int? borderColor, byte? borderAlpha, byte? borderWidth, int? fillColor, byte? fillAlpha, string startTime, string endTime)
 The /GeofenceSets PUT request updates an existing geofence set. More...
 
int GeofenceSetDelete (string setID)
 The /GeofenceSets/{setID} DELETE request removes an existing geofence set. More...
 
int GeofenceAdd (AddGeofence fenceToAdd)
 The /Geofence POST request adds the geofence to a particular set. More...
 
int GeofenceUpdate (Geofence fenceToUpdate)
 The /Geofence PUT request adds the geofences to a particular set. More...
 
int GeofenceDelete (string fenceID)
 The /Geofence{fenceID} DELETE request removes an existing geofence. More...
 
int AddAvoidFavorSet (string setName, string setTag, RegionalDataSet dataset)
 The /AvoidFavorSets/ POST operation creates a new avoid/favor set. More...
 
List< AFSetGetAFSets (string setID, string name, string tag, bool? detailForAll, double[] corner1, double[] corner2, RegionalDataSet dataset, bool inexactNameMatch=false)
 The /AvoidFavorSets/ GET operation retrieves avoid/favor sets. More...
 
int UpdateAvoidFavorSet (string setID, string name, string tag, string destinationSetId, RegionalDataSet dataset)
 The /AvoidFavorSets/ PUT operation retrieves avoid/favor sets. More...
 
int DeleteAvoidFavorSet (string setID, RegionalDataSet dataset)
 The /AvoidFavorSets DELETE removes an existing Avoid/Favor set. More...
 
List< AFLinkAddAvoidFavor (string setID, AvoidFavorMapLink avoidFavorMapLink, RegionalDataSet dataset)
 The /AvoidFavorSets/AvoidFavor POST operation adds an Avoid/Favor to the specified Avoid/Favor Set. More...
 
List< int > AddAvoidFavorGridLinks (string setID, List< AFGridLink > afGridLinks, int? afGroupID, RegionalDataSet dataset)
 The /AvoidFavorSets/AvoidFavorGridLink POST operation adds Avoid/Favors to the specified Avoid/Favor Set. More...
 
List< AFLinkAddAvoidFavorGroupLinks (string setID, List< AFGroup > afGroups, ALK.PCM.Model.DataVersion dataVersion)
 Add avoid favor link data for all the given groups to the given set More...
 
int DeleteAvoidFavor (string setID, string afID, RegionalDataSet dataset)
 The /AvoidFavorSets/{setID}/AvoidFavor/{afID} DELETE removes an existing Avoid/Favor set from the specified Avoid/Favor Set. More...
 
ImportAFSetResponseBody ImportFlattenedAFSet (ImportAFSetRequestBody importRequest, RegionalDataSet dataset)
 The /AvoidFavorSets/import POST request imports a PC*Miler interactive af_flattened.dat file and returns the Avoid/Favor set. More...
 
int DeleteAvoidFavors (string setID, int[] afIDs, RegionalDataSet dataset)
 The /AvoidFavorSets/{setID}/AvoidFavors DELETE removes Avoid/Favors from a specified Avoid/Favor set. More...
 
int CreateAFGroup (string setID, AFGroupBase group, RegionalDataSet dataset)
 The /AvoidFavorSets/{setID}/Groups POST request creates an AFGroup within the specified Avoid/Favor Set. More...
 
List< AFGroupGetAFGroups (string setID, bool? detailForAll, double[] corner1, double[] corner2, string filter, RegionalDataSet dataset)
 The /AvoidFavorSets/{setID}/Groups GET request retrieves avoid/favor sets. More...
 
int UpdateAvoidFavorGroup (string setID, string groupID, string destinationSetId, AFGroupBase groupToUpdate, RegionalDataSet dataset)
 The /AvoidFavorSets/AvoidFavor PUT request updates a specified AFGroup within the specified Avoid/Favor Set. More...
 
int DeleteAvoidFavorGroup (string setID, string groupID, RegionalDataSet dataset)
 The /AvoidFavorSets/{setID}/Group/{groupID} DELETE request removes an existing Avoid/Favor set from the specified Avoid/Favor Set. More...
 
int DeleteAvoidFavorGroups (string setID, int[] groupIDs, RegionalDataSet dataset)
 The /AvoidFavorSets/{setID}/AvoidFavors DELETE request removes Avoid/Favors from a specified Avoid/Favor set. More...
 
List< PlaceSetGetPlaceSets (string setID, string tag, bool includePlaces, string placeName, int? catId, string catName, double[] corner1, double[] corner2)
 The /CustomPlaceSets/{setID} GET operation retrieves custom place sets. More...
 
int AddCustomPlaceSet (string setName, string setTag)
 The /CustomPlaceSets POST operation creates a new custom place set. More...
 
int UpdateCustomPlaceSet (string setID, string newName, string newTag)
 The /CustomPlaceSets/{setID} PUT modifies an existing custom place set. More...
 
int DeleteCustomPlaceSet (string setID)
 The /CustomPlaceSets DELETE removes an existing custom place set. More...
 
int AddCustomPlace (string setID, AddPlace placeToAdd)
 The /CustomPlaceSets/CustomPlace POST operation creates a new custom place within the specified Custom Place Set. More...
 
int UpdateCustomPlace (string setID, Place placeToUpdate)
 The /CustomPlaceSets/CustomPlace PUT operation updates an existing custom place within the specified Custom Place Set. More...
 
int DeleteCustomPlace (string setID, string placeID)
 The /CustomPlaceSets/{setID}/CustomPlace/{placeID} DELETE removes an existing custom place set from the specified Custom Place Set. More...
 
List< PlaceCategoryGetCustomCategories (string catID, string tag, string catName)
 The /CustomCategories/{catID} GET operation retrieves custom categories. More...
 
int AddCustomCategory (PlaceCategory category)
 The /CustomCategories POST operation creates a new custom category. More...
 
int UpdateCustomCategory (PlaceCategory category)
 The /CustomCategories PUT operation modifies an existing custom category. More...
 
Stream DrawMap (double[] corner1, double[] corner2, int width, int height, DrawerGroups drawerGroups, string format, MapStyle? style, string projection, DataRegion? region, RegionalDataSet dataset, bool? init, List< double[]> pinCoords, PinColor? pinColor, MapImageOption imgOption, string language, BackgroundImageProvider? imgSrc)
 The /map GET request retrieves a map tile. More...
 
Stream DrawMapRoutes (MapRoutesRequestBody request, RegionalDataSet dataset)
 The /mapRoutes POST request takes a list of geographic coordinate points that make up the requested route and draws the route on a map image. More...
 
Task< Stream > DrawMapTileAsync (int x, int y, int z, string format, DrawerGroups drawerGroups, MapStyle? style, string projection, DataRegion region, RegionalDataSet? dataset, bool? init, MapImageOption imgOption, string language, BackgroundImageProvider? imgSrc, TileImageRatio? ratio, TileSize? width, VectorMapStyle? vectorMapStyle)
 The /maptile GET request retrieves a map tile image. More...
 
Task< Stream > DrawMapTileRTSAsync (int x, int y, int z, DrawerGroups drawerGroups, MapStyle? style, string projection, DataRegion region, RegionalDataSet? dataset, bool? init, MapImageOption imgOption, string language, BackgroundImageProvider? imgSrc, TileImageRatio? ratio, TileSize? width, VectorMapStyle? vectorMapStyle, string format)
 The /maptile/rts GET request retrieves a map tile image using the Raster Tile Server. More...
 
Task< Stream > DrawOverlayTileAsync (int x, int y, int z, string format, MapTileOverlay? type, DataRegion region, RegionalDataSet? dataset)
 The /overlay request retrieves an overlay tile image, which is to be overlayed on a map image. More...
 
Task< Stream > DrawTrafficAsync (double[] corner1, double[] corner2, int width, int height, byte? frcs, DataRegion? region, DayOfWeek? histDay, ushort? histTimeBin, string histTimeZone, int? strokeWidth)
 The /traffic GET request retrieves a traffic tile. More...
 
Task< Stream > DrawTrafficTileAsync (int x, int y, int z, byte? frcs, DataRegion? region, DayOfWeek? histDay, ushort? histTimeBin, string histTimeZone, int? strokeWidth)
 The /trafficTile GET request retrieves a traffic tile. More...
 
Task< Stream > DrawRoadSurfaceTileAsync (uint x, uint y, uint z, uint hourOffset, RoadSurfaceProvider provider)
 The /roadSurface/tile GET request retrieves the road surface condition image. More...
 
Task< Stream > DrawWeatherAsync (double[] corner1, double[] corner2, int width, int height, string projection, WeatherType? display)
 The /weather GET request retrieves a weather radar or satellite image. More...
 
ALK.Common.Model.GeoJsonGeometry GetDriveTimePolygon (double[] centerLngLat, int minutes, bool? hwyOnly, ALK.PCM.Model.VehicleType? vehType, ALK.PCM.Model.RoutingType? routing, ClassOverrideType? classOvrdtype, DistanceUnits? distUnits, bool tollAvoid, bool? borders, bool ovrdRestrict, HazMatType? hazMat, TunnelCategory? tunnelCategory, TruckStyle? vehProfile, VehicleDimUnits? trkUnits, string trkHeight, string trkLength, string trkWidth, string trkWeight, int? trkAxles, bool trkLCV, uint? elevLimit, DataRegion? region, RegionalDataSet dataset)
 The /route/DriveTimePolygon GET request retrieves a polygon of including the locations that may be reached within the specified driving time. More...
 
Task< List< BorderPolygon > > CountyPolygonsAsync (string[] codes)
 The /polygons/county request retrieves polygons that outline specified counties. More...
 
Task< List< StatePolygon > > StatePolygonsAsync (string[] states)
 The /polygons/state request retrieves polygons that outline specified states. More...
 
Task< List< BorderPolygon > > ZipPolygonsAsync (string[] codes)
 The /polygons/zip request retrieves polygons that outline specified zip codes. More...
 
List< GeocodeOutputLocationLocations (string streetaddr, string city, string state, string zip, string country, PostCodeType? postcodeFilter, GeocodeCitySearchFilter citySearchFilter, string splc, int list, double[] lnglat, string searchString, bool? matchNamedRoadsOnly, double? maxCleanupMiles, CountryAbbreviationType? countryAbbrevType, DataRegion? region, ALK.PCM.Model.DataVersion? dataset, int timeOut, LanguageType? lang, bool? splitHouseNumber, bool? includeTrimblePlaceIDs)
 The /locations GET request performs a geocode or reverse geocode by searching for locations with the supplied parameters. If coords are supplied, then a reverse geocode is performed. More...
 
List< GeocodeOutputLocationGeoBatch (GeocodeRequestBody request, ALK.PCM.Model.DataVersion? dataset)
 The /locations/address/batch POST request performs geocoding search on a batch of addresses. More...
 
GeocodeOutputLocation ReverseGeo (double[] lnglat, bool? matchNamedRoadsOnly, double? maxCleanupMiles, bool includePostedSpeedLimit, SpeedLimitType? speedLimitPref, double? heading, int? currSpeed, Model.VehicleType vehicle, bool urban, bool includeLinkInfo, string timestamp, CountryAbbreviationType? countryAbbrevType, DataRegion? region, ALK.PCM.Model.DataVersion? dataset, int timeOut, LanguageType? lang, VehicleDimUnits? units, bool? splitHouseNumber, bool? includeTrimblePlaceIDs, string assetID)
 The /locations/reverse GET request performs a "reverse geocode" by searching for locations by a single coordinate pair. More...
 
List< GeocodeOutputLocationReverseGeoBatch (ReverseGeocodeRequestBody request, ALK.PCM.Model.DataVersion? dataset)
 The /locations/reverse/batch POST request performs a reverse geocoding search on a batch of coordinates. More...
 
List< StateCountryStates (DataRegion? region, CountryCodeFormat? abbrFormat, bool? countryOnly)
 The /states GET request retrieves the states or countries for a region. More...
 
POIInfo GetPOIByID (uint setId, uint poiId, uint? persistentId, RegionalDataSet dataset)
 The /poiSets GET request retrieves a Point of Interest (POI) in the given set with the given ID, or alternatively with the persistent ID. More...
 
List< RadiusSearchMatchPOIRadiusSearch (double[] centerLnglat, DataRegion? region, double radius, DistanceUnits? radiusUnits, POIType? poiCategories, String nameFilter, bool? getPoiIDs, int? maxResults, RegionalDataSet dataset)
 The /poi GET request retrieves a list of Points of Interest (POIs) within a certain radius distance from center of point identified by lon,lat coordinates. More...
 
PoisAlongRouteResponseBody FindPoisAlongRoute (PoisAlongRouteRequestBody request, RegionalDataSet? dataset)
 The /poi/alongRoute POST requests retrieves the Points of Interest (POIs) along a given route. More...
 

Detailed Description

This interface defines all other services available from PC*Miler Web Services.

Member Function Documentation

◆ About()

Response About(Request request)

The /About POST request returns a short blurb about the API version.

REST METHOD: POST
REST URI:

/about
Returns

A JSON formatted response containing the API version.

Example:

      {
         "Header": {
            "Type": null,
            "Success": true,
            "DataVersion": "27.0.22.626",
            "Errors": null
         }
      }
  

◆ GetTrafficIncidentsBoxAsync()

Task<List<TrafficIncident> > GetTrafficIncidentsBoxAsync(string bbox,
string language 
)

The /trafficIncidents/box GET request retrieves traffic incidents within a given geographic bounding box.

REST METHOD: GET
REST URI:

/trafficIncidents/box?bbox={bbox}&language={language}


Parameters are of the form &qname={pname}, where qname is the URI query parameter name, and pname is the corresponding parameter name. The parameters are listed below by their pname.

Parameters
bboxThe bounding box, which is specified in degrees in the Web Mercator, ESPG:3857, projection.

Its format is four floating point numbers or integers separated by commas in the following juxtaposition:

minLon,minLat,maxLon,maxLat.

Example:

&bbox=-45.0,38.5,44.3,-42.14332
languageThe language in which the response shall be written.

Possible values are:

  1. ENUS - English - United States
  2. ENGB - English - Great Britain
  3. ES - Spanish
  4. DE - German
  5. FR - French
  6. IT - Italian



Example:

&language=DE

See also
    ALK.PCM.Model.LanguageType

Precondition
Must be licensed for traffic data.
Returns
A JSON formatted array of traffic incident data.

Example of a JSON formatted array of ALK.PCM.Model.TrafficIncident.

 [
   {
    "DescriptionLong":"Restrictions due to major construction on I-95 Southbound",
    "DescriptionShort": "Lane Closure",
    "EventCategory":"Roadworks",
    "EventType":"major roadworks",
    "Locations": [
          [-76.0,43.3],
          [-76.3,43.33]
    ]
   }
]

◆ GetRoutePath()

RouteResponse GetRoutePath(List< double[]> stops,
ALK.PCM.Model.VehicleTypevehType,
ALK.PCM.Model.RoutingType? routing,
bool hwyOnly,
bool useAvoidFavors,
ClassOverrideType? classOvrdtype,
DistanceUnitsdistUnits,
bool tollAvoid,
bool? borders,
bool ovrdRestrict,
HazMatTypehazMat,
TunnelCategorytunnelCategory,
RouteOptimizeTyperouteOpt,
bool hubRouting,
TruckStylevehProfile,
VehicleDimUnitstrkUnits,
string trkHeight,
string trkLength,
string trkWidth,
string trkWeight,
int? trkAxles,
TruckStyletruckConfig,
bool trkLCV,
string estimatedTimeOpts,
bool useTraffic,
int[] afSetIDs,
string[] afSetNames,
bool stopsAsViaPoints,
bool reduceResponsePoints,
uint? elevLimit,
bool ferryDiscourage,
bool hosEnabled,
double? hosRemDriveTimeUntilBreak,
double? hosRemDriveTime,
double? hosRemOnDutyTime,
HoSScheduleType hosRuleType,
double? hosRemCycleDutyTime,
SideOfStreetAdherenceLevelsideOfStreetAdherence,
int? governorSpeedLimit,
bool useSites,
bool includePLIDs,
bool? maintainHeading,
DataRegionregion,
ALK.PCM.Model.DataVersion dataset,
bool? includeVehicleRestrictedCleanupPoints,
bool includePLIDRoutePathMapping,
string[] avoidState,
string[] avoidCountry,
string[] favorState,
string[] favorCountry,
bool? includeTrimblePlaceIDs,
TollRoadsType? tollroads,
DiagnosticsType?[] debug,
string assetID,
HazMatType[] hazMatTypes,
TunnelCategory[] tunnelCategories 
)

The /route/routePath GET request retrieves a list of geographic coordinate points that make up the requested route.

REST METHOD: GET
REST URI:

/route/routePath?stops={stops}&vehType={vehType}&routeType={routing}
                        &hwyOnly={hwyOnly}&avoidFavors={useAvoidFavors}&overrideClass={classOvrdtype}
                        &distUnits={distUnits}&avoidTolls={tollAvoid}&openBorders={borders}
                        &overrideRestrict={ovrdRestrict}&hazMat={hazMat}&tunnelCategory={tunnelCategory}&routeOpt={routeOpt}
                        &hubRouting={hubRouting}&vehProfile={vehProfile}&vehDimUnits={trkUnits}&vehHeight={trkHeight}
                        &vehLength={trkLength}&vehWidth={trkWidth}&vehWeight={trkWeight}
                        &axles={trkAxles}&truckConfig={truckConfig}&LCV={trkLCV}
                        &estimatedTimeOpts={estimatedTimeOpts}&useTraffic={useTraffic}
                        &stopsAsViaPoints={stopsAsViaPoints}&reduceResponsePoints={reduceResponsePoints}
                        &elevLimit={elevLimit}&afSetIDs={afSetIDs}&afSetNames={afSetNames}
                        &ferryDiscourage={ferryDiscourage}&hosEnabled={hosEnabled}
                        &hosRemDriveTimeUntilBreak={hosRemDriveTimeUntilBreak}
                        &hosRemDriveTime={hosRemDriveTime}&hosRemOnDutyTime={hosRemOnDutyTime}
                        &hosRuleType={hosRuleType}&hosRemCycleDutyTime={hosRemCycleDutyTime}
                        &sideOfStreetAdherence={sideOfStreetAdherence}
                        &governorSpeedLimit={governorSpeedLimit}&useSites={useSites}
                        &includeTrimblePlaceIDs={includeTrimblePlaceIDs}&region={region}&dataset={dataset}


Parameters are of the form &qname={pname}, where qname is the URI query parameter name, and pname is the corresponding parameter name. The parameters are listed below by their pname.

Parameters
stopsThe coordinates that make up the stops of the route. Each stop is specified as a comma separated pairs of floating point numbers, representing longitude and latitude respectively in the Web Mercator ESPG:3857 projection. The list of stops is represented by a semi-colon separated sequence of stops.

There must be at least two coordinate pairs.

Example:

&stops=-76.12345,42.12345;-76.12312,42.12312;-76.12456,42.12456
vehTypeThe vehicle type. Possible values are:

  1. Truck
  2. LightTruck
  3. Auto

Default is Truck.

Example:

&vehType=LightTruck

See also
    ALK.PCM.Model.VehicleType

routingThe desired routing algorithm. Possible values are:

  1. Practical
  2. Shortest

Default is Practical.

Example:

&routing=Shortest
hwyOnlyIndicates whether to use highways only. Possible values are boolean:

  • true
  • false

Default is false.

Example:

&hwyOnly=true
useAvoidFavorsIndicates whether or not to use avoids and favors while routing. Possible values are boolean:

  • true
  • false

Default is false.

Example:

&avoidFavors=true
classOvrdtypeA comma-separated list of class overrides. Possible values are:

  1. None
  2. NationalNetwork
  3. FiftyThreeFoot

Default is none, i.e. empty list.

Example:

 &overrideClass=NationalNetwork,FiftyThreeFoot

See also
    ALK.Common.Model.ClassOverrideType

distUnitsDistance units that pertain to measurement arguments of this request. Possible values are:

  1. Miles
  2. Kilometers

Default is Miles.

Example:

&distUnits=Kilometers
tollAvoidIndicates whether or not to avoid tolls while routing. Possible values are boolean:

  • true
  • false

Default is false.

Example:

&avoidTolls=true
bordersIndicates whether borders are open for travel. Possible values are boolean:

  • true
  • false

Default is true.

Example:

&openBorders=false
ovrdRestrictIndicates whether or not to override truck restrictions. Possible values are boolean:

  • true
  • false

Default is false.

Example:

&overrideRestrict=true
hazMatIndicates the hazardous material type. Possible values are:

  1. None
  2. General
  3. Caustic
  4. Explosives
  5. Flammable
  6. Inhalants
  7. Radioactive

Default is None.

Example:

&hazMat=Radioactive

See also
    ALK.PCM.Model.HazMatType

tunnelCategory
routeOptIndicates the method by which to optimize route stops. Possible values are:

  1. None
    Indicates to not use any stop optimization.
  2. ThruAll
    Indicates that all of the input stops should be resequenced for the most optimal sequence.
  3. DestinationFixed
    Indicates that the destination remain fixed, but all other input stops should be resequenced for the most optimal sequence.

Default is None.

Example:

&routeOpt=ThruAll

See also
    ALK.PCM.Model.RouteOptimizeType

hubRoutingIndicates whether or not to enable hub routing. Possible values are boolean:

  • true
  • false

Default is false.

Example:

&hubRouting=true
vehProfileIndicates the vehicle profile which is a preset collection of dimensions and routing options. Possible values are:

  1. None
  2. TwentyEightDoubleTrailer
  3. FortyStraightTruck
  4. FortyEightSemiTrailer
  5. FiftyThreeSemiTrailer
  6. FullSizeVan
  7. TwentySixStraightTruck
  8. ConventionalSchoolBus
  9. SmallSchoolBus

Default is None which is equivalent to the 48 foot semi trailer profile. For Auto or light duty, use FullSizeVan.

Example:

&vehProfile=FullSizeVan

See also
    ALK.PCM.Model.TruckStyle

trkUnitsVehicle dimension units. Possible values are:

  1. English
  2. Metric

Default is English.

Example:

&vehDimUnits=Metric

See also
    ALK.Common.Model.VehicleDimUnits

trkHeightThe height of the truck in feet and inches (English) or meters (Metric) depending on the vehDimUnits query parameter. Feet and inches may be formatted with apostrophe and double quotes, i.e. feet'inches".

Maximum value is 13'6" or 4.1148 meters.

Default is 13'6" in all regions except Europe, which is 12'6".

Examples:

&vehHeight=13'6"  // feet and inches for English
&vehHeight=13.5   // feet for English
&vehHeight=4.11   // meters for Metric
trkLengthThe length of the truck in feet and inches (English) or meters (Metric) depending on the vehDimUnits query parameter. Feet and inches may be formatted with apostrophe and double quotes, i.e. feet'inches".

Maximum value is 53 feet or 16.1544 meters.

Default is 48 feet in all regions except Europe, which is 54"1'.

Examples:

&vehLength=13'6"  // feet and inches for English
&vehLength=13.5   // feet for English
&vehLength=4.11   // meters for Metric
trkWidthThe width of the truck in feet and inches (English) or meters (Metric) depending on the vehDimUnits query parameter. Feet and inches may be formatted with apostrophe and double quotes, i.e. feet'inches".

This value may be 96" and below, 102" and above or 98".

Default is 96" for all regions.

Examples:

&vehWidth=10'6"  // feet and inches for English
&vehWidth=10.5   // feet for English
&vehWidth=3.2    // meters for Metric
trkWeightThe weight of the truck in pounds (English) or kilograms (Metric) depending on the vehDimUnits query parameter.

Acceptable values can be up to 132,000 pounds or 59,874 kilos.
The default value is 80,000 pounds for all regions.

Examples:

&vehWeight=5000  // pounds for English
&vehWeight=2268  // kilograms for Metric
trkAxlesIndicates the number of axles on the vehicle. Acceptable values are 2 through 14.

Default is 5.

Example:

&axles=4
truckConfigIndicates the truck style. Possible values are:

  1. None
  2. TwentyEightDoubleTrailer
  3. FortyStraightTruck
  4. FortyEightSemiTrailer
  5. FiftyThreeSemiTrailer
  6. FullSizeVan
  7. TwentySixStraightTruck
  8. ConventionalSchoolBus
  9. SmallSchoolBus

Default is None which is equivalent to the 48 foot semi trailer profile. For Auto or light duty, use FullSizeVan.

Example:

&truckConfig=FullSizeVan

See also
    ALK.PCM.Model.TruckStyle

trkLCVIndicates whether the truck is a multi-trailer or longer combination vehicle. Possible values are boolean:

  • true
    The truck is a multi-trailer.
  • false
    The truck is a longer combination vehicle.

Default is false.

Example:

&LCV=true
estimatedTimeOptsEstimated time options affects routing only when roads have time based restrictions.
Format is:

( Depart | Arrive ) ( '|' ( SpecificDateTime | ( DayOfWeek ( '|' TimeOfDay )? ) ) ( '|' TimeZone )? )?

Default is none.

Examples:

&estimatedTimeOpts=Depart|Monday|18:30               // Depart given day of week and time of day.
&estimatedTimeOpts=Arrive|Monday|18:30|EDT           // Arrive given day of week and time of day in specific time zone.
&estimatedTimeOpts=Arrive|2014-03-04T08:15:30|Local  // Arrive at specific date/time, or Arrive or Depart to arrive.
&estimatedTimeOpts=Arrive                            // Arrive with system time.
&estimatedTimeOpts=Depart                            // Depart with system time.
useTrafficIndicates whether or not use traffic data. Possible values are boolean:

  • true
  • false

Default is false.

Example:

&useTraffic=true
afSetIDsApply the avoid/favor sets to the route. The format is comma separated IDs. The IDs are integers.

Default is none, i.e. empty list.

Examples:

&afSetIDs=                  // Is this valid?
&afSetIDs=2234
&afSetIDs=2234,34223,34323
afSetNamesApply the avoid/favor sets to the route. The format is comma separated names.

Default is none, i.e. empty list.

Examples:

&afSetNames=                  // Is this valid?
&afSetNames=Highways
&afSetNames=Highways,TollRoads,Malls
stopsAsViaPointsForces all stops between the first and last as via points. Possible values are boolean:

  • true
  • false

Default is false.

Example:

&stopsAsViaPoints=true
reduceResponsePointsIndicates whether to reduce the number of response points. Possible values are boolean:

  • true
  • false

Default is false.

Example:

&reduceResponsePoints=true
elevLimitIndicates the elevation limit when generating a route. Elevation unit is specified in feet or meters depending on the value of the distUnits query parameter being Miles or Kilometers respectively.
This restriction is available for the following datasets:

  1. Current
  2. PCM_NA

This restriction will be ignored if routing is deemed impractical with the limit, or a stop is located at an elevation higher than the limit.

The default is to not employ this restriction.

Example:

&elevLimit=5000            // feet for Miles
&elevLimit=1524            // meters for Kilometers
ferryDiscourageIndicates whether or not to discourage the use of ferries when creating the route. Possible values are boolean:

  • true
  • false

Default is false.

Example:

&ferryDiscourage=true
hosEnabledEnables insertion of "Hours Of Service" stops into the route. Possible values are boolean:

  • true
  • false

Default is false.

Example:

&hosEnabled=true
hosRemDriveTimeUntilBreakThe available driving hours at origin before the driver needs to take a short rest break.

The default value is 8 hours.

Example:

&hosRemDriveTimeUntilBreak=4
hosRemDriveTimeThe available driving hours at origin until the end of work day.

The default value is 11 hours in US.

Example:

&hosRemDriveTime=4
hosRemOnDutyTimeThe available On-Duty hours available at origin until the end of work day.

The default value is 14 hours.

Example:

&hosRemOnDutyTime=4
hosRuleTypeThe "Hours of Service" rule to use. Possible values are:

  1. USFed607LH
    Use US Federal Long Haul 60/7 rule.
  2. USFed708LH
    Use US Federal Long Haul 70/8 rule.
  3. CanadaCycle1
    Use Canadian Cycle 1.
  4. CanadaCycle2
    Use Canadian Cycle 2.
  5. California808
    Use California 80/8 rule.
  6. Texas707
    Use Texas 70/7 rule.
  7. USShortHaul
    Use US Short Haul Exemption.
  8. Europe
    Use European 48 hour rule.
  9. Unknown/tt>
    Unknown or uninitialized schedule type

Specification is required when hosEnabled=true and hosRemCycleDutyTime is specified.

Example:

&hosRuleType=USFed708H

See also
    ALK.Common.Model.HoSScheduleType

hosRemCycleDutyTimeThe available Cycle time duty hours at origin until Cycle reset.

There is no default value for this.

Example:

&hosRemCycleDutyTime=4
sideOfStreetAdherenceIndicates the level of strictness in avoiding the destination being on the opposite side of the street.

  1. Off
  2. Minimal
  3. Moderate
  4. Average
  5. Strict
  6. Adhere
  7. StronglyAdhere

Default is Off.

Example:

&sideOfStreetAdherence=Average

See also
    ALK.PCM.Model.SideOfStreetAdherenceLevel

governorSpeedLimitMaximum average road speed to use in route calculations that overrides all other road speeds when they are above this value.

Default is disabled and valid value is between 1 and 100 MPH (miles per hour). The value is in miles per hour regardless of the value of the distUnits query parameter.

Example:

&governorSpeedLimit=65            // miles per hour
useSitesA boolean parameter indicating whether or not the route stops are on sites and to accordingly consider site gates. Possible values are boolean:

  • true
  • false

Default is false.

Example:

&useSites=true
includePLIDs
maintainHeadingIndicates whether or not to maintain heading at intermediate stops by avoid u-turns and instead leaving the stop in the same direction it entered it. Possible values are boolean:

  • true
  • false

Default is false except for school bus vehicle profiles where this option is true by default when unsupplied.

Example:

&maintainHeading=true
regionThe data region in which the route is located. Possible values for the routePath, routeReports, or locations/reverse/batch requests are:

  1. EU
  2. NA
  3. OC
  4. SA

Default is NA.

Example:

&region=EU

See also
    ALK.Common.Model.DataRegion

datasetThe data region in which the route is located. Possible values for the routePath request are:

  1. Current
  2. PCM_EU
  3. PCM_OC
  4. PCM_SA
  5. PCM_GT (GeoTrac)
  6. PCM_AF
  7. PCM_AS
  8. PCM_ME
  9. PCM_NA
  10. PCM_WW
  11. PCM_JP
  12. PCM_NASL
  13. PCM_MX

Default is Current. If an unlicensed dataset is specified, the request will result in a forbidden request, i.e. a 403 HTTP Response.

Example:

&dataset=PCM_ME

See also
    ALK.PCM.Model.RegionalDataSet

includeVehicleRestrictedCleanupPoints
includePLIDRoutePathMapping
avoidState
avoidCountry
favorState
favorCountry
includeTrimblePlaceIDs
tollroadswhat to do with tolls, use, avoid if possible, or avoid entirely
debug
assetID
hazMatTypes
tunnelCategories
Returns
A GeoJSON formatted response with extra attributes TMinutes and TDistance.
  {
    "type" : "Feature",
    "geometry" : {
       "type": "MultilineString",
       "coordinates": [
         [
           [-73.0,43.0],
           [-73.1,43.1],
         ],
         [
           [-73.11,43.11],
           [-73.21,43.33]
         ]
       ]
    },
    "TMinutes": 32,
    "TDistance": 432
    "vehiclerestrictedcleanupgeometry": {
      "type": "MultiLineString",
      "coordinates": [
          [
            [
              -76.12345,
              42.12345
            ],
            [
              -76.12312,
              42.12312
            ]
          ]
        ]
      },
    }
  

◆ PostRoutePath()

RouteResponse PostRoutePath(RoutePointsRequestBodyRest request,
ALK.PCM.Model.DataVersion dataset 
)

The /route/routePath POST request retrieves a list of geographic coordinate points that make up the requested route.

REST METHOD: POST
REST URI:

/route/routePath?dataset={dataset}


Parameters are of the form &qname={pname}, where qname is the URI query parameter name, and pname is the corresponding parameter name. The parameters are listed below by their pname.

Parameters
requestA JSON formatted request body of ALK.PCM.Model.ServiceModels.RoutePointsRequestBodyRest

Example:

{
	"Route": {
		"Stops": [
			{
			"Coords": {
				"Lat": "42.12345",
				"Lon": "-76.12345"
			},
			"Region": 4
			},
			{
			"Coords": {
				"Lat": "42.12312",
				"Lon": "-76.12312"
			},
			"Region": 4
			},
			{
			"Coords": {
				"Lat": "42.12456",
				"Lon": "-76.12456"
			},
			"Region": 4
			}
		],
		"Options": {
			"BordersOpen": true,
			"DistanceUnits": 0,
			"HazMatType": 0,
			"HighwayOnly": false,
			"TruckCfg": {
			"Weight": "9000",
			"Axles": 6,
			"Units": 0,
			"LCV": false,
			"Width": "8'0"
			},
			"RouteOptimization": 0,
			"RoutingType": 0,
			"VehicleType": 0,
			"ClassOverrides": 3,
			"OverrideRestrict": false,
			"UseSideofStreet": false
		},
		"IncludePLIDs": false
	}
}
datasetThe data region in which the route is located. Possible values for the routePath request are:

  1. Current
  2. PCM_EU
  3. PCM_OC
  4. PCM_SA
  5. PCM_GT (GeoTrac)
  6. PCM_AF
  7. PCM_AS
  8. PCM_ME
  9. PCM_NA
  10. PCM_WW
  11. PCM_JP
  12. PCM_NASL
  13. PCM_MX

Default is Current. If an unlicensed dataset is specified, the request will result in a forbidden request, i.e. a 403 HTTP Response.

Example:

&dataset=PCM_ME

See also
    ALK.PCM.Model.RegionalDataSet

Returns
Example of a result returned from ALK.PCM.IRestService.PostRoutePath.

This result is a GeoJSON formatted object of ALK.PCM.PortalService.Rest.RouteResponse.

{
    "type" : "Feature",
    "geometry" : {
    "type": "MultilineString",
    "coordinates": [
        [
        [-73.0,43.0],
        [-73.1,43.1],
        ],
        [
        [-73.11,43.11],
        [-73.21,43.33]
        ]
    ]
    },
    "TMinutes": 32,
    "TDistance": 432
}

◆ GetRouteReports()

List<Report> GetRouteReports(string routeId,
List< double[]> stops,
List< StopCostsstopCosts,
ALK.PCM.Model.VehicleTypevehType,
ALK.PCM.Model.RoutingType? routing,
bool hwyOnly,
bool custRoadSpds,
bool useAvoidFavors,
ClassOverrideType? classOvrdtype,
DistanceUnitsdistUnits,
VolumeUnitsfuelUnits,
bool tollAvoid,
bool? ferryDist,
bool? borders,
bool ovrdRestrict,
HazMatTypehazMat,
TunnelCategorytunnelCategory,
RouteOptimizeTyperouteOpt,
LanguageTypelang,
bool hubRouting,
TruckStylevehProfile,
VehicleDimUnitstrkUnits,
string trkHeight,
string trkLength,
string trkWidth,
string trkWeight,
int? trkAxles,
TruckStyletruckConfig,
bool trkLCV,
ReportTypeFlagreports,
bool condenseDirections,
ReportFormatreportFmt,
bool? inclTollData,
double? fuelEconLoad,
double? fuelEconEmpty,
double? costPerFuelUnit,
double? costGHG,
double? costMaintLoad,
double? costMaintEmpty,
double? costTimeLoad,
double? costTimeEmpty,
CurrencytollCurrency,
double exchangeRate,
string tollPlan,
double? citeInt,
string estimatedTimeOpts,
float? breakInterval,
float? breakLength,
float? borderWait,
float? remHrsOfSvc,
bool useTraffic,
int[] afSetIDs,
string[] afSetNames,
bool tHoursWithSeconds,
WeatherAlertUrgencyurgency,
WeatherAlertSeverityseverity,
WeatherAlertCertaintycertainty,
string[] eventNames,
uint? elevLimit,
bool ferryDiscourage,
bool hosEnabled,
double? hosRemDriveTimeUntilBreak,
double? hosRemDriveTime,
double? hosRemOnDutyTime,
HoSScheduleType hosRuleType,
double? hosRemCycleDutyTime,
SideOfStreetAdherenceLevelsideOfStreetAdherence,
int? governorSpeedLimit,
bool useSites,
bool? maintainHeading,
TrailerTypetrlType,
int? trlCount,
string trlMaxHt,
int? trlMaxWt,
int? trlMaxAxles,
bool? isHybrid,
EngineEmissionTypeemiType,
bool? minPoll,
bool refrigerated,
FuelType? fuelType,
double fuelConsumption,
bool? includeTrimblePlaceIDs,
DataRegionregion,
ALK.PCM.Model.DataVersiondataVersion,
string[] avoidState,
string[] avoidCountry,
string[] favorState,
string[] favorCountry,
TollRoadsType? tollroads,
DiagnosticsType?[] debug,
string assetID,
HazMatType[] hazMatTypes,
TunnelCategory[] tunnelCategories 
)

The /route/routeReports GET request retrieves a set of requested reports for the requested route.

REST METHOD: GET REST URI:

/route/routeReports?routeId={routeId}&stops={stops}&stopCosts={stopCosts}
                         &vehType={vehType}&routeType={routing}&hwyOnly={hwyOnly}
                         &custRdSpeeds={custRoadSpds}&avoidFavors={useAvoidFavors}
                         &overrideClass={classOvrdtype}&distUnits={distUnits}
                         &fuelUnits={fuelUnits}&avoidTolls={tollAvoid}
                         &inclFerryDist={ferryDist}&openBorders={borders}
                         &restrOverrides={ovrdRestrict}&hazMat={hazMat}&tunnelCategory={tunnelCategory}
                         &routeOpt={routeOpt}&lang={lang}&hubRouting={hubRouting}&vehProfile={vehProfile}
                         &vehDimUnits={trkUnits}&vehHeight={trkHeight}
                         &vehLength={trkLength}&vehWidth={trkWidth}
                         &vehWeight={trkWeight}&axles={trkAxles}&truckConfig={truckConfig}
                         &LCV={trkLCV}&reports={reports}&condenseDirs={condenseDirections}
                         &reportFmt={reportFmt}&inclTollData={inclTollData}
                         &fuelEconLoad={fuelEconLoad}&fuelEconEmpty={fuelEconEmpty}
                         &costPerFuelUnit={costPerFuelUnit}&costGHG={costGHG}
                         &costMaintLoad={costMaintLoad}&costMaintEmpty={costMaintEmpty}
                         &costTimeLoad={costTimeLoad}&costTimeEmpty={costTimeEmpty}
                         &tollCurrency={tollCurrency}&exchangeRate={exchangeRate}
                         &tollPlan={tollPlan}&citeint={citeInt}
                         &estimatedTimeOpts={estimatedTimeOpts}
                         &breakInterval={breakInterval}&breakLength={breakLength}
                         &borderWait={borderWait}&remHrsOfSvc={remHrsOfSvc}
                         &useTraffic={useTraffic}&afSetIDs={afSetIDs}
                         &afSetNames={afSetNames}&tHoursWithSeconds={tHoursWithSeconds}
                         &urgency={urgency}&severity={severity}&certainty={certainty}
                         &eventNames={eventNames}&elevLimit={elevLimit}
                         &ferryDiscourage={ferryDiscourage}&hosEnabled={hosEnabled}
                         &hosRemDriveTimeUntilBreak={hosRemDriveTimeUntilBreak}
                         &hosRemDriveTime={hosRemDriveTime}&hosRemOnDutyTime={hosRemOnDutyTime}
                         &hosRuleType={hosRuleType}&hosRemCycleDutyTime={hosRemCycleDutyTime}
                         &sideOfStreetAdherence={sideOfStreetAdherence}
                         &governorSpeedLimit={governorSpeedLimit}&useSites={useSites}&trlType={trlType}
                         &trlCount={trlCount}&trlMaxHt={trlMaxHt}&trlMaxWt={trlMaxWt}
                         &trlMaxAxles={trlMaxAxles}&isHybrid={isHybrid}&emiType={emiType}
                         &minPoll={minPoll}&region={region}
                         &includeTrimblePlaceIDs={includeTrimblePlaceIDs}&dataversion={dataVersion}


Parameters are of the form &qname={pname}, where qname is the URI query parameter name, and pname is the corresponding parameter name. The parameters are listed below by their pname.

Note: The parameters "stops" and "reports" are required.

Parameters
routeIdIndicates the id of the route for the purposes of generating a report. The format is an integer.

The default value is none.

Example:

&routeId=23
stopsThe coordinates that make up the stops of the route. Each stop is specified as a comma separated pairs of floating point numbers, representing longitude and latitude respectively in the Web Mercator ESPG:3857 projection. The list of stops is represented by a semi-colon separated sequence of stops.

There must be at least two coordinate pairs.

Example:

&stops=-76.12345,42.12345;-76.12312,42.12312;-76.12456,42.12456
stopCostsThis parameter specifies the "Stop Costs" for each stop on the route.

The format is a list delimited by a vertical bar (|) of StopCosts for each stop that is supplied in the stops query parameter, respectively.

A StopCost has the following format:

StopCost :: CostOfStop ',' HoursPerStop ',' Loaded' ,' OnDuty' ,' UseOrigin
CostOfStop :: Float
HoursPerStop :: Float
Loaded :: true | false
OnDuty :: true | false
UseOrigin :: true | false

It is required to have an entry for each pair of coordinates in the stops query parameter.

Examples:

&stopCosts=0.0,0.0,true,true,true|1.0,0.2,false,true,true|5.0,5.0,true,false,true
vehTypeThe vehicle type. Possible values are:

  1. Truck
  2. LightTruck
  3. Auto

Default is Truck.

Example:

&vehType=LightTruck

See also
    ALK.PCM.Model.VehicleType

routingThe desired routing algorithm. Possible values are:

  1. Practical
  2. Shortest

Default is Practical.

Example:

&routing=Shortest
hwyOnlyIndicates whether to use highways only. Possible values are boolean:

  • true
  • false

Default is false.

Example:

&hwyOnly=true
custRoadSpdsIndicates whether to use custom road speeds. Possible values are boolean:

  • true
  • false

Default is false.

Example:

&custRdSpeeds=true
useAvoidFavorsIndicates whether or not to use avoids and favors while routing. Possible values are boolean:

  • true
  • false

Default is false.

Example:

&avoidFavors=true
classOvrdtypeA comma-separated list of class overrides. Possible values are:

  1. None
  2. NationalNetwork
  3. FiftyThreeFoot

Default is none, i.e. empty list.

Example:

 &overrideClass=NationalNetwork,FiftyThreeFoot

See also
    ALK.Common.Model.ClassOverrideType

distUnitsDistance units that pertain to measurement arguments of this request. Possible values are:

  1. Miles
  2. Kilometers

Default is Miles.

Example:

&distUnits=Kilometers
fuelUnitsFuel units that pertain to fuel measurement arguments of this request. Possible values are:

  1. Gallons
  2. Liters

Default is Gallons.

Example:

&fuelUnits=Liters

See also
    ALK.Common.Model.VolumeUnits

tollAvoidIndicates whether or not to avoid tolls while routing. Possible values are boolean:

  • true
  • false

Default is false.

Example:

&avoidTolls=true
ferryDistIndicates whether or not to include ferry distance when calculating the distance of the route. Possible values are boolean:

  • true
  • false

Default is true.

Example:

&inclFerryDist=false
bordersIndicates whether borders are open for travel. Possible values are boolean:

  • true
  • false

Default is true.

Example:

&openBorders=false
ovrdRestrictIndicates whether or not to override truck restrictions. Possible values are boolean:

  • true
  • false

Default is false.

Example:

&overrideRestrict=true
hazMatIndicates the hazardous material type. Possible values are:

  1. None
  2. General
  3. Caustic
  4. Explosives
  5. Flammable
  6. Inhalants
  7. Radioactive

Default is None.

Example:

&hazMat=Radioactive

See also
    ALK.PCM.Model.HazMatType

tunnelCategory
routeOptIndicates the method by which to optimize route stops. Possible values are:

  1. None
    Indicates to not use any stop optimization.
  2. ThruAll
    Indicates that all of the input stops should be resequenced for the most optimal sequence.
  3. DestinationFixed
    Indicates that the destination remain fixed, but all other input stops should be resequenced for the most optimal sequence.

Default is None.

Example:

&routeOpt=ThruAll

See also
    ALK.PCM.Model.RouteOptimizeType

langThe language in which the response shall be written.

Possible values are:

  1. ENUS - English - United States
  2. ENGB - English - Great Britain
  3. ES - Spanish
  4. DE - German
  5. FR - French
  6. IT - Italian



Example:

&language=DE

See also
    ALK.PCM.Model.LanguageType

hubRoutingIndicates whether or not to enable hub routing. Possible values are boolean:

  • true
  • false

Default is false.

Example:

&hubRouting=true
vehProfileIndicates the vehicle profile which is a preset collection of dimensions and routing options. Possible values are:

  1. None
  2. TwentyEightDoubleTrailer
  3. FortyStraightTruck
  4. FortyEightSemiTrailer
  5. FiftyThreeSemiTrailer
  6. FullSizeVan
  7. TwentySixStraightTruck
  8. ConventionalSchoolBus
  9. SmallSchoolBus

Default is None which is equivalent to the 48 foot semi trailer profile. For Auto or light duty, use FullSizeVan.

Example:

&vehProfile=FullSizeVan

See also
    ALK.PCM.Model.TruckStyle

trkUnitsVehicle dimension units. Possible values are:

  1. English
  2. Metric

Default is English.

Example:

&vehDimUnits=Metric

See also
    ALK.Common.Model.VehicleDimUnits

trkHeightThe height of the truck in feet and inches (English) or meters (Metric) depending on the vehDimUnits query parameter. Feet and inches may be formatted with apostrophe and double quotes, i.e. feet'inches".

Maximum value is 13'6" or 4.1148 meters.

Default is 13'6" in all regions except Europe, which is 12'6".

Examples:

&vehHeight=13'6"  // feet and inches for English
&vehHeight=13.5   // feet for English
&vehHeight=4.11   // meters for Metric
trkLengthThe length of the truck in feet and inches (English) or meters (Metric) depending on the vehDimUnits query parameter. Feet and inches may be formatted with apostrophe and double quotes, i.e. feet'inches".

Maximum value is 53 feet or 16.1544 meters.

Default is 48 feet in all regions except Europe, which is 54"1'.

Examples:

&vehLength=13'6"  // feet and inches for English
&vehLength=13.5   // feet for English
&vehLength=4.11   // meters for Metric
trkWidthThe width of the truck in feet and inches (English) or meters (Metric) depending on the vehDimUnits query parameter. Feet and inches may be formatted with apostrophe and double quotes, i.e. feet'inches".

This value may be 96" and below, 102" and above or 98".

Default is 96" for all regions.

Examples:

&vehWidth=10'6"  // feet and inches for English
&vehWidth=10.5   // feet for English
&vehWidth=3.2    // meters for Metric
trkWeightThe weight of the truck in pounds (English) or kilograms (Metric) depending on the vehDimUnits query parameter.

Acceptable values can be up to 132,000 pounds or 59,874 kilos.
The default value is 80,000 pounds for all regions.

Examples:

&vehWeight=5000  // pounds for English
&vehWeight=2268  // kilograms for Metric
trkAxlesIndicates the number of axles on the vehicle. Acceptable values are 2 through 14.

Default is 5.

Example:

&axles=4
truckConfigIndicates the truck style. Possible values are:

  1. None
  2. TwentyEightDoubleTrailer
  3. FortyStraightTruck
  4. FortyEightSemiTrailer
  5. FiftyThreeSemiTrailer
  6. FullSizeVan
  7. TwentySixStraightTruck
  8. ConventionalSchoolBus
  9. SmallSchoolBus

Default is None which is equivalent to the 48 foot semi trailer profile. For Auto or light duty, use FullSizeVan.

Example:

&truckConfig=FullSizeVan

See also
    ALK.PCM.Model.TruckStyle

trkLCV
reportsIndicates the reports to retrieve. Possible values are a comma-separated list of the following:

  1. CalcMiles
  2. Mileage
  3. Directions
  4. State
  5. Detail
  6. Road
  7. Geotunnel
  8. TollDetail (EU streets only)

There must be at least one report specified.

If an unlicensed report is specified, the request will result in a forbidden request, i.e. a 403 HTTP Response.

Example:

&reports=Directions,Mileage,Road
condenseDirectionsIndicates whether or not to whether or not to condense the directions report. Possible values are boolean:

  1. true
  2. false

Default is false.

Example:

&condenseDirs=false
reportFmtIndicates the format in which to return the report. Possible values are:

  1. Text
  2. HTML
  3. XML
  4. JSON

Default is JSON.

Note: All reports are returned in JSON format. This parameter is reserved for future use.

Example:

&reportFmt=JSON

See also
    ALK.PCM.Model.ReportFormat

inclTollData
fuelEconLoadThe fuel efficiency distance units per fuel units when the vehicle is loaded. The distance units are specified by the distUnits query parameter, and the fuel units are specified by the fuelUnits query parameter.

The format of this value is a floating point number.

Example:

&fuelEconLoad=11.9
fuelEconEmptyThe fuel efficiency distance units per fuel units when the vehicle is empty. The distance units are specified by the distUnits query parameter, and the fuel units are specified by the fuelUnits query parameter.

The format of this value is a floating point number.

Example:

&fuelEconEmpty=11.9
costPerFuelUnitThe cost per unit of fuel. The fuel units are specified by the fuelUnits query parameter. The cost is currency agnostic.

The format of this value is a floating point number.

Example:

&costPerUnitFuel=11.9
costGHGThe cost of greenhouse gas in pounds(lbs) per fuel unit. The fuel units are specified by the fuelUnits query parameter. The cost is currency agnostic.

The format of this value is a floating point number.

Example:

&costGHG=11.9
costMaintLoadThe maintenance cost per distance unit when the vehicle is loaded. The distance units are specified by the distUnits query parameter, and the fuel units are specified by the fuelUnits query parameter.

The format of this value is a floating point number.

Example:

&costMaintLoadEmpty=11.9
costMaintEmptyThe maintenance cost per distance unit when the vehicle is empty. The distance units are specified by the distUnits query parameter, and the fuel units are specified by the fuelUnits query parameter.

The format of this value is a floating point number.

Example:

&costMaintEmpty=11.9
costTimeLoadThe labor time cost per distance units when the vehicle is empty. The distance units are specified by the distUnits query parameter. The cost is currency agnostic.

The format of this value is a floating point number.

Example:

&costTimeEmpty=11.9
costTimeEmptyThe labor time cost per distance units when the vehicle is loaded. The distance units are specified by the distUnits query parameter. The cost is currency agnostic.

The format of this value is a floating point number.

Example:

&costTimeLoad=11.9
tollCurrencyIndicates the currency used for calculating toll costs. Possible values for the routePath request are:

  1. US United States dollar
  2. CDN Canadian dollar
  3. ALL Albanian lek
  4. AMD Armenian dram
  5. AZN Azerbaijani manat
  6. BAM Bosnia and Herzegovina convertible mark
  7. BGN Bulgarian lev
  8. BYR Belarusian ruble
  9. CHF Swiss franc
  10. CZK Czech koruna
  11. DKK Danish krone
  12. GBP Pound sterling
  13. GEL Georgian lari
  14. HRK Croatian kuna
  15. HUF Hungarian forint
  16. ISK Icelandic króna: second króna
  17. MDL Moldovan leu
  18. MKD Second Macedonian denar
  19. NOK Norwegian krone
  20. PLN Polish złoty
  21. RON Fourth Romanian leu
  22. RSD Serbian dinar
  23. RUB Russian ruble
  24. SEK Swedish krona
  25. TRY Turkish lira
  26. UAH Ukrainian hryvnia

Default is US.

Example:

&tollCurrency=CDN

See also
    ALK.PCM.Model.Currency

exchangeRateThe exchange rate for changing currency listed in the tollCurrency query parameter to the cost units in which everything else is being calculated.

The format of this value is a floating point number.

Example:

&exchangeRate=11.9
tollPlanIndicates the toll discount plan to consider when cacluating toll costs. Possible values are a comma-separated list of the following toll discount programs:

  • ALL
    Include all listed toll plans below.
  • 407ETR Transponder
  • A25 Transponder
  • BreezeBy
  • C-Pass
  • Cruise Card
  • E-Pass
  • E-Pass Canada
  • EXpress Toll
  • EZ Tag
  • EZPass
  • EZPass-NJ
  • EZPass-WV
  • FAST LANE
  • FasTrak
  • GeauxPass
  • Good To Go
  • GO-PASS
  • I-Pass
  • I-Zoom
  • K-TAG
  • Laredo Trade Tag
  • LeeWay
  • MACPASS
  • NC Quick Pass
  • NEXPress
  • LeeWay
  • Palmetto Pass
  • Peach Pass
  • PikePass
  • Quickpass,Smart Tag
  • StraitPASS
  • SunPass
  • TollTag
  • TxTag
  • Wabash Pass

Default is none, i.e. empty list.

Examples:

&tollPlan=      // TODO: Is this valid?
&tollPlan=All
&tollPlan=Peach%20Pass
&tollPlan=407ETR%20Transponder,A25%20Transponder
citeIntIndicates the cite interval to be used when generating a geotunnel report. The format of this value is a floating point number.

The minimum value is 0.1.

Example:

&citeint=10.9
estimatedTimeOptsEstimated time options affects routing only when roads have time based restrictions.
Format is:

( Depart | Arrive ) ( '|' ( SpecificDateTime | ( DayOfWeek ( '|' TimeOfDay )? ) ) ( '|' TimeZone )? )?

Default is none.

Examples:

&estimatedTimeOpts=Depart|Monday|18:30               // Depart given day of week and time of day.
&estimatedTimeOpts=Arrive|Monday|18:30|EDT           // Arrive given day of week and time of day in specific time zone.
&estimatedTimeOpts=Arrive|2014-03-04T08:15:30|Local  // Arrive at specific date/time, or Arrive or Depart to arrive.
&estimatedTimeOpts=Arrive                            // Arrive with system time.
&estimatedTimeOpts=Depart                            // Depart with system time.
breakIntervalThe elapsed time, in hours, of the trip before a break will be taken. The format is of this value is a floating point number.

Example:

&breakInterval=3.5    // 3 hours 30 minutes
breakLengthThe amount of time, in hours, a break will last. The format is of this value is a floating point number.

Example:

&breakLength=3.5    // 3 hours 30 minutes
borderWaitThe amount of waiting time, in hours, at the border to add to the overall trip. The format is of this value is a floating point number.

Example:

&borderWait=3.5    // 3 hours 30 minutes
remHrsOfSvcThe remaining hours of service at the start of the trip before the driver needs to take a break. The format is of this value is a floating point number.

Example:

&remHrsOfSvc=3.5    // 3 hours 30 minutes
useTrafficIndicates whether or not use traffic data. Possible values are boolean:

  • true
  • false

Default is false.

Example:

&useTraffic=true
afSetIDsApply the avoid/favor sets to the route. The format is comma separated IDs. The IDs are integers.

Default is none, i.e. empty list.

Examples:

&afSetIDs=                  // Is this valid?
&afSetIDs=2234
&afSetIDs=2234,34223,34323
afSetNamesApply the avoid/favor sets to the route. The format is comma separated names.

Default is none, i.e. empty list.

Examples:

&afSetNames=                  // Is this valid?
&afSetNames=Highways
&afSetNames=Highways,TollRoads,Malls
tHoursWithSecondsIndicates whether to return THours with seconds precision for MileageReports. Possible values are boolean:

  1. true
  2. false

Default is false.

Example:

&tHoursWithSeconds=false
urgencyIndicates to retrieve weather alerts with an urgency attribute matching the listed values. Format is a comma-separated list of the following values:

  1. Immediate
    Responsive action should be taken immediately.
  2. Expected
    Responsive action should be taken soon.
  3. Future
    Responsive action should be taken in the near future.
  4. Past
    Responsive action is no longer required.
  5. Unknown
    Urgency is unknown.

Default is none. i.e. empty list, which means none will be matched.

Example:

&urgency=Immediate,Expected,Future
&urgency=0,1,2

See also
    ALK.PCM.Model.WeatherAlertUrgency

severityIndicates to retrieve weather alerts with an urgency attribute matching the listed values. Format is a comma-separated list of the following values:

  1. Extreme
    Extraordinary threat to life or property.
  2. Severe
    Significant threat to life or property.
  3. Moderate
    Possible threat to life or property.
  4. Minor
    Minimal threat to life or property.
  5. Unknown
    Severity is unknown.

Default is none. i.e. empty list, which means none will be matched.

Example:

&severity=Extreme,Severe,Moderate
&severity=0,1,2

See also
    ALK.PCM.Model.WeatherAlertSeverity

certaintyIndicates to retrieve weather alerts with an certainty attribute matching the listed values. Format is a comma-separated list of the following values:

  1. Observed
    Determined to have occurred or to be ongoing.
  2. Likely
    Possibility is greater than 50% to occur.
  3. Possible
    Is possible, but not likely to occur.
  4. Unlikely
    Is not expected to occur.
  5. Unknown
    Certainty is unknown.

Default is none. i.e. empty list, which means none will be matched.

Example:

&certainty=Observed,Likely,Possible
&certainty=0,1,2
eventNamesLists the event names to match from the weather alerts when generating a report. The format is a list of strings separated by commas.

Default is none, i.e. empty list, which means all will be matched.

Examples:

&eventNames=Tornado%20Warning,High%20winds
elevLimitIndicates the elevation limit when generating a route. Elevation unit is specified in feet or meters depending on the value of the distUnits query parameter being Miles or Kilometers respectively.
This restriction is available for the following datasets:

  1. Current
  2. PCM_NA

This restriction will be ignored if routing is deemed impractical with the limit, or a stop is located at an elevation higher than the limit.

The default is to not employ this restriction.

Example:

&elevLimit=5000            // feet for Miles
&elevLimit=1524            // meters for Kilometers
ferryDiscourageIndicates whether or not to discourage the use of ferries when creating the route. Possible values are boolean:

  • true
  • false

Default is false.

Example:

&ferryDiscourage=true
hosEnabledEnables insertion of "Hours Of Service" stops into the route. Possible values are boolean:

  • true
  • false

Default is false.

Example:

&hosEnabled=true
hosRemDriveTimeUntilBreakThe available driving hours at origin before the driver needs to take a short rest break.

The default value is 8 hours.

Example:

&hosRemDriveTimeUntilBreak=4
hosRemDriveTimeThe available driving hours at origin until the end of work day.

The default value is 11 hours in US.

Example:

&hosRemDriveTime=4
hosRemOnDutyTimeThe available On-Duty hours available at origin until the end of work day.

The default value is 14 hours.

Example:

&hosRemOnDutyTime=4
hosRuleTypeThe "Hours of Service" rule to use. Possible values are:

  1. USFed607LH
    Use US Federal Long Haul 60/7 rule.
  2. USFed708LH
    Use US Federal Long Haul 70/8 rule.
  3. CanadaCycle1
    Use Canadian Cycle 1.
  4. CanadaCycle2
    Use Canadian Cycle 2.
  5. California808
    Use California 80/8 rule.
  6. Texas707
    Use Texas 70/7 rule.
  7. USShortHaul
    Use US Short Haul Exemption.
  8. Europe
    Use European 48 hour rule.
  9. Unknown/tt>
    Unknown or uninitialized schedule type

Specification is required when hosEnabled=true and hosRemCycleDutyTime is specified.

Example:

&hosRuleType=USFed708H

See also
    ALK.Common.Model.HoSScheduleType

hosRemCycleDutyTimeThe available Cycle time duty hours at origin until Cycle reset.

There is no default value for this.

Example:

&hosRemCycleDutyTime=4
sideOfStreetAdherenceIndicates the level of strictness in avoiding the destination being on the opposite side of the street.

  1. Off
  2. Minimal
  3. Moderate
  4. Average
  5. Strict
  6. Adhere
  7. StronglyAdhere

Default is Off.

Example:

&sideOfStreetAdherence=Average

See also
    ALK.PCM.Model.SideOfStreetAdherenceLevel

governorSpeedLimitMaximum average road speed to use in route calculations that overrides all other road speeds when they are above this value.

Default is disabled and valid value is between 1 and 100 MPH (miles per hour). The value is in miles per hour regardless of the value of the distUnits query parameter.

Example:

&governorSpeedLimit=65            // miles per hour
useSitesA boolean parameter indicating whether or not the route stops are on sites and to accordingly consider site gates. Possible values are boolean:

  • true
  • false

Default is false.

Example:

&useSites=true
maintainHeadingIndicates whether or not to maintain heading at intermediate stops by avoid u-turns and instead leaving the stop in the same direction it entered it. Possible values are boolean:

  • true
  • false

Default is false except for school bus vehicle profiles where this option is true by default when unsupplied.

Example:

&maintainHeading=true
trlTypeIndicates the type of trailer. Possible values are:

  1. None
  2. Trailer
  3. Caravan

Default is None.

Example:

&trlType=Trailer
trlCountIndicates the number of trailers.

The default value is ????.

Example:

&trlCount=1
trlMaxHtThe maximum height of the trailer in feet and inches (English) or meters (Metric) depending on the vehDimUnits query parameter. Feet and inches may be formatted with apostrophe and double quotes, i.e. feet'inches".

Default is ????. Maximum and minimum values are 20 feet (English)and 3 feet (English), respectively.

Examples:

&trlMaxHt=13'6"  // feet and inches for English
&trlMaxHt=13.5   // feet for English
&trlMaxHt=4.11   // meters for Metric
trlMaxWtThe maximum weight of the trailer in pounds (English) or kilograms (Metric) depending on the vehDimUnits query parameter. The format of this value is an integer.

Default is ????. Acceptable range is from 2000 Kilograms to 60000 Kilograms (Metric).

Examples:

&trlMaxHt=11022  // pounds for English
&trlMaxHt=5000   // kilograms for Metric
trlMaxAxlesIndicated the maximum number of axles on the trailer. The format of this value is an integer. Acceptable values are 1 through 8.

The default value is 1.

Example:

&trlMaxAxles=2
isHybridIndicates whether the vehicle has a hybrid engine. Possible values are boolean:

  • true
  • false

Default is false.

Example:

&isHybrid=true
emiTypeThe emission type of the engine. Possible values are:

  1. EuroI
  2. EuroII
  3. EuroIII
  4. EuroIV
  5. EuroV

Default is ????.

Example:

&emiType=EuroV

See also
    ALK.PCM.Model.EngineEmissionType

minPollIndicates whether vehicle has a minimum vehicle pollution status. Possible values are boolean:

  • true
  • false

Default is false.

Example:

&minPoll=true
refrigeratedIndicates whether or not the truck is refrigerated. Possible values are boolean:

  • true
  • false

Default is false.

Example:

&refrigerated=false
fuelTypeIndicates the fuel type of the vehicle.

  1. FuelType_Petrol
  2. Petrol_E5
  3. Petrol_E10
  4. Ethanol
  5. Diesel
  6. Biodiesel
  7. Diesel_D5
  8. Diesel_D7

Default is Diesel.

Example:

&fuelType=Petrol_E10

See also
    ALK.PCM.Model.FuelType

fuelConsumptionThe fuel consumption per distance of the vehicle (liters/100km).

The format of this value is a floating point number.

Example:

&fuelConsumption=0.5
includeTrimblePlaceIDs
regionThe data region in which the route is located. Possible values are:

  1. Unknown - Africa
  2. AF - Africa
  3. AS - Asia
  4. EU - Europe
  5. NA - North America
  6. OC - Oceania; Australia
  7. SA - South America
  8. ME - Middle East

Default is NA (North America).

Example:

&region=EU

See also
    ALK.Common.Model.DataRegion

dataVersionIndicates the data version against which this request should be performed. Possible values are:

  • Current
  • PCM_EU
  • PCM_OC
  • PCM_SA
  • PCM_GT (GeoTrac)
  • PCM_AF
  • PCM_AS
  • PCM_ME
  • PCM_NA
  • PCM_WW
  • PCM_JP
  • PCM_NASL
  • PCM_MX
  • PCM18 through PCM34

Default is Current.

Example:

&dataVersion=PCM_SA

See also
    ALK.PCM.Model.DataVersion

avoidState
avoidCountry
favorState
favorCountry
debug
assetID
hazMatTypes
tunnelCategories
tollroadswhat to do with tolls, use, avoid if possible, or avoid entirely
Returns
A JSON formatted list of reports, Report

◆ PostRouteReports()

List<Report> PostRouteReports(ReportRequestBody request,
ALK.PCM.Model.DataVersiondataVersion 
)

The /route/routeReports POST request retrieves a list of requested reports for the given route.

REST METHOD: POST
REST URI:

/route/routeReports?dataVersion={dataVersion}


Parameters are of the form &qname={pname}, where qname is the URI query parameter name, and pname is the corresponding parameter name. The parameters are listed below by their pname.

Note: The parameters "stops" and "reports" are required in the request body.

Parameters
requestA JSON formatted request body, see ALK.PCM.Model.ServiceModels.ReportRequestBody.

Example:

{
    "ReportRoutes": [
      {
        "ReportingOptions": {
          "UseTollData": true,
          "FuelUnits": 0,
          "RouteCosts": {
            "FuelEconomyLoaded": 8.5,
            "FuelEconomyEmpty": 11.9,
            "PricePerFuelUnit": 13,
            "TruckStyle": 0,
            "GreenHouseGas": 5.2,
            "OtherCostPerDistUnitLoaded": 12.2,
            "OtherCostPerDistanceUnitEmpty": 8.9,
            "CostTimeLoaded": 15.5,
            "CostTimeEmpty": 12.6
          },
          "TimeCosts": {
            "DepartTime": null,
            "BreakInterval": 0,
            "BreakLength": 0,
            "BorderWait": 0,
            "RemainingHoursOfService": 0
          },
          "TollCurrency": 0,
          "ExchangeRate": 1.01,
          "TollDiscount": "ezpass",
          "IncludeFerryDistance": true,
          "UseCustomRoadSpeeds": false,
          "Language": 0,
          "EstimatedTimeOptions": null,
          "UseTraffic": false,
          "TruckStyle": 0
        },
        "ReportTypes": [
          {
            "__type": "DirectionsReportType:http:\/\/pcmiler.alk.com\/APIs\/v1.0",
            "CondenseDirections": false
          },
          {
            "__type": "MileageReportType:http:\/\/pcmiler.alk.com\/APIs\/v1.0",
            "THoursWithSeconds": false
          },
          {
            "__type": "DetailReportType:http:\/\/pcmiler.alk.com\/APIs\/v1.0",
            "SeparateHeadingFromRoute": false,
            "SegmentEndpoints": false
          },
          {
            "__type": "StateReportType:http:\/\/pcmiler.alk.com\/APIs\/v1.0",
            "SortByRoute": false
          },
          {
            "__type": "GeoTunnelReportType:http:\/\/pcmiler.alk.com\/APIs\/v1.0",
            "CiteInterval": 10
          },
          {
            "__type": "CalculateMilesReportType:http:\/\/pcmiler.alk.com\/APIs\/v1.0"
          }
        ],
        "RouteId": null,
        "Stops": [
          {
            "Costs": {
                "CostOfStop": 0.0,
                "HoursPerStop": 0.0,
                "Loaded": true,
                "OnDuty": true,
                "UseOrigin": true
            },
            "IsViaPoint": false,
            "Address":{
                "StreetAddress": "457 N Harrison St",
                "City": "Princeton",
                "State": "NJ",
                "Zip":08540,
                "County":null,
                "Country":null,
                "SPLC":null,
                "CountryPostalFilter":0,
                "AbbreviationFormat":0
            },
            "Coords": null,
            "Region": 4,
            "Label": "Princeton address",
            "PlaceName": null
          },
          {
            "Costs": {
                "CostOfStop": 1.0,
                "HoursPerStop": 0.2,
                "Loaded": false,
                "OnDuty": true,
                "UseOrigin": true
            },
            "IsViaPoint": false,
            "Address": null,
            "Coords": {
              "Lat": "42.123120",
              "Lon": "-76.123120"
            },
            "Region": 4,
            "Label": "first stop",
            "PlaceName": null
          },
          {
            "Costs": {
                "CostOfStop": 5.0,
                "HoursPerStop": 5.0,
                "Loaded": true,
                "OnDuty": false,
                "UseOrigin": true
            },
            "IsViaPoint": false,
            "Address": null,
            "Coords": {
              "Lat": "42.124560",
              "Lon": "-76.124560"
            },
            "Region": 4,
            "Label": null,
            "PlaceName": null
          }
        ],
        "Options": {
          "VehicleType": 0,
          "RoutingType": 1,
          "HighwayOnly": true,
          "FuelRoute": false,
          "UseAvoidsAndFavors": false,
          "ClassOverrides": 1,
          "CustomRoadSpeeds": [
          {
            "RoadCategory": 1,
            "Speed": 5
          },
          {
            "RoadCategory": 3,
            "Speed": 5
          },
          {
            "RoadCategory": 4,
            "Speed": 5
          },
          {
            "RoadCategory": 5,
            "Speed": 5
          },
          {
            "RoadCategory": 6,
            "Speed": 5
          },
          {
            "RoadCategory": 7,
            "Speed": 5
          },
          {
            "RoadCategory": 8,
            "Speed": 5
          },
          {
            "RoadCategory": 10,
            "Speed": 5
          },
          {
            "RoadCategory": 12,
            "Speed": 5
          },
          {
            "RoadCategory": 13,
            "Speed": 5
          },
          {
            "RoadCategory": 14,
            "Speed": 5
          },
          {
            "RoadCategory": 15,
            "Speed": 5
          },
          {
            "RoadCategory": 16,
            "Speed": 5
          },
          {
            "RoadCategory": 17,
            "Speed": 5
          }
          ],
          "DistanceUnits": 0,
          "TollDiscourage": true,
          "BordersOpen": true,
          "OverrideRestrict": false,
          "HazMatType": 3,
          "RouteOptimization": 2,
          "TruckCfg": {
            "Units": 0,
            "Height": "13'6\"",
            "Length": "53'",
            "Width": "96"",
            "Weight": "14000",
            "Axles": 8,
            "LCV": false
          },
          "HubRouting": false,
          "AFSetIDs": null,
          "ElevLimit": null,
          "FerryDiscourage": false,
          "HoSOptions": {
            "Enabled": false,
            "RemainingDriveTime": null,
            "RemainingOnDutyTime": null,
            "RemainingDriveTimeUntilBreak": null,
            "RemainingCycleDutyTime": null,
            "HoSRuleType": null,
            "CycleTimeGains": null,
            "LastCycleResetDateTime": null,
            "Last24HourBreakDateTime": null,
            "UseCycleReset": null,
            "TerminalDayStartTime": null,
            "UseCustomPlaces": null,
            "TeamDriving": null,
            "CustomBreakDurations": {
                "ShortBreakDuration": null,
                "EndOfDutyBreakDuration": null,
                "CycleResetBreakDuration": null,
                "DriverSwitchBreakDuration": null,
                "BorderCrossingWaitDuration": null
            },
            "AlternateHoSRuleType": null,
            "RemainingCanadaOnDutyTime": null,
            "RemainingDriveTimeDriver2": null,
            "RemainingOnDutyTimeDriver2": null,
            "RemainingDriveTimeUntilBreakDriver2": null,
            "RemainingCycleDutyTimeDriver2": null,
            "CycleTimeGainsDriver2": null,
            "LastCycleResetDateTimeDriver2": null,
            "Last24HourBreakDateTimeDriver2": null,
            "RemainingCanadaOnDutyTimeDriver2": null
          },
          "SideOfStreetAdherence":0
        },
        "FuelOptions": null
      }
    ]
  }
dataVersionIndicates the data version against which this request should be performed. Possible values are:

  • Current
  • PCM_EU
  • PCM_OC
  • PCM_SA
  • PCM_GT (GeoTrac)
  • PCM_AF
  • PCM_AS
  • PCM_ME
  • PCM_NA
  • PCM_WW
  • PCM_JP
  • PCM_NASL
  • PCM_MX
  • PCM18 through PCM34

Default is Current.

Example:

&dataVersion=PCM_SA

See also
    ALK.PCM.Model.DataVersion

Returns
Example of a result returned from ALK.PCM.IRestService.PostRouteReports.

This result is JSON formatted array of ALK.PCM.Model.BusinessModels.Report.

[
  {
    "__type": "DirectionsReport:http:\/\/pcmiler.alk.com\/APIs\/v1.0",
    "RouteID": null,
    "Origin": {
      "Address": {
        "StreetAddress": "509 Walker Road",
        "City": "Endicott",
        "State": "NY",
        "Zip": "13760",
        "County": "Broome",
        "Country": "United States",
        "SPLC": null,
        "CountryPostalFilter": 0,
        "AbbreviationFormat": 0,
        "StateName":"New York",
        "StateAbbreviation": "NY",
        "CountryAbbreviation": "US"
      },
      "Coords": {
        "Lat": "42.123450",
        "Lon": "-76.123450"
      },
      "Region": 4,
      "Label": "",
      "PlaceName": "",
      "TimeZone": "EDT",
      "Errors": [],
      "SpeedLimitInfo": null,
      "ConfidenceLevel": "Exact",
      "DistanceFromRoad": 0.1
    },
    "Destination": {
      "Address": {
        "StreetAddress": "543 Walker Road",
        "City": "Endicott",
        "State": "NY",
        "Zip": "13760",
        "County": "Broome",
        "Country": "United States",
        "SPLC": null,
        "CountryPostalFilter": 0,
        "AbbreviationFormat": 0,
        "StateName":"New York",
        "StateAbbreviation": "NY",
        "CountryAbbreviation": "US"
      },
      "Coords": {
        "Lat": "42.124560",
        "Lon": "-76.124560"
      },
      "Region": 4,
      "Label": "",
      "PlaceName": "",
      "TimeZone": "EDT",
      "Errors": [],
      "SpeedLimitInfo": null,
      "ConfidenceLevel": "Exact",
      "DistanceFromRoad": 0.183
    },
    "ReportLegs": [
      {
        "Origin": {
          "Address": {
            "StreetAddress": "509 Walker Road",
            "City": "Endicott",
            "State": "NY",
            "Zip": "13760",
            "County": "Broome",
            "Country": "United States",
            "SPLC": null,
            "CountryPostalFilter": 0,
            "AbbreviationFormat": 0,
            "StateName":"New York",
            "StateAbbreviation": "NY",
            "CountryAbbreviation": "US"
          },
          "Coords": {
            "Lat": "42.123450",
            "Lon": "-76.123450"
          },
          "Region": 4,
          "Label": "",
          "PlaceName": "",
          "TimeZone": "EDT",
          "Errors": [],
          "SpeedLimitInfo": null,
          "ConfidenceLevel": "Exact",
          "DistanceFromRoad": 0.1
        },
        "ReportLines": [
          {
            "Warn": null,
            "Direction": "509 Walker Road, Endicott, NY 13760",
            "Dist": null,
            "Time": null,
            "InterCh": null,
            "Delay": null
          },
          {
            "Warn": null,
            "Direction": "Go south on Local",
            "Dist": null,
            "Time": null,
            "InterCh": null,
            "Delay": null
          },
          {
            "Warn": null,
            "Direction": "Drive less than 0.1 miles",
            "Dist": "0.0",
            "Time": "0:00",
            "InterCh": null,
            "Delay": null
          }
        ],
        "Dest": {
          "Address": {
            "StreetAddress": "499 Walker Road",
            "City": "Endicott",
            "State": "NY",
            "Zip": "13760",
            "County": "Broome",
            "Country": "United States",
            "SPLC": null,
            "CountryPostalFilter": 0,
            "AbbreviationFormat": 0,
            "StateName":"New York",
            "StateAbbreviation": "NY",
            "CountryAbbreviation": "US"
          },
          "Coords": {
            "Lat": "42.123120",
            "Lon": "-76.123120"
          },
          "Region": 4,
          "Label": "",
          "PlaceName": "",
          "TimeZone": "EDT",
          "Errors": [],
          "SpeedLimitInfo": null,
          "ConfidenceLevel": "Exact",
          "DistanceFromRoad": 0.077
        }
      },
      {
        "Origin": {
          "Address": {
            "StreetAddress": "499 Walker Road",
            "City": "Endicott",
            "State": "NY",
            "Zip": "13760",
            "County": "Broome",
            "Country": "United States",
            "SPLC": null,
            "CountryPostalFilter": 0,
            "AbbreviationFormat": 0,
            "StateName":"New York",
            "StateAbbreviation": "NY",
            "CountryAbbreviation": "US"
          },
          "Coords": {
            "Lat": "42.123120",
            "Lon": "-76.123120"
          },
          "Region": 4,
          "Label": "",
          "PlaceName": "",
          "TimeZone": "EDT",
          "Errors": [],
          "SpeedLimitInfo": null,
          "ConfidenceLevel": "Exact",
          "DistanceFromRoad": 0.077
        },
        "ReportLines": [
          {
            "Warn": null,
            "Direction": "499 Walker Road, Endicott, NY 13760 (0:00)",
            "Dist": "0.0",
            "Time": "0:00",
            "InterCh": null,
            "Delay": null
          },
          {
            "Warn": null,
            "Direction": "Go north on Local",
            "Dist": null,
            "Time": null,
            "InterCh": null,
            "Delay": null
          },
          {
            "Warn": null,
            "Direction": "Drive 0.1 miles",
            "Dist": "0.2",
            "Time": "0:01",
            "InterCh": null,
            "Delay": null
          },
          {
            "Warn": null,
            "Direction": "543 Walker Road, Endicott, NY 13760 (0:00)",
            "Dist": "0.2",
            "Time": "0:01",
            "InterCh": null,
            "Delay": null
          },
          {
            "Warn": null,
            "Direction": " 1986-2016 ALK Technologies.",
            "Dist": null,
            "Time": null,
            "InterCh": null,
            "Delay": null
          },
          {
            "Warn": null,
            "Direction": "All drive times are approximate.  ",
            "Dist": null,
            "Time": null,
            "InterCh": null,
            "Delay": null
          },
          {
            "Warn": null,
            "Direction": "('~5 mins' indicates you should be on this segment for 'about 5 minutes'.  )",
            "Dist": null,
            "Time": null,
            "InterCh": null,
            "Delay": null
          },
          {
            "Warn": null,
            "Direction": "This suggested route is based on various data sources and may be incomplete or",
            "Dist": null,
            "Time": null,
            "InterCh": null,
            "Delay": null
          },
          {
            "Warn": null,
            "Direction": "inaccurate in some cases.  The user assumes full liability for any delay, loss",
            "Dist": null,
            "Time": null,
            "InterCh": null,
            "Delay": null
          },
          {
            "Warn": null,
            "Direction": "or damage which may occur as a result of its use.  Please obey local traffic laws.",
            "Dist": null,
            "Time": null,
            "InterCh": null,
            "Delay": null
          }
        ],
        "Dest": {
          "Address": {
            "StreetAddress": "543 Walker Road",
            "City": "Endicott",
            "State": "NY",
            "Zip": "13760",
            "County": "Broome",
            "Country": "United States",
            "SPLC": null,
            "CountryPostalFilter": 0,
            "AbbreviationFormat": 0,
            "StateName":"New York",
            "StateAbbreviation": "NY",
            "CountryAbbreviation": "US"
          },
          "Coords": {
            "Lat": "42.124560",
            "Lon": "-76.124560"
          },
          "Region": 4,
          "Label": "",
          "PlaceName": "",
          "TimeZone": "EDT",
          "Errors": [],
          "SpeedLimitInfo": null,
          "ConfidenceLevel": "Exact",
          "DistanceFromRoad": 0.183
        }
      }
    ]
  }
]

◆ GetRteMatrix()

RouteMatrixResponseBody GetRteMatrix(List< double[]> originStops,
List< double[]> destStops,
VehicleTypevehType,
RoutingType? routing,
bool? hwyOnly,
bool useAvoidFavors,
ClassOverrideType? classOvrdtype,
DistanceUnitsdistUnits,
bool tollAvoid,
bool? borders,
bool ovrdRestrict,
HazMatTypehazMat,
TunnelCategorytunnelCategory,
TruckStylevehProfile,
VehicleDimUnitstrkUnits,
string trkHeight,
string trkLength,
string trkWidth,
string trkWeight,
int? trkAxles,
bool trkLCV,
int[] afSetIDs,
string[] afSetNames,
uint? elevLimit,
bool ferryDiscourage,
SideOfStreetAdherenceLevelsideOfStreetAdherence,
int? governorSpeedLimit,
DataRegionregion,
ALK.PCM.Model.RegionalDataSet dataset,
string[] avoidState,
string[] avoidCountry,
string[] favorState,
string[] favorCountry,
TollRoadsType? tollroads,
HazMatType[] hazMatTypes,
TunnelCategory[] tunnelCategories 
)

The /route/matrix GET request generates and returns a matrix of time and distance from a list of origins and destinations.

REST METHOD: GET REST URI:

/route/matrix?originStops={originStops}&destStops={destStops}&vehType={vehType}&routeType={routing}
                   &hwyOnly={hwyOnly}&avoidFavors={useAvoidFavors}&overrideClass={classOvrdtype}
                   &distUnits={distUnits}&avoidTolls={tollAvoid}&openBorders={borders}
                   &restrOverrides={ovrdRestrict}&hazMat={hazMat}&tunnelCategory={tunnelCategory}&vehProfile={vehProfile}&vehDimUnits={trkUnits}
                   &vehHeight={trkHeight}&vehLength={trkLength}&vehWidth={trkWidth}
                   &vehWeight={trkWeight}&axles={trkAxles}&LCV={trkLCV}&afSetIDs={afSetIDs}
                   &afSetNames={afSetNames}&elevLimit={elevLimit}&ferryDiscourage={ferryDiscourage}
                   &estimatedTimeOpts={estimatedTimeOpts}&useTraffic={useTraffic}
                   &sideOfStreetAdherence={sideOfStreetAdherence}&governorSpeedLimit={governorSpeedLimit}
                   &region={region}&dataset={dataset}


Parameters are of the form &qname={pname}, where qname is the URI query parameter name, and pname is the corresponding parameter name. The parameters are listed below by their pname.

Note: The parameters "originStops" and "destinationStops" are required in the request body.

Parameters
originStopsThe coordinates that make up the origin stops of the route. Each stop is specified as a comma separated pairs of floating point numbers, representing longitude and latitude respectively in the Web Mercator ESPG:3857 projection. The list of stops is represented by a semi-colon separated sequence of stops.

There must be at least two coordinate pairs.

Example:

&stops=-76.12345,42.12345;-76.12312,42.12312;-76.12456,42.12456
destStopsThe coordinates that make up the destination stops of the route. Each stop is specified as a comma separated pairs of floating point numbers, representing longitude and latitude respectively in the Web Mercator ESPG:3857 projection. The list of stops is represented by a semi-colon separated sequence of stops.

There must be at least two coordinate pairs.

Example:

&destStops=-76.12345,42.12345;-76.12312,42.12312;-76.12456,42.12456
vehTypeThe vehicle type. Possible values are:

  1. Truck
  2. LightTruck
  3. Auto

Default is Truck.

Example:

&vehType=LightTruck

See also
    ALK.PCM.Model.VehicleType

routingThe desired routing algorithm. Possible values are:

  1. Practical
  2. Shortest

Default is Practical.

Example:

&routing=Shortest
hwyOnlyIndicates whether to use highways only. Possible values are boolean:

  • true
  • false

Default is false.

Example:

&hwyOnly=true
useAvoidFavorsIndicates whether or not to use avoids and favors while routing. Possible values are boolean:

  • true
  • false

Default is false.

Example:

&avoidFavors=true
classOvrdtypeA comma-separated list of class overrides. Possible values are:

  1. None
  2. NationalNetwork
  3. FiftyThreeFoot

Default is none, i.e. empty list.

Example:

 &overrideClass=NationalNetwork,FiftyThreeFoot

See also
    ALK.Common.Model.ClassOverrideType

distUnitsDistance units that pertain to measurement arguments of this request. Possible values are:

  1. Miles
  2. Kilometers

Default is Miles.

Example:

&distUnits=Kilometers
tollAvoidIndicates whether or not to avoid tolls while routing. Possible values are boolean:

  • true
  • false

Default is false.

Example:

&avoidTolls=true
bordersIndicates whether borders are open for travel. Possible values are boolean:

  • true
  • false

Default is true.

Example:

&openBorders=false
ovrdRestrictIndicates whether or not to override truck restrictions. Possible values are boolean:

  • true
  • false

Default is false.

Example:

&overrideRestrict=true
hazMatIndicates the hazardous material type. Possible values are:

  1. None
  2. General
  3. Caustic
  4. Explosives
  5. Flammable
  6. Inhalants
  7. Radioactive

Default is None.

Example:

&hazMat=Radioactive

See also
    ALK.PCM.Model.HazMatType

tunnelCategory
vehProfileIndicates the vehicle profile which is a preset collection of dimensions and routing options. Possible values are:

  1. None
  2. TwentyEightDoubleTrailer
  3. FortyStraightTruck
  4. FortyEightSemiTrailer
  5. FiftyThreeSemiTrailer
  6. FullSizeVan
  7. TwentySixStraightTruck
  8. ConventionalSchoolBus
  9. SmallSchoolBus

Default is None which is equivalent to the 48 foot semi trailer profile. For Auto or light duty, use FullSizeVan.

Example:

&vehProfile=FullSizeVan

See also
    ALK.PCM.Model.TruckStyle

trkUnitsVehicle dimension units. Possible values are:

  1. English
  2. Metric

Default is English.

Example:

&vehDimUnits=Metric

See also
    ALK.Common.Model.VehicleDimUnits

trkHeightThe height of the truck in feet and inches (English) or meters (Metric) depending on the vehDimUnits query parameter. Feet and inches may be formatted with apostrophe and double quotes, i.e. feet'inches".

Maximum value is 13'6" or 4.1148 meters.

Default is 13'6" in all regions except Europe, which is 12'6".

Examples:

&vehHeight=13'6"  // feet and inches for English
&vehHeight=13.5   // feet for English
&vehHeight=4.11   // meters for Metric
trkLengthThe length of the truck in feet and inches (English) or meters (Metric) depending on the vehDimUnits query parameter. Feet and inches may be formatted with apostrophe and double quotes, i.e. feet'inches".

Maximum value is 53 feet or 16.1544 meters.

Default is 48 feet in all regions except Europe, which is 54"1'.

Examples:

&vehLength=13'6"  // feet and inches for English
&vehLength=13.5   // feet for English
&vehLength=4.11   // meters for Metric
trkWidthThe width of the truck in feet and inches (English) or meters (Metric) depending on the vehDimUnits query parameter. Feet and inches may be formatted with apostrophe and double quotes, i.e. feet'inches".

This value may be 96" and below, 102" and above or 98".

Default is 96" for all regions.

Examples:

&vehWidth=10'6"  // feet and inches for English
&vehWidth=10.5   // feet for English
&vehWidth=3.2    // meters for Metric
trkWeightThe weight of the truck in pounds (English) or kilograms (Metric) depending on the vehDimUnits query parameter.

Acceptable values can be up to 132,000 pounds or 59,874 kilos.
The default value is 80,000 pounds for all regions.

Examples:

&vehWeight=5000  // pounds for English
&vehWeight=2268  // kilograms for Metric
trkAxlesIndicates the number of axles on the vehicle. Acceptable values are 2 through 14.

Default is 5.

Example:

&axles=4
trkLCV
afSetIDsApply the avoid/favor sets to the route. The format is comma separated IDs. The IDs are integers.

Default is none, i.e. empty list.

Examples:

&afSetIDs=                  // Is this valid?
&afSetIDs=2234
&afSetIDs=2234,34223,34323
afSetNamesApply the avoid/favor sets to the route. The format is comma separated names.

Default is none, i.e. empty list.

Examples:

&afSetNames=                  // Is this valid?
&afSetNames=Highways
&afSetNames=Highways,TollRoads,Malls
elevLimitIndicates the elevation limit when generating a route. Elevation unit is specified in feet or meters depending on the value of the distUnits query parameter being Miles or Kilometers respectively.
This restriction is available for the following datasets:

  1. Current
  2. PCM_NA

This restriction will be ignored if routing is deemed impractical with the limit, or a stop is located at an elevation higher than the limit.

The default is to not employ this restriction.

Example:

&elevLimit=5000            // feet for Miles
&elevLimit=1524            // meters for Kilometers
ferryDiscourageIndicates whether or not to discourage the use of ferries when creating the route. Possible values are boolean:

  • true
  • false

Default is false.

Example:

&ferryDiscourage=true
sideOfStreetAdherenceIndicates the level of strictness in avoiding the destination being on the opposite side of the street.

  1. Off
  2. Minimal
  3. Moderate
  4. Average
  5. Strict
  6. Adhere
  7. StronglyAdhere

Default is Off.

Example:

&sideOfStreetAdherence=Average

See also
    ALK.PCM.Model.SideOfStreetAdherenceLevel

governorSpeedLimitMaximum average road speed to use in route calculations that overrides all other road speeds when they are above this value.

Default is disabled and valid value is between 1 and 100 MPH (miles per hour). The value is in miles per hour regardless of the value of the distUnits query parameter.

Example:

&governorSpeedLimit=65            // miles per hour
regionThe data region in which the route is located. Possible values for the routePath, routeReports, or locations/reverse/batch requests are:

  1. EU
  2. NA
  3. OC
  4. SA

Default is NA.

Example:

&region=EU

See also
    ALK.Common.Model.DataRegion

datasetThe data region in which the route is located. Possible values for the routePath request are:

  1. Current
  2. PCM_EU
  3. PCM_OC
  4. PCM_SA
  5. PCM_GT (GeoTrac)
  6. PCM_AF
  7. PCM_AS
  8. PCM_ME
  9. PCM_NA
  10. PCM_WW
  11. PCM_JP
  12. PCM_NASL
  13. PCM_MX

Default is Current. If an unlicensed dataset is specified, the request will result in a forbidden request, i.e. a 403 HTTP Response.

Example:

&dataset=PCM_ME

See also
    ALK.PCM.Model.RegionalDataSet

avoidState
avoidCountry
favorState
favorCountry
tollroadswhat to do with tolls, use, avoid if possible, or avoid entirely
hazMatTypes
tunnelCategories
Returns
A JSON representation of the response. RouteMatrixResponseBody

◆ PostRouteMatrix()

The /route/matrix POST request generates and returns a matrix of time and distance from a list of origins and destinations.

REST METHOD: POST
REST URI:

/route/matrix?datase={dataset}


Parameters are of the form &qname={pname}, where qname is the URI query parameter name, and pname is the corresponding parameter name. The parameters are listed below by their pname.

Note: The parameters "originStops" and "destinationStops" are required in the request body.

Parameters
requestA JSON formatted object of ALK.PCM.Model.ServiceModels.RouteMatrixRequestBody.

Example:

{
  "Origins": [
    {"Address":{"StreetAddress":"416 Bear Creek Circle", "City":"Lamar", "State":"MS"},"Region": 4},
    {"Coords":{"Lon": "-96.80590855","Lat":"43.20095998"},"Region": 4},
    {"Coords":{"Lon": "-97.33458151","Lat":"28.88809049"},"Region": 4},
    {"Coords":{"Lon": "-96.33219593","Lat":"29.68571528"},"Region": 4},
    {"Coords":{"Lon": "-93.62391314","Lat":"29.71795389"},"Region": 4},
    {"Coords":{"Lon": "-87.17583265","Lat":"39.35209383"},"Region": 4},
    {"Coords":{"Lon": "-99.61128489","Lat":"30.63056908"},"Region": 4},
    {"Coords":{"Lon": "-92.99308188","Lat":"32.35399258"},"Region": 4},
    {"Coords":{"Lon": "-96.08128896","Lat":"40.90002876"},"Region": 4},
    {"Address":{"StreetAddress":"1820 Route 80", "Zip":"79072"},"Region": 4}
  ],
  "Destinations": [
    {"Coords":{"Lon": "-98.22538877","Lat":"37.79842125"},"Region": 4},
    {"Coords":{"Lon": "-85.53871496","Lat":"35.96796187"},"Region": 4},
    {"Coords":{"Lon": "-89.35305545","Lat":"36.77246018"},"Region": 4},
    {"Coords":{"Lon": "-88.4959995","Lat":"39.77010595"},"Region": 4},
    {"Coords":{"Lon": "-99.82375082","Lat":"35.34615549"},"Region": 4},
    {"Coords":{"Lon": "-104.2990388","Lat":"40.68677485"},"Region": 4},
    {"Coords":{"Lon": "-94.64133776","Lat":"43.9321519"},"Region": 4},
    {"Coords":{"Lon": "-90.09897635","Lat":"36.93118819"},"Region": 4},
    {"Coords":{"Lon": "-89.35275114","Lat":"34.56079357"},"Region": 4},
    {"Coords":{"Lon": "-101.9017667","Lat":"37.06672819"},"Region": 4}
  ],
  "Options":{
      "DistanceUnits": 0
  }
}
datasetThe data region in which the route is located. Possible values for the routePath request are:

  1. Current
  2. PCM_EU
  3. PCM_OC
  4. PCM_SA
  5. PCM_GT (GeoTrac)
  6. PCM_AF
  7. PCM_AS
  8. PCM_ME
  9. PCM_NA
  10. PCM_WW
  11. PCM_JP
  12. PCM_NASL
  13. PCM_MX

Default is Current. If an unlicensed dataset is specified, the request will result in a forbidden request, i.e. a 403 HTTP Response.

Example:

&dataset=PCM_ME

See also
    ALK.PCM.Model.RegionalDataSet

Returns
See ALK.PCM.Model.ServiceModels.RouteMatrixResponseBody.

Example:

{
    "Origins": [
        {
            "Address": {
                "StreetAddress": "416 Bear Creek Circle",
                "City": "Lamar",
                "State": "MS",
                "Zip": "38642",
                "County": "Benton",
                "Country": "United States",
                "SPLC": null,
                "CountryPostalFilter": 0,
                "AbbreviationFormat": 0,
                "StateName": "Mississippi",
                "StateAbbreviation": "MS",
                "CountryAbbreviation": "US"
            },
            "Coords": {
                "Lat": "34.930632",
                "Lon": "-89.331208"
            },
            "Region": 4,
            "Label": "",
            "PlaceName": "",
            "TimeZone": "CST",
            "Errors": [],
            "SpeedLimitInfo": null,
            "ConfidenceLevel": "Exact",
            "DistanceFromRoad": null,
            "CrossStreet": null
        },
        {
            "Address": {
                "StreetAddress": "28892 470 Avenue",
                "City": "Beresford",
                "State": "SD",
                "Zip": "57004",
                "County": "Lincoln",
                "Country": "United States",
                "SPLC": null,
                "CountryPostalFilter": 0,
                "AbbreviationFormat": 0,
                "StateName": "South Dakota",
                "StateAbbreviation": "SD",
                "CountryAbbreviation": "US"
            },
            "Coords": {
                "Lat": "43.200960",
                "Lon": "-96.805909"
            },
            "Region": 4,
            "Label": "",
            "PlaceName": "",
            "TimeZone": "CST",
            "Errors": [],
            "SpeedLimitInfo": null,
            "ConfidenceLevel": "Exact",
            "DistanceFromRoad": 0.002,
            "CrossStreet": null
        },
        {
            "Address": {
                "StreetAddress": "1260 Bluntzer Road",
                "City": "Goliad",
                "State": "TX",
                "Zip": "77963",
                "County": "Goliad",
                "Country": "United States",
                "SPLC": null,
                "CountryPostalFilter": 0,
                "AbbreviationFormat": 0,
                "StateName": "Texas",
                "State": "TX",
                "CountryAbbreviation": "US"
            },
            "Coords": {
                "Lat": "28.888090",
                "Lon": "-97.334582"
            },
            "Region": 4,
            "Label": "",
            "PlaceName": "",
            "TimeZone": "CST",
            "Errors": [],
            "SpeedLimitInfo": null,
            "ConfidenceLevel": "Exact",
            "DistanceFromRoad": 0.337,
            "CrossStreet": null
        },
        {
            "Address": {
                "StreetAddress": "",
                "City": "Cat Spring",
                "State": "TX",
                "Zip": "78933",
                "County": "Austin",
                "Country": "United States",
                "SPLC": null,
                "CountryPostalFilter": 0,
                "AbbreviationFormat": 0,
                "StateName": "Texas",
                "State": "TX",
                "CountryAbbreviation": "US"
            },
            "Coords": {
                "Lat": "29.685715",
                "Lon": "-96.332196"
            },
            "Region": 4,
            "Label": "",
            "PlaceName": "",
            "TimeZone": "CST",
            "Errors": [],
            "SpeedLimitInfo": null,
            "ConfidenceLevel": "Exact",
            "DistanceFromRoad": 0.132,
            "CrossStreet": null
        },
        {
            "Address": {
                "StreetAddress": "Phillips Oil Field Road",
                "City": "Cameron",
                "State": "LA",
                "Zip": "70631",
                "County": "Cameron",
                "Country": "United States",
                "SPLC": null,
                "CountryPostalFilter": 0,
                "AbbreviationFormat": 0,
                "StateName": "Louisiana",
                "StateAbbreviation": "LA",
                "CountryAbbreviation": "US"
            },
            "Coords": {
                "Lat": "29.717954",
                "Lon": "-93.623913"
            },
            "Region": 4,
            "Label": "",
            "PlaceName": "",
            "TimeZone": "CST",
            "Errors": [],
            "SpeedLimitInfo": null,
            "ConfidenceLevel": "Exact",
            "DistanceFromRoad": 2.431,
            "CrossStreet": null
        },
        {
            "Address": {
                "StreetAddress": "3586 West Co Rd 250 South ",
                "City": "Cory",
                "State": "IN",
                "Zip": "47846",
                "County": "Clay",
                "Country": "United States",
                "SPLC": null,
                "CountryPostalFilter": 0,
                "AbbreviationFormat": 0,
                "StateName": "Indiana",
                "StateAbbreviation": "IN",
                "CountryAbbreviation": "US"
            },
            "Coords": {
                "Lat": "39.352094",
                "Lon": "-87.175833"
            },
            "Region": 4,
            "Label": "",
            "PlaceName": "",
            "TimeZone": "EST",
            "Errors": [],
            "SpeedLimitInfo": null,
            "ConfidenceLevel": "Exact",
            "DistanceFromRoad": 0.005,
            "CrossStreet": null
        },
        {
            "Address": {
                "StreetAddress": "",
                "City": "Menard",
                "State": "TX",
                "Zip": "76859",
                "County": "Menard",
                "Country": "United States",
                "SPLC": null,
                "CountryPostalFilter": 0,
                "AbbreviationFormat": 0,
                "StateName": "Texas",
                "StateAbbreviation": "TX",
                "CountryAbbreviation": "US"
            },
            "Coords": {
                "Lat": "30.630569",
                "Lon": "-99.611285"
            },
            "Region": 4,
            "Label": "",
            "PlaceName": "",
            "TimeZone": "CST",
            "Errors": [],
            "SpeedLimitInfo": null,
            "ConfidenceLevel": "Exact",
            "DistanceFromRoad": 0.007,
            "CrossStreet": null
        },
        {
            "Address": {
                "StreetAddress": "25443 LA-507",
                "City": "Bienville",
                "State": "LA",
                "Zip": "71008",
                "County": "Bienville",
                "Country": "United States",
                "SPLC": null,
                "CountryPostalFilter": 0,
                "AbbreviationFormat": 0,
                "StateName": "Louisiana",
                "StateAbbreviation": "LA",
                "CountryAbbreviation": "US"
            },
            "Coords": {
                "Lat": "32.353993",
                "Lon": "-92.993082"
            },
            "Region": 4,
            "Label": "",
            "PlaceName": "",
            "TimeZone": "CST",
            "Errors": [],
            "SpeedLimitInfo": null,
            "ConfidenceLevel": "Exact",
            "DistanceFromRoad": 0.618,
            "CrossStreet": null
        },
        {
            "Address": {
                "StreetAddress": "10785 McKelvie Road",
                "City": "Weeping Water",
                "State": "NE",
                "Zip": "68463",
                "County": "Cass",
                "Country": "United States",
                "SPLC": null,
                "CountryPostalFilter": 0,
                "AbbreviationFormat": 0,
                "StateName": "Nebraska",
                "StateAbbreviation": "NE",
                "CountryAbbreviation": "US"
            },
            "Coords": {
                "Lat": "40.900029",
                "Lon": "-96.081289"
            },
            "Region": 4,
            "Label": "",
            "PlaceName": "",
            "TimeZone": "CST",
            "Errors": [],
            "SpeedLimitInfo": null,
            "ConfidenceLevel": "Exact",
            "DistanceFromRoad": 0.013,
            "CrossStreet": null
        },
        {
            "Address": {
                "StreetAddress": "1820 Route 80",
                "City": "Plainview",
                "State": "TX",
                "Zip": "79072",
                "County": "Hale",
                "Country": "United States",
                "SPLC": null,
                "CountryPostalFilter": 0,
                "AbbreviationFormat": 0,
                "StateName": "Texas",
                "StateAbbreviation": "TX",
                "CountryAbbreviation": "US"
            },
            "Coords": {
                "Lat": "34.204094",
                "Lon": "-101.773432"
            },
            "Region": 4,
            "Label": "",
            "PlaceName": "",
            "TimeZone": "CST",
            "Errors": [],
            "SpeedLimitInfo": null,
            "ConfidenceLevel": "Exact",
            "DistanceFromRoad": null,
            "CrossStreet": null
        }
    ],
    "Destinations": [
        {
            "Address": {
                "StreetAddress": "22150 South Peace Road",
                "City": "Arlington",
                "State": "KS",
                "Zip": "67514",
                "County": "Reno",
                "Country": "United States",
                "SPLC": null,
                "CountryPostalFilter": 0,
                "AbbreviationFormat": 0,
                "StateName": "Kansas",
                "StateAbbreviation": "KS",
                "CountryAbbreviation": "US"
            },
            "Coords": {
                "Lat": "37.798421",
                "Lon": "-98.225389"
            },
            "Region": 4,
            "Label": "",
            "PlaceName": "",
            "TimeZone": "CST",
            "Errors": [],
            "SpeedLimitInfo": null,
            "ConfidenceLevel": "Exact",
            "DistanceFromRoad": 0.182,
            "CrossStreet": null
        },
        {
            "Address": {
                "StreetAddress": "850 Jim Fancher Road",
                "City": "Sparta",
                "State": "TN",
                "Zip": "38583",
                "County": "White",
                "Country": "United States",
                "SPLC": null,
                "CountryPostalFilter": 0,
                "AbbreviationFormat": 0,
                "StateName": "Tennessee",
                "StateAbbreviation": "TN",
                "CountryAbbreviation": "US"
            },
            "Coords": {
                "Lat": "35.967962",
                "Lon": "-85.538715"
            },
            "Region": 4,
            "Label": "",
            "PlaceName": "",
            "TimeZone": "CST",
            "Errors": [],
            "SpeedLimitInfo": null,
            "ConfidenceLevel": "Exact",
            "DistanceFromRoad": 0.021,
            "CrossStreet": null
        },
        {
            "Address": {
                "StreetAddress": "MO-102",
                "City": "East Prairie",
                "State": "MO",
                "Zip": "63845",
                "County": "Mississippi",
                "Country": "United States",
                "SPLC": null,
                "CountryPostalFilter": 0,
                "AbbreviationFormat": 0,
                "StateName": "Missouri",
                "StateAbbreviation": "MO",
                "CountryAbbreviation": "US"
            },
            "Coords": {
                "Lat": "36.772460",
                "Lon": "-89.353055"
            },
            "Region": 4,
            "Label": "",
            "PlaceName": "",
            "TimeZone": "CST",
            "Errors": [],
            "SpeedLimitInfo": null,
            "ConfidenceLevel": "Exact",
            "DistanceFromRoad": 0.191,
            "CrossStreet": null
        },
        {
            "Address": {
                "StreetAddress": "1681 2500 North",
                "City": "Arthur",
                "State": "IL",
                "Zip": "61911",
                "County": "Douglas",
                "Country": "United States",
                "SPLC": null,
                "CountryPostalFilter": 0,
                "AbbreviationFormat": 0,
                "StateName": "Illinois",
                "StateAbbreviation": "IL",
                "CountryAbbreviation": "US"
            },
            "Coords": {
                "Lat": "39.770106",
                "Lon": "-88.496000"
            },
            "Region": 4,
            "Label": "",
            "PlaceName": "",
            "TimeZone": "CST",
            "Errors": [],
            "SpeedLimitInfo": null,
            "ConfidenceLevel": "Exact",
            "DistanceFromRoad": 0.102,
            "CrossStreet": null
        },
        {
            "Address": {
                "StreetAddress": "Bk 11",
                "City": "Sayre",
                "State": "OK",
                "Zip": "73662",
                "County": "Beckham",
                "Country": "United States",
                "SPLC": null,
                "CountryPostalFilter": 0,
                "AbbreviationFormat": 0,
                "StateName": "Oklahoma",
                "StateAbbreviation": "OK",
                "CountryAbbreviation": "US"
            },
            "Coords": {
                "Lat": "35.346155",
                "Lon": "-99.823751"
            },
            "Region": 4,
            "Label": "",
            "PlaceName": "",
            "TimeZone": "CST",
            "Errors": [],
            "SpeedLimitInfo": null,
            "ConfidenceLevel": "Exact",
            "DistanceFromRoad": 0.017,
            "CrossStreet": null
        },
        {
            "Address": {
                "StreetAddress": "Route 96",
                "City": "Briggsdale",
                "State": "CO",
                "Zip": "80611",
                "County": "Weld",
                "Country": "United States",
                "SPLC": null,
                "CountryPostalFilter": 0,
                "AbbreviationFormat": 0,
                "StateName": "Colorado",
                "StateAbbreviation": "CO",
                "CountryAbbreviation": "US"
            },
            "Coords": {
                "Lat": "40.686775",
                "Lon": "-104.299039"
            },
            "Region": 4,
            "Label": "",
            "PlaceName": "",
            "TimeZone": "MST",
            "Errors": [],
            "SpeedLimitInfo": null,
            "ConfidenceLevel": "Exact",
            "DistanceFromRoad": 0.246,
            "CrossStreet": null
        },
        {
            "Address": {
                "StreetAddress": "720th Avenue  (Route 15)",
                "City": "Saint James",
                "State": "MN",
                "Zip": "56081",
                "County": "Watonwan",
                "Country": "United States",
                "SPLC": null,
                "CountryPostalFilter": 0,
                "AbbreviationFormat": 0,
                "StateName": "Minnesota",
                "StateAbbreviation": "MN",
                "CountryAbbreviation": "US"
            },
            "Coords": {
                "Lat": "43.932152",
                "Lon": "-94.641338"
            },
            "Region": 4,
            "Label": "",
            "PlaceName": "",
            "TimeZone": "CST",
            "Errors": [],
            "SpeedLimitInfo": null,
            "ConfidenceLevel": "Exact",
            "DistanceFromRoad": 0.092,
            "CrossStreet": null
        },
        {
            "Address": {
                "StreetAddress": "Co Rd 284 ",
                "City": "Puxico",
                "State": "MO",
                "Zip": "63960",
                "County": "Stoddard",
                "Country": "United States",
                "SPLC": null,
                "CountryPostalFilter": 0,
                "AbbreviationFormat": 0,
                "StateName": "Missouri",
                "StateAbbreviation": "MO",
                "CountryAbbreviation": "US"
            },
            "Coords": {
                "Lat": "36.931188",
                "Lon": "-90.098976"
            },
            "Region": 4,
            "Label": "",
            "PlaceName": "",
            "TimeZone": "CST",
            "Errors": [],
            "SpeedLimitInfo": null,
            "ConfidenceLevel": "Exact",
            "DistanceFromRoad": 0.312,
            "CrossStreet": null
        },
        {
            "Address": {
                "StreetAddress": "",
                "City": "Potts Camp",
                "State": "MS",
                "Zip": "38659",
                "County": "Marshall",
                "Country": "United States",
                "SPLC": null,
                "CountryPostalFilter": 0,
                "AbbreviationFormat": 0,
                "StateName": "Mississippi",
                "StateAbbreviation": "MS",
                "CountryAbbreviation": "US"
            },
            "Coords": {
                "Lat": "34.560794",
                "Lon": "-89.352751"
            },
            "Region": 4,
            "Label": "",
            "PlaceName": "",
            "TimeZone": "CST",
            "Errors": [],
            "SpeedLimitInfo": null,
            "ConfidenceLevel": "Exact",
            "DistanceFromRoad": 0.118,
            "CrossStreet": null
        },
        {
            "Address": {
                "StreetAddress": "",
                "City": "Elkhart",
                "State": "KS",
                "Zip": "67950",
                "County": "Morton",
                "Country": "United States",
                "SPLC": null,
                "CountryPostalFilter": 0,
                "AbbreviationFormat": 0,
                "StateName": "Kansas",
                "StateAbbreviation": "KS",
                "CountryAbbreviation": "US"
            },
            "Coords": {
                "Lat": "37.066728",
                "Lon": "-101.901767"
            },
            "Region": 4,
            "Label": "",
            "PlaceName": "",
            "TimeZone": "CST",
            "Errors": [],
            "SpeedLimitInfo": null,
            "ConfidenceLevel": "Exact",
            "DistanceFromRoad": 0.076,
            "CrossStreet": null
        }
    ],
    "MatrixInfo": [
        [
            {
                "Success": true,
                "Errors": [],
                "Time": "11:58:22",
                "Distance": "682.72"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "05:30:21",
                "Distance": "279.74"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "03:31:40",
                "Distance": "193.42"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "07:37:08",
                "Distance": "437.47"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "11:25:08",
                "Distance": "655.99"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "20:45:46",
                "Distance": "1184.74"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "15:42:36",
                "Distance": "874.96"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "04:36:03",
                "Distance": "242.69"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "00:53:27",
                "Distance": "36.34"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "14:40:37",
                "Distance": "828.71"
            }
        ],
        [
            {
                "Success": true,
                "Errors": [],
                "Time": "08:31:04",
                "Distance": "487.68"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "16:54:25",
                "Distance": "982.82"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "12:24:25",
                "Distance": "735.95"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "10:58:51",
                "Distance": "634.37"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "12:48:36",
                "Distance": "748.95"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "10:23:09",
                "Distance": "572.95"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "02:35:16",
                "Distance": "145.44"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "12:34:26",
                "Distance": "722.35"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "15:45:46",
                "Distance": "922.79"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "11:56:34",
                "Distance": "677.40"
            }
        ],
        [
            {
                "Success": true,
                "Errors": [],
                "Time": "12:14:16",
                "Distance": "710.82"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "18:35:13",
                "Distance": "1058.47"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "15:21:28",
                "Distance": "882.34"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "19:26:56",
                "Distance": "1126.38"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "10:05:56",
                "Distance": "565.45"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "21:16:55",
                "Distance": "1150.90"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "20:47:38",
                "Distance": "1201.21"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "15:12:32",
                "Distance": "850.83"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "14:28:19",
                "Distance": "822.96"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "14:01:44",
                "Distance": "781.56"
            }
        ],
        [
            {
                "Success": true,
                "Errors": [],
                "Time": "11:41:52",
                "Distance": "667.73"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "16:40:44",
                "Distance": "961.60"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "13:38:49",
                "Distance": "756.95"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "17:44:16",
                "Distance": "1000.99"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "09:33:32",
                "Distance": "522.36"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "20:44:42",
                "Distance": "1107.81"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "20:15:14",
                "Distance": "1158.12"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "13:29:56",
                "Distance": "725.44"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "12:34:58",
                "Distance": "712.04"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "13:29:20",
                "Distance": "738.47"
            }
        ],
        [
            {
                "Success": true,
                "Errors": [],
                "Time": "13:24:36",
                "Distance": "773.55"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "14:23:52",
                "Distance": "814.01"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "12:21:18",
                "Distance": "708.35"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "16:26:45",
                "Distance": "952.39"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "11:39:54",
                "Distance": "654.00"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "22:51:21",
                "Distance": "1239.44"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "21:18:57",
                "Distance": "1208.15"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "13:14:06",
                "Distance": "684.68"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "10:17:52",
                "Distance": "564.45"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "15:35:45",
                "Distance": "870.10"
            }
        ],
        [
            {
                "Success": true,
                "Errors": [],
                "Time": "11:36:14",
                "Distance": "665.66"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "06:55:33",
                "Distance": "328.39"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "04:40:26",
                "Distance": "266.80"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "02:10:12",
                "Distance": "95.76"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "14:10:37",
                "Distance": "827.27"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "18:19:48",
                "Distance": "1043.99"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "11:39:36",
                "Distance": "649.90"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "05:51:18",
                "Distance": "323.66"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "08:24:07",
                "Distance": "475.23"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "15:32:02",
                "Distance": "887.52"
            }
        ],
        [
            {
                "Success": true,
                "Errors": [],
                "Time": "11:14:52",
                "Distance": "643.93"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "18:06:10",
                "Distance": "1022.08"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "14:52:37",
                "Distance": "845.95"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "18:58:04",
                "Distance": "1089.99"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "07:05:06",
                "Distance": "386.46"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "17:31:22",
                "Distance": "938.37"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "19:48:18",
                "Distance": "1134.31"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "14:43:44",
                "Distance": "814.44"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "13:59:27",
                "Distance": "786.57"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "10:16:26",
                "Distance": "569.03"
            }
        ],
        [
            {
                "Success": true,
                "Errors": [],
                "Time": "11:31:30",
                "Distance": "672.93"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "11:23:56",
                "Distance": "648.92"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "08:50:45",
                "Distance": "444.15"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "12:56:13",
                "Distance": "688.19"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "09:43:30",
                "Distance": "547.42"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "20:27:57",
                "Distance": "1164.72"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "18:58:19",
                "Distance": "1054.59"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "08:47:52",
                "Distance": "433.65"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "07:07:40",
                "Distance": "388.14"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "13:39:18",
                "Distance": "763.52"
            }
        ],
        [
            {
                "Success": true,
                "Errors": [],
                "Time": "05:52:04",
                "Distance": "325.31"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "14:16:55",
                "Distance": "820.06"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "09:46:48",
                "Distance": "573.19"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "08:47:38",
                "Distance": "476.80"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "09:58:58",
                "Distance": "575.92"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "08:19:40",
                "Distance": "468.35"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "05:09:50",
                "Distance": "286.47"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "09:56:49",
                "Distance": "559.59"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "13:08:09",
                "Distance": "760.02"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "09:17:34",
                "Distance": "515.04"
            }
        ],
        [
            {
                "Success": true,
                "Errors": [],
                "Time": "07:34:33",
                "Distance": "416.28"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "19:05:24",
                "Distance": "1101.89"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "15:24:43",
                "Distance": "867.15"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "16:52:30",
                "Distance": "992.81"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "03:47:02",
                "Distance": "219.98"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "11:21:50",
                "Distance": "595.40"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "17:33:36",
                "Distance": "983.68"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "14:45:25",
                "Distance": "828.55"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "14:58:37",
                "Distance": "866.38"
            },
            {
                "Success": true,
                "Errors": [],
                "Time": "04:06:46",
                "Distance": "226.06"
            }
        ]
    ]
}

◆ GetDerivedRoutePath()

RouteResponse GetDerivedRoutePath(List< double[]> routePings,
double offRouteMiles,
bool? hwyOnly,
ALK.PCM.Model.VehicleTypevehType,
ALK.PCM.Model.RoutingType? routing,
ClassOverrideType? classOvrdtype,
DistanceUnitsdistUnits,
bool tollAvoid,
bool? borders,
bool ovrdRestrict,
HazMatTypehazMat,
TunnelCategorytunnelCategory,
TruckStylevehProfile,
VehicleDimUnitstrkUnits,
string trkHeight,
string trkLength,
string trkWidth,
string trkWeight,
int? trkAxles,
bool trkLCV,
string estimatedTimeOpts,
bool useTraffic,
uint? elevLimit,
bool ferryDiscourage,
SideOfStreetAdherenceLevelsideOfStreetAdherence,
int? governorSpeedLimit,
DataRegionregion,
RegionalDataSet dataset,
string[] avoidState,
string[] avoidCountry,
string[] favorState,
string[] favorCountry,
TollRoadsType? tollroads,
DiagnosticsType?[] debug,
HazMatType[] hazMatTypes,
TunnelCategory[] tunnelCategories 
)

The derivedRoute/routePath GET request retrieves a list of reduce trip coordinates in GeoJson format based on a series of longitudes/latitude pings and off route mileages window.

REST METHOD: GET
REST URI:

/derivedRoute/routePath?routePings={routePings}&offRouteMiles={offRouteMiles}&hwyOnly={hwyOnly}
                               &vehType={vehType}&routeType={routing}&overrideClass={classOvrdtype}
                               &distUnits={distUnits}&avoidTolls={tollAvoid}&openBorders={borders}
                               &overrideRestrict={ovrdRestrict}&hazMat={hazMat}&tunnelCategory={tunnelCategory}
                               &vehProfile={vehProfile}&vehDimUnits={trkUnits}
                               &vehHeight={trkHeight}&vehLength={trkLength}&vehWidth={trkWidth}
                               &vehWeight={trkWeight}&axles={trkAxles}&LCV={trkLCV}
                               &estimatedTimeOpts={estimatedTimeOpts}&useTraffic={useTraffic}
                               &elevLimit={elevLimit}&ferryDiscourage={ferryDiscourage}
                               &sideOfStreetAdherence={sideOfStreetAdherence}
                               &governorSpeedLimit={governorSpeedLimit}&region={region}&dataset={dataset}


Parameters are of the form &qname={pname}, where qname is the URI query parameter name, and pname is the corresponding parameter name. The parameters are listed below by their pname.

Parameters
routePingsThe coordinates that make up the pings on the given route. Each routePing is a coordinate paire, which is specified as a comma separated pairs of floating point numbers, representing longitude and latitude respectively in the Web Mercator ESPG:3857 projection. The list of route pings is represented by a semi-colon separated sequence of coordinate pairs.

There must be at least two coordinate pairs.

Example:

&routePings=-76.12345,42.12345;-76.12312,42.12312;-76.12456,42.12456
offRouteMilesIndicates the number of miles to the route used in calculating the acceptable window for the pings.

Example:

&offRouteMiles=4
hwyOnlyIndicates whether to use highways only. Possible values are boolean:

  • true
  • false

Default is false.

Example:

&hwyOnly=true
vehTypeThe vehicle type. Possible values are:

  1. Truck
  2. LightTruck
  3. Auto

Default is Truck.

Example:

&vehType=LightTruck

See also
    ALK.PCM.Model.VehicleType

routingThe desired routing algorithm. Possible values are:

  1. Practical
  2. Shortest

Default is Practical.

Example:

&routing=Shortest
classOvrdtypeA comma-separated list of class overrides. Possible values are:

  1. None
  2. NationalNetwork
  3. FiftyThreeFoot

Default is none, i.e. empty list.

Example:

 &overrideClass=NationalNetwork,FiftyThreeFoot

See also
    ALK.Common.Model.ClassOverrideType

distUnitsDistance units that pertain to measurement arguments of this request. Possible values are:

  1. Miles
  2. Kilometers

Default is Miles.

Example:

&distUnits=Kilometers
tollAvoidIndicates whether or not to avoid tolls while routing. Possible values are boolean:

  • true
  • false

Default is false.

Example:

&avoidTolls=true
bordersIndicates whether borders are open for travel. Possible values are boolean:

  • true
  • false

Default is true.

Example:

&openBorders=false
ovrdRestrictIndicates whether or not to override truck restrictions. Possible values are boolean:

  • true
  • false

Default is false.

Example:

&overrideRestrict=true
hazMatIndicates the hazardous material type. Possible values are:

  1. None
  2. General
  3. Caustic
  4. Explosives
  5. Flammable
  6. Inhalants
  7. Radioactive

Default is None.

Example:

&hazMat=Radioactive

See also
    ALK.PCM.Model.HazMatType

tunnelCategory
vehProfileIndicates the vehicle profile which is a preset collection of dimensions and routing options. Possible values are:

  1. None
  2. TwentyEightDoubleTrailer
  3. FortyStraightTruck
  4. FortyEightSemiTrailer
  5. FiftyThreeSemiTrailer
  6. FullSizeVan
  7. TwentySixStraightTruck
  8. ConventionalSchoolBus
  9. SmallSchoolBus

Default is None which is equivalent to the 48 foot semi trailer profile. For Auto or light duty, use FullSizeVan.

Example:

&vehProfile=FullSizeVan

See also
    ALK.PCM.Model.TruckStyle

trkUnitsVehicle dimension units. Possible values are:

  1. English
  2. Metric

Default is English.

Example:

&vehDimUnits=Metric

See also
    ALK.Common.Model.VehicleDimUnits

trkHeightThe height of the truck in feet and inches (English) or meters (Metric) depending on the vehDimUnits query parameter. Feet and inches may be formatted with apostrophe and double quotes, i.e. feet'inches".

Maximum value is 13'6" or 4.1148 meters.

Default is 13'6" in all regions except Europe, which is 12'6".

Examples:

&vehHeight=13'6"  // feet and inches for English
&vehHeight=13.5   // feet for English
&vehHeight=4.11   // meters for Metric
trkLengthThe length of the truck in feet and inches (English) or meters (Metric) depending on the vehDimUnits query parameter. Feet and inches may be formatted with apostrophe and double quotes, i.e. feet'inches".

Maximum value is 53 feet or 16.1544 meters.

Default is 48 feet in all regions except Europe, which is 54"1'.

Examples:

&vehLength=13'6"  // feet and inches for English
&vehLength=13.5   // feet for English
&vehLength=4.11   // meters for Metric
trkWidthThe width of the truck in feet and inches (English) or meters (Metric) depending on the vehDimUnits query parameter. Feet and inches may be formatted with apostrophe and double quotes, i.e. feet'inches".

This value may be 96" and below, 102" and above or 98".

Default is 96" for all regions.

Examples:

&vehWidth=10'6"  // feet and inches for English
&vehWidth=10.5   // feet for English
&vehWidth=3.2    // meters for Metric
trkWeightThe weight of the truck in pounds (English) or kilograms (Metric) depending on the vehDimUnits query parameter.

Acceptable values can be up to 132,000 pounds or 59,874 kilos.
The default value is 80,000 pounds for all regions.

Examples:

&vehWeight=5000  // pounds for English
&vehWeight=2268  // kilograms for Metric
trkAxlesIndicates the number of axles on the vehicle. Acceptable values are 2 through 14.

Default is 5.

Example:

&axles=4
trkLCVIndicates whether the truck is a multi-trailer or longer combination vehicle. Possible values are boolean:

  • true
    The truck is a multi-trailer.
  • false
    The truck is a longer combination vehicle.

Default is false.

Example:

&LCV=true
estimatedTimeOptsEstimated time options affects routing only when roads have time based restrictions.
Format is:

( Depart | Arrive ) ( '|' ( SpecificDateTime | ( DayOfWeek ( '|' TimeOfDay )? ) ) ( '|' TimeZone )? )?

Default is none.

Examples:

&estimatedTimeOpts=Depart|Monday|18:30               // Depart given day of week and time of day.
&estimatedTimeOpts=Arrive|Monday|18:30|EDT           // Arrive given day of week and time of day in specific time zone.
&estimatedTimeOpts=Arrive|2014-03-04T08:15:30|Local  // Arrive at specific date/time, or Arrive or Depart to arrive.
&estimatedTimeOpts=Arrive                            // Arrive with system time.
&estimatedTimeOpts=Depart                            // Depart with system time.
useTrafficIndicates whether or not use traffic data. Possible values are boolean:

  • true
  • false

Default is false.

Example:

&useTraffic=true
elevLimitIndicates the elevation limit when generating a route. Elevation unit is specified in feet or meters depending on the value of the distUnits query parameter being Miles or Kilometers respectively.
This restriction is available for the following datasets:

  1. Current
  2. PCM_NA

This restriction will be ignored if routing is deemed impractical with the limit, or a stop is located at an elevation higher than the limit.

The default is to not employ this restriction.

Example:

&elevLimit=5000            // feet for Miles
&elevLimit=1524            // meters for Kilometers
ferryDiscourageIndicates whether or not to discourage the use of ferries when creating the route. Possible values are boolean:

  • true
  • false

Default is false.

Example:

&ferryDiscourage=true
sideOfStreetAdherenceIndicates the level of strictness in avoiding the destination being on the opposite side of the street.

  1. Off
  2. Minimal
  3. Moderate
  4. Average
  5. Strict
  6. Adhere
  7. StronglyAdhere

Default is Off.

Example:

&sideOfStreetAdherence=Average

See also
    ALK.PCM.Model.SideOfStreetAdherenceLevel

governorSpeedLimitMaximum average road speed to use in route calculations that overrides all other road speeds when they are above this value.

Default is disabled and valid value is between 1 and 100 MPH (miles per hour). The value is in miles per hour regardless of the value of the distUnits query parameter.

Example:

&governorSpeedLimit=65            // miles per hour
regionThe data region in which the route is located. Possible values for the routePath, routeReports, or locations/reverse/batch requests are:

  1. EU
  2. NA
  3. OC
  4. SA

Default is NA.

Example:

&region=EU

See also
    ALK.Common.Model.DataRegion

datasetThe data region in which the route is located. Possible values for the routePath request are:

  1. Current
  2. PCM_EU
  3. PCM_OC
  4. PCM_SA
  5. PCM_GT (GeoTrac)
  6. PCM_AF
  7. PCM_AS
  8. PCM_ME
  9. PCM_NA
  10. PCM_WW
  11. PCM_JP
  12. PCM_NASL
  13. PCM_MX

Default is Current. If an unlicensed dataset is specified, the request will result in a forbidden request, i.e. a 403 HTTP Response.

Example:

&dataset=PCM_ME

See also
    ALK.PCM.Model.RegionalDataSet

avoidState
avoidCountry
favorState
favorCountry
debug
hazMatTypes
tunnelCategories
tollroadswhat to do with tolls, use, avoid if possible, or avoid entirely
Returns
A GeoJSON formatted response. RouteResponse

◆ PostDerivedRoutePath()

RouteResponse PostDerivedRoutePath(ReduceTripRequestBody request,
RegionalDataSet dataset 
)

The /derivedRoute/routePath POST request retrieves a list of reduced trip coordinates in GeoJson format based on a series of longitudes/latitude pings and off route mileages window.

REST METHOD: GET
REST URI:

/derivedRoute/routePath?dataset={dataset}


Parameters are of the form &qname={pname}, where qname is the URI query parameter name, and pname is the corresponding parameter name. The parameters are listed below by their pname.

Parameters
requestJSON formatted object of type ALK.PCM.Model.ServiceModels.ReduceTripRequestBody.

Example:

{
    "RoutePings":[
        {
        "Lat":"33.714154",
        "Lon":"-118.309434"
        },
        {
        "Lat":"33.712212",
        "Lon":"-118.302115"
        },
        {
        "Lat":"33.709669",
        "Lon":"-118.296450"
        }
    ],
    "OffRouteMiles":0.2,
    "HighwayOnly":false,
    "ReportType":null,
    "Region":4,
    "RoutingOptions":{
        "AFSetIDs":null,
        "BordersOpen":true,
        "ClassOverrides":0,
        "DistanceUnits":0,
        "ElevLimit":null,
        "FerryDiscourage":false,
        "FuelRoute":false,
        "HazMatType":0,
        "HighwayOnly":false,
        "HoSOptions":null,
        "HubRouting":false,
        "OverrideRestrict":false,
        "RouteOptimization":0,
        "RoutingType":0,
        "TollDiscourage":false,
        "TruckCfg":{
	        "Axles":5,
	        "Height":"13'6\"",
	        "LCV":false,
	        "Length":"48'0"",
	        "Units":0,
	        "Weight":"80000",
	        "Width":"96""
        },
        "UseAvoidsAndFavors":false,
        "VehicleType":0
    },
    "ExtendedOptions":{
        "EstimatedTimeOptions":{
        "ETAETD":1,
        "DateOption":1,
        "DateAndTime":{
            "CalendarDate":"4/23/2014",
            "DayOfWeek":0,
            "TimeOfDay":"6:00 AM",
            "TimeZone":0
        }
        },
        "TruckStyle":0,
        "UseTraffic":true
    }
}
datasetThe data region in which the route is located. Possible values for the routePath request are:

  1. Current
  2. PCM_EU
  3. PCM_OC
  4. PCM_SA
  5. PCM_GT (GeoTrac)
  6. PCM_AF
  7. PCM_AS
  8. PCM_ME
  9. PCM_NA
  10. PCM_WW
  11. PCM_JP
  12. PCM_NASL
  13. PCM_MX

Default is Current. If an unlicensed dataset is specified, the request will result in a forbidden request, i.e. a 403 HTTP Response.

Example:

&dataset=PCM_ME

See also
    ALK.PCM.Model.RegionalDataSet

Returns
GeoJSON formatted object of type ALK.PCM.PortalService.Rest.RouteResponse.

Example:

{
    "type": "Feature",
    "geometry": {
        "type": "MultiLineString",
        "coordinates": [
            [
                [
                    -118.309434,
                    33.714154
                ],
                [
                    -118.30895,
                    33.714017
                ],
                [
                    -118.307977,
                    33.713744
                ],
                [
                    -118.307009,
                    33.71347
                ],
                [
                    -118.306045,
                    33.713216
                ],
                [
                    -118.305566,
                    33.713081
                ],
                [
                    -118.305495,
                    33.713057
                ],
                [
                    -118.305349,
                    33.712976
                ],
                [
                    -118.305143,
                    33.712807
                ],
                [
                    -118.30508,
                    33.712769
                ],
                [
                    -118.304701,
                    33.71257
                ],
                [
                    -118.30424,
                    33.712379
                ],
                [
                    -118.303322,
                    33.712004
                ],
                [
                    -118.302405,
                    33.711628
                ],
                [
                    -118.301859,
                    33.711404
                ],
                [
                    -118.30169,
                    33.711346
                ],
                [
                    -118.301465,
                    33.711298
                ],
                [
                    -118.300462,
                    33.711095
                ],
                [
                    -118.29946,
                    33.710892
                ],
                [
                    -118.299316,
                    33.710867
                ],
                [
                    -118.298483,
                    33.710784
                ],
                [
                    -118.29838,
                    33.710767
                ],
                [
                    -118.297944,
                    33.710692
                ],
                [
                    -118.297716,
                    33.710618
                ],
                [
                    -118.297512,
                    33.710509
                ],
                [
                    -118.29669,
                    33.709831
                ],
                [
                    -118.296474,
                    33.709649
                ],
                [
                    -118.29645,
                    33.709669
                ]
            ]
        ]
    },
    "TMinutes": 0,
    "TDistance": 0
}

◆ PostDerivedRouteReports()

ReportResponseBody PostDerivedRouteReports(ReduceTripRequestBody request,
RegionalDataSet dataset 
)

The /derivedRoute/routeReports POST request retrieves a report (typically Mileage or Detailed) for the reduced trip based upon a series of latitude/longitudes pings.

REST METHOD: POST
REST URI:

/derivedRoute/routeReports?dataset={dataset}


Parameters are of the form &qname={pname}, where qname is the URI query parameter name, and pname is the corresponding parameter name. The parameters are listed below by their pname.

Parameters
requestJSON formatted object of type ALK.PCM.Model.ServiceModels.ReduceTripRequestBody.

Example:

{
    "RoutePings":[
        {
        "Lat":"33.714154",
        "Lon":"-118.309434"
        },
        {
        "Lat":"33.712212",
        "Lon":"-118.302115"
        },
        {
        "Lat":"33.709669",
        "Lon":"-118.296450"
        }
    ],
    "OffRouteMiles":0.2,
    "HighwayOnly":false,
    "ReportType":{"__type":"MileageReportType:http:\/\/pcmiler.alk.com\/APIs\/v1.0","THoursWithSeconds":false},
    "Region":4,
    "RoutingOptions":{
        "AFSetIDs":null,
        "BordersOpen":true,
        "ClassOverrides":0,
        "DistanceUnits":0,
        "ElevLimit":null,
        "FerryDiscourage":false,
        "FuelRoute":false,
        "HazMatType":0,
        "HighwayOnly":false,
        "HoSOptions":null,
        "HubRouting":false,
        "OverrideRestrict":false,
        "RouteOptimization":0,
        "RoutingType":0,
        "TollDiscourage":false,
        "TruckCfg":{
	        "Axles":5,
	        "Height":"13'6\"",
	        "LCV":false,
	        "Length":"48'0"",
	        "Units":0,
	        "Weight":"80000",
	        "Width":"96""
        },
        "UseAvoidsAndFavors":false,
        "VehicleType":0
    },
    "ExtendedOptions":{
        "EstimatedTimeOptions":{
        "ETAETD":1,
        "DateOption":1,
        "DateAndTime":{
            "CalendarDate":"4/23/2014",
            "DayOfWeek":0,
            "TimeOfDay":"6:00 AM",
            "TimeZone":0
        }
        },
        "TruckStyle":0,
        "UseTraffic":true
    }
}
datasetThe data region in which the route is located. Possible values for the routePath request are:

  1. Current
  2. PCM_EU
  3. PCM_OC
  4. PCM_SA
  5. PCM_GT (GeoTrac)
  6. PCM_AF
  7. PCM_AS
  8. PCM_ME
  9. PCM_NA
  10. PCM_WW
  11. PCM_JP
  12. PCM_NASL
  13. PCM_MX

Default is Current. If an unlicensed dataset is specified, the request will result in a forbidden request, i.e. a 403 HTTP Response.

Example:

&dataset=PCM_ME

See also
    ALK.PCM.Model.RegionalDataSet

Returns
JSON formatted object of type ALK.PCM.Model.ServiceModels.ReportResponseBody.

Example:

{
    "Reports": [
        {
            "__type": "MileageReport:http://pcmiler.alk.com/APIs/v1.0",
            "RouteID": null,
            "ReportLines": [
                {
                    "Stop": {
                        "Address": {
                            "StreetAddress": "1413 West Paseo Del Mar",
                            "City": "San Pedro",
                            "State": "CA",
                            "Zip": "90731",
                            "County": "Los Angeles",
                            "Country": "",
                            "SPLC": null,
                            "CountryPostalFilter": 0,
                            "AbbreviationFormat": 0,
                            "StateName": "California",
                            "StateAbbreviation": "CA",
                            "CountryAbbreviation": "US"
                        },
                        "Coords": {
                            "Lat": "33.714154",
                            "Lon": "-118.309434"
                        },
                        "Region": 4,
                        "Label": "",
                        "PlaceName": "",
                        "TimeZone": null,
                        "Errors": null,
                        "SpeedLimitInfo": null,
                        "ConfidenceLevel": null,
                        "DistanceFromRoad": null,
                        "CrossStreet": null
                    },
                    "LMiles": "0.000",
                    "TMiles": "0.000",
                    "LCostMile": "0.00",
                    "TCostMile": "0.00",
                    "LHours": "0:00",
                    "THours": "0:00",
                    "LTolls": "0.00",
                    "TTolls": "0.00",
                    "LEstghg": "0.0",
                    "TEstghg": "0.0",
                    "EtaEtd": "4/23/2014 6:00 AM"
                },
                {
                    "Stop": {
                        "Address": {
                            "StreetAddress": "854 West Paseo Del Mar",
                            "City": "San Pedro",
                            "State": "CA",
                            "Zip": "90731",
                            "County": "Los Angeles",
                            "Country": "",
                            "SPLC": null,
                            "CountryPostalFilter": 0,
                            "AbbreviationFormat": 0,
                            "StateName": "California",
                            "StateAbbreviation": "CA",
                            "CountryAbbreviation": "US"
                        },
                        "Coords": {
                            "Lat": "33.709669",
                            "Lon": "-118.296450"
                        },
                        "Region": 4,
                        "Label": "",
                        "PlaceName": "",
                        "TimeZone": null,
                        "Errors": null,
                        "SpeedLimitInfo": null,
                        "ConfidenceLevel": null,
                        "DistanceFromRoad": null,
                        "CrossStreet": null
                    },
                    "LMiles": "0.822",
                    "TMiles": "0.822",
                    "LCostMile": "1.77",
                    "TCostMile": "1.77",
                    "LHours": "0:02",
                    "THours": "0:02",
                    "LTolls": "0.00",
                    "TTolls": "0.00",
                    "LEstghg": "2.8",
                    "TEstghg": "2.8",
                    "EtaEtd": "4/23/2014 6:01 AM"
                }
            ],
            "TrafficDataUsed": false
        }
    ]
}

◆ GetRouteSyncMessage()

Stream GetRouteSyncMessage(string routeId,
OutOfRouteCompliance compliance,
double? distance,
bool? isFirstLegManaged,
List< double[]> stops,
ALK.PCM.Model.VehicleTypevehType,
ALK.PCM.Model.RoutingType? routing,
bool hwyOnly,
bool useAvoidFavors,
ClassOverrideType? classOvrdtype,
DistanceUnitsdistUnits,
bool tollAvoid,
bool? borders,
bool ovrdRestrict,
HazMatTypehazMat,
TunnelCategorytunnelCategory,
RouteOptimizeTyperouteOpt,
bool hubRouting,
TruckStylevehProfile,
VehicleDimUnitstrkUnits,
string trkHeight,
string trkLength,
string trkWidth,
string trkWeight,
int? trkAxles,
bool trkLCV,
string estimatedTimeOpts,
bool useTraffic,
int[] afSetIDs,
string[] afSetNames,
bool createRouteSyncFromPoints,
uint? elevLimit,
RouteSyncMessageVersion messageVersion,
bool ferryDiscourage,
bool hosEnabled,
double? hosRemDriveTimeUntilBreak,
double? hosRemDriveTime,
double? hosRemOnDutyTime,
HoSScheduleType hosRuleType,
double? hosRemCycleDutyTime,
SideOfStreetAdherenceLevelsideOfStreetAdherence,
int? governorSpeedLimit,
bool useSites,
bool? maintainHeading,
DataRegionregion,
ALK.PCM.Model.DataVersiondataVersion,
string[] avoidState,
string[] avoidCountry,
string[] favorState,
string[] favorCountry,
TollRoadsType? tollroads,
bool? removeWayPoints,
HazMatType[] hazMatTypes,
TunnelCategory[] tunnelCategories 
)

The /RouteSync GET request retrieves a route sync message in the form of a byte array.

REST METHOD: GET
REST URI:

/RouteSync?routeid={routeId}&compliance={compliance}&distance={distance}
                  &isFirstLegManaged={isFirstLegManaged}&stops={stops}&vehType={vehType}
                  &routeType={routing}&hwyOnly={hwyOnly}&avoidFavors={useAvoidFavors}
                  &overrideClass={classOvrdtype}&distUnits={distUnits}&avoidTolls={tollAvoid}
                  &openBorders={borders}&overrideRestrict={ovrdRestrict}&hazMat={hazMat}&tunnelCategory={tunnelCategory}
                  &routeOpt={routeOpt}&hubRouting={hubRouting}&vehProfile={vehProfile}&vehDimUnits={trkUnits}
                  &vehHeight={trkHeight}&vehLength={trkLength}&vehWidth={trkWidth}
                  &vehWeight={trkWeight}&axles={trkAxles}&LCV={trkLCV}
                  &estimatedTimeOpts={estimatedTimeOpts}&useTraffic={useTraffic}
                  &createRouteSyncFromPoints={createRouteSyncFromPoints}
                  &afSetIDs={afSetIDs}&afSetNames={afSetNames}&elevLimit={elevLimit}
                  &messageVersion={messageVersion}&ferryDiscourage={ferryDiscourage}
                  &hosEnabled={hosEnabled}&hosRemDriveTimeUntilBreak={hosRemDriveTimeUntilBreak}
                  &hosRemDriveTime={hosRemDriveTime}&hosRemOnDutyTime={hosRemOnDutyTime}
                  &hosRuleType={hosRuleType}&hosRemCycleDutyTime={hosRemCycleDutyTime}
                  &sideOfStreetAdherence={sideOfStreetAdherence}&governorSpeedLimit={governorSpeedLimit}
                  &useSites={useSites}&region={region}&dataversion={dataVersion}


Parameters are of the form &qname={pname}, where qname is the URI query parameter name, and pname is the corresponding parameter name. The parameters are listed below by their pname.

Parameters
routeIdIndicates the id of the route for the purposes of generating a report. The format is an integer.

The default value is none.

Example:

&routeId=23
complianceSpecifies the RouteSync out of route compliance level. Possible values are:

  1. Strict
  2. Moderate
  3. None

Default is Strict.

Example:

&compliance=Moderate

See also
    ALK.PCM.Model.OutOfRouteCompliance

distanceIndicates the maximum allowable out of route distance. This value is specified according to the distUnits query parameter. The format for this value is a floating point number.

The default is 0.2 miles, (0.321869) kilometers. Example:

&distance=54.43
isFirstLegManagedIndicates whether or not the first leg of the route is managed. Possible values are boolean:

  • true
  • false

Default is true.

Example:

&avoidFavors=true
stopsThe coordinates that make up the stops of the route. Each stop is specified as a comma separated pairs of floating point numbers, representing longitude and latitude respectively in the Web Mercator ESPG:3857 projection. The list of stops is represented by a semi-colon separated sequence of stops.

There must be at least two coordinate pairs.

Example:

&stops=-76.12345,42.12345;-76.12312,42.12312;-76.12456,42.12456
vehTypeThe vehicle type. Possible values are:

  1. Truck
  2. LightTruck
  3. Auto

Default is Truck.

Example:

&vehType=LightTruck

See also
    ALK.PCM.Model.VehicleType

routingThe desired routing algorithm. Possible values are:

  1. Practical
  2. Shortest

Default is Practical.

Example:

&routing=Shortest
hwyOnlyIndicates whether to use highways only. Possible values are boolean:

  • true
  • false

Default is false.

Example:

&hwyOnly=true
useAvoidFavorsIndicates whether or not to use avoids and favors while routing. Possible values are boolean:

  • true
  • false

Default is false.

Example:

&avoidFavors=true
classOvrdtypeA comma-separated list of class overrides. Possible values are:

  1. None
  2. NationalNetwork
  3. FiftyThreeFoot

Default is none, i.e. empty list.

Example:

 &overrideClass=NationalNetwork,FiftyThreeFoot

See also
    ALK.Common.Model.ClassOverrideType

distUnitsDistance units that pertain to measurement arguments of this request. Possible values are:

  1. Miles
  2. Kilometers

Default is Miles.

Example:

&distUnits=Kilometers
tollAvoidIndicates whether or not to avoid tolls while routing. Possible values are boolean:

  • true
  • false

Default is false.

Example:

&avoidTolls=true
bordersIndicates whether borders are open for travel. Possible values are boolean:

  • true
  • false

Default is true.

Example:

&openBorders=false
ovrdRestrictIndicates whether or not to override truck restrictions. Possible values are boolean:

  • true
  • false

Default is false.

Example:

&overrideRestrict=true
hazMatIndicates the hazardous material type. Possible values are:

  1. None
  2. General
  3. Caustic
  4. Explosives
  5. Flammable
  6. Inhalants
  7. Radioactive

Default is None.

Example:

&hazMat=Radioactive

See also
    ALK.PCM.Model.HazMatType

tunnelCategory
routeOptIndicates the method by which to optimize route stops. Possible values are:

  1. None
    Indicates to not use any stop optimization.
  2. ThruAll
    Indicates that all of the input stops should be resequenced for the most optimal sequence.
  3. DestinationFixed
    Indicates that the destination remain fixed, but all other input stops should be resequenced for the most optimal sequence.

Default is None.

Example:

&routeOpt=ThruAll

See also
    ALK.PCM.Model.RouteOptimizeType

hubRoutingIndicates whether or not to enable hub routing. Possible values are boolean:

  • true
  • false

Default is false.

Example:

&hubRouting=true
vehProfileIndicates the vehicle profile which is a preset collection of dimensions and routing options. Possible values are:

  1. None
  2. TwentyEightDoubleTrailer
  3. FortyStraightTruck
  4. FortyEightSemiTrailer
  5. FiftyThreeSemiTrailer
  6. FullSizeVan
  7. TwentySixStraightTruck
  8. ConventionalSchoolBus
  9. SmallSchoolBus

Default is None which is equivalent to the 48 foot semi trailer profile. For Auto or light duty, use FullSizeVan.

Example:

&vehProfile=FullSizeVan

See also
    ALK.PCM.Model.TruckStyle

trkUnitsVehicle dimension units. Possible values are:

  1. English
  2. Metric

Default is English.

Example:

&vehDimUnits=Metric

See also
    ALK.Common.Model.VehicleDimUnits

trkHeightThe height of the truck in feet and inches (English) or meters (Metric) depending on the vehDimUnits query parameter. Feet and inches may be formatted with apostrophe and double quotes, i.e. feet'inches".

Maximum value is 13'6" or 4.1148 meters.

Default is 13'6" in all regions except Europe, which is 12'6".

Examples:

&vehHeight=13'6"  // feet and inches for English
&vehHeight=13.5   // feet for English
&vehHeight=4.11   // meters for Metric
trkLengthThe length of the truck in feet and inches (English) or meters (Metric) depending on the vehDimUnits query parameter. Feet and inches may be formatted with apostrophe and double quotes, i.e. feet'inches".

Maximum value is 53 feet or 16.1544 meters.

Default is 48 feet in all regions except Europe, which is 54"1'.

Examples:

&vehLength=13'6"  // feet and inches for English
&vehLength=13.5   // feet for English
&vehLength=4.11   // meters for Metric
trkWidthThe width of the truck in feet and inches (English) or meters (Metric) depending on the vehDimUnits query parameter. Feet and inches may be formatted with apostrophe and double quotes, i.e. feet'inches".

This value may be 96" and below, 102" and above or 98".

Default is 96" for all regions.

Examples:

&vehWidth=10'6"  // feet and inches for English
&vehWidth=10.5   // feet for English
&vehWidth=3.2    // meters for Metric
trkWeightThe weight of the truck in pounds (English) or kilograms (Metric) depending on the vehDimUnits query parameter.

Acceptable values can be up to 132,000 pounds or 59,874 kilos.
The default value is 80,000 pounds for all regions.

Examples:

&vehWeight=5000  // pounds for English
&vehWeight=2268  // kilograms for Metric
trkAxlesIndicates the number of axles on the vehicle. Acceptable values are 2 through 14.

Default is 5.

Example:

&axles=4
trkLCV
estimatedTimeOptsEstimated time options affects routing only when roads have time based restrictions.
Format is:

( Depart | Arrive ) ( '|' ( SpecificDateTime | ( DayOfWeek ( '|' TimeOfDay )? ) ) ( '|' TimeZone )? )?

Default is none.

Examples:

&estimatedTimeOpts=Depart|Monday|18:30               // Depart given day of week and time of day.
&estimatedTimeOpts=Arrive|Monday|18:30|EDT           // Arrive given day of week and time of day in specific time zone.
&estimatedTimeOpts=Arrive|2014-03-04T08:15:30|Local  // Arrive at specific date/time, or Arrive or Depart to arrive.
&estimatedTimeOpts=Arrive                            // Arrive with system time.
&estimatedTimeOpts=Depart                            // Depart with system time.
useTrafficIndicates whether or not use traffic data. Possible values are boolean:

  • true
  • false

Default is false.

Example:

&useTraffic=true
afSetIDsApply the avoid/favor sets to the route. The format is comma separated IDs. The IDs are integers.

Default is none, i.e. empty list.

Examples:

&afSetIDs=                  // Is this valid?
&afSetIDs=2234
&afSetIDs=2234,34223,34323
afSetNamesApply the avoid/favor sets to the route. The format is comma separated names.

Default is none, i.e. empty list.

Examples:

&afSetNames=                  // Is this valid?
&afSetNames=Highways
&afSetNames=Highways,TollRoads,Malls
createRouteSyncFromPointsApply the avoid/favor sets to the route. The format is comma separated names.

Default is none, i.e. empty list.

Examples:

&afSetNames=                  // Is this valid?
&afSetNames=Highways
&afSetNames=Highways,TollRoads,Malls
elevLimitIndicates the elevation limit when generating a route. Elevation unit is specified in feet or meters depending on the value of the distUnits query parameter being Miles or Kilometers respectively.
This restriction is available for the following datasets:

  1. Current
  2. PCM_NA

This restriction will be ignored if routing is deemed impractical with the limit, or a stop is located at an elevation higher than the limit.

The default is to not employ this restriction.

Example:

&elevLimit=5000            // feet for Miles
&elevLimit=1524            // meters for Kilometers
messageVersionIndicates which version of the route sync message format to use. Possible values are:

  1. Default
  2. V3

Example:

&messageVersion=V3

See also
    ALK.PCM.Model.RouteSyncMessageVersion

ferryDiscourageIndicates whether or not to discourage the use of ferries when creating the route. Possible values are boolean:

  • true
  • false

Default is false.

Example:

&ferryDiscourage=true
hosEnabledEnables insertion of "Hours Of Service" stops into the route. Possible values are boolean:

  • true
  • false

Default is false.

Example:

&hosEnabled=true
hosRemDriveTimeUntilBreakThe available driving hours at origin before the driver needs to take a short rest break.

The default value is 8 hours.

Example:

&hosRemDriveTimeUntilBreak=4
hosRemDriveTimeThe available driving hours at origin until the end of work day.

The default value is 11 hours in US.

Example:

&hosRemDriveTime=4
hosRemOnDutyTimeThe available On-Duty hours available at origin until the end of work day.

The default value is 14 hours.

Example:

&hosRemOnDutyTime=4
hosRuleTypeThe "Hours of Service" rule to use. Possible values are:

  1. USFed607LH
    Use US Federal Long Haul 60/7 rule.
  2. USFed708LH
    Use US Federal Long Haul 70/8 rule.
  3. CanadaCycle1
    Use Canadian Cycle 1.
  4. CanadaCycle2
    Use Canadian Cycle 2.
  5. California808
    Use California 80/8 rule.
  6. Texas707
    Use Texas 70/7 rule.
  7. USShortHaul
    Use US Short Haul Exemption.
  8. Europe
    Use European 48 hour rule.
  9. Unknown/tt>
    Unknown or uninitialized schedule type

Specification is required when hosEnabled=true and hosRemCycleDutyTime is specified.

Example:

&hosRuleType=USFed708H

See also
    ALK.Common.Model.HoSScheduleType

hosRemCycleDutyTimeThe available Cycle time duty hours at origin until Cycle reset.

There is no default value for this.

Example:

&hosRemCycleDutyTime=4
sideOfStreetAdherenceIndicates the level of strictness in avoiding the destination being on the opposite side of the street.

  1. Off
  2. Minimal
  3. Moderate
  4. Average
  5. Strict
  6. Adhere
  7. StronglyAdhere

Default is Off.

Example:

&sideOfStreetAdherence=Average

See also
    ALK.PCM.Model.SideOfStreetAdherenceLevel

governorSpeedLimitMaximum average road speed to use in route calculations that overrides all other road speeds when they are above this value.

Default is disabled and valid value is between 1 and 100 MPH (miles per hour). The value is in miles per hour regardless of the value of the distUnits query parameter.

Example:

&governorSpeedLimit=65            // miles per hour
useSitesA boolean parameter indicating whether or not the route stops are on sites and to accordingly consider site gates. Possible values are boolean:

  • true
  • false

Default is false.

Example:

&useSites=true
maintainHeadingIndicates whether or not to maintain heading at intermediate stops by avoid u-turns and instead leaving the stop in the same direction it entered it. Possible values are boolean:

  • true
  • false

Default is false except for school bus vehicle profiles where this option is true by default when unsupplied.

Example:

&maintainHeading=true
regionThe data region in which the route is located. Possible values are:

  1. Unknown - Africa
  2. AF - Africa
  3. AS - Asia
  4. EU - Europe
  5. NA - North America
  6. OC - Oceania; Australia
  7. SA - South America
  8. ME - Middle East

Default is NA (North America).

Example:

&region=EU

See also
    ALK.Common.Model.DataRegion

dataVersionIndicates the data version against which this request should be performed. Possible values are:

  • Current
  • PCM_EU
  • PCM_OC
  • PCM_SA
  • PCM_GT (GeoTrac)
  • PCM_AF
  • PCM_AS
  • PCM_ME
  • PCM_NA
  • PCM_WW
  • PCM_JP
  • PCM_NASL
  • PCM_MX
  • PCM18 through PCM34

Default is Current.

Example:

&dataVersion=PCM_SA

See also
    ALK.PCM.Model.DataVersion

avoidState
avoidCountry
favorState
favorCountry
tollroadswhat to do with tolls, use, avoid if possible, or avoid entirely
removeWayPointsIndicates whether way points should remove from the created RouteSync route. Will only be used if createRouteSyncFromPoints = false
hazMatTypes
tunnelCategories
Returns
A byte array containing the RouteSync blob.

◆ PostRouteSyncMessage()

Stream PostRouteSyncMessage(CreateRouteSyncMsgRequestBody request,
ALK.PCM.Model.DataVersiondataVersion 
)

The /RouteSync POST request takes a route and creates a binary route sync message blob containing the info to send to the CoPilot device.

REST METHOD: POST
REST URI:

/RouteSync?dataVersion={dataVersion}


Parameters are of the form &qname={pname}, where qname is the URI query parameter name, and pname is the corresponding parameter name. The parameters are listed below by their pname.

Parameters
requestJSON formatted object of type ALK.PCM.Model.ServiceModels.CreateRouteSyncMsgRequestBody.

Example:

{
  "request": {
    "Compliance": 1,
    "OutOfRouteDistance": null,
    "IsFirstLegManaged": null,
    "ManagedRoute": {
      "RouteId": "PostRouteSyncExample",
      "Stops": [
      {
        "Coords": {
          "Lon": "-118.309434",
          "Lat": "33.714154"
        },
        "IsViaPoint": false
      },
     {
        "Coords": {
          "Lon": "-118.316631",
          "Lat": "33.721061"
        }
      }
      ],
      "Options": null,
      "FuelOptions": null,
      "ExtendedOptions": null
    },
    "CreateRouteSyncFromPoints": false
  }
}
dataVersionIndicates the data version against which this request should be performed. Possible values are:

  • Current
  • PCM_EU
  • PCM_OC
  • PCM_SA
  • PCM_GT (GeoTrac)
  • PCM_AF
  • PCM_AS
  • PCM_ME
  • PCM_NA
  • PCM_WW
  • PCM_JP
  • PCM_NASL
  • PCM_MX
  • PCM18 through PCM34

Default is Current.

Example:

&dataVersion=PCM_SA

See also
    ALK.PCM.Model.DataVersion

Returns
A byte stream containing the binary RouteSync blob.

◆ WeatherAlerts()

List<WeatherAlertEvent> WeatherAlerts(double[] corner1,
double[] corner2,
double[] point,
List< double[]> route,
WeatherAlertUrgencyurgency,
WeatherAlertSeverityseverity,
WeatherAlertCertaintycertainty,
string[] eventNames,
string startTime,
string endTime 
)

The /WeatherAlerts GET request retrieves weather alerts for a give map view port.

REST METHOD: GET
REST URI:

/WeatherAlerts?pt1={corner1}&pt2={corner2}&point={point}&route={route}&urgency={urgency}
                    &severity={severity}&certainty={certainty}&eventNames={eventNames}
                    &startTime={startTime}&endTime={endTime}


Parameters are of the form &qname={pname}, where qname is the URI query parameter name, and pname is the corresponding parameter name. The parameters are listed below by their pname.

Parameters
corner1This parameter contains geographic coordinates used to be the map view port bounding box top left corner.The coordinates are represented by a comma separated pair of floating point numbers representing longitude and latitude respectively in the Web Mercator ESPG:3857 projection.

There must be at least two numbers.

Example:

&pt1=-76.12345,42.12345
corner2This parameter contains geographic coordinates used to be the map view port bounding box bottom right corner.The coordinates are represented by a comma separated pair of floating point numbers representing longitude and latitude respectively in the Web Mercator ESPG:3857 projection.

There must be at least two numbers.

Example:

&pt2=-76.12345,42.12345
pointThis parameter contains geographic coordinates used to specify a single point.The coordinates are represented by a comma separated pair of floating point numbers representing longitude and latitude respectively in the Web Mercator ESPG:3857 projection.

There must be at least two numbers.

Example:

&point=-76.12345,42.12345
routeThe list of coordinates that make up the path of the route. Each point is specified as a comma separated pairs of floating point numbers, representing longitude and latitude respectively in the Web Mercator ESPG:3857 projection. The list of points is represented by a semi-colon separated sequence of coordinate pairs.

There must be at least two coordinate pairs.

Example:

&route=-76.12345,42.12345;-76.12312,42.12312;-76.12456,42.12456
urgencyIndicates to retrieve weather alerts with an urgency attribute matching the listed values. Format is a comma-separated list of the following values:

  1. Immediate
    Responsive action should be taken immediately.
  2. Expected
    Responsive action should be taken soon.
  3. Future
    Responsive action should be taken in the near future.
  4. Past
    Responsive action is no longer required.
  5. Unknown
    Urgency is unknown.

Default is none. i.e. empty list, which means none will be matched.

Example:

&urgency=Immediate,Expected,Future
&urgency=0,1,2

See also
    ALK.PCM.Model.WeatherAlertUrgency

severityIndicates to retrieve weather alerts with an urgency attribute matching the listed values. Format is a comma-separated list of the following values:

  1. Extreme
    Extraordinary threat to life or property.
  2. Severe
    Significant threat to life or property.
  3. Moderate
    Possible threat to life or property.
  4. Minor
    Minimal threat to life or property.
  5. Unknown
    Severity is unknown.

Default is none. i.e. empty list, which means none will be matched.

Example:

&severity=Extreme,Severe,Moderate
&severity=0,1,2

See also
    ALK.PCM.Model.WeatherAlertSeverity

certaintyIndicates to retrieve weather alerts with an certainty attribute matching the listed values. Format is a comma-separated list of the following values:

  1. Observed
    Determined to have occurred or to be ongoing.
  2. Likely
    Possibility is greater than 50% to occur.
  3. Possible
    Is possible, but not likely to occur.
  4. Unlikely
    Is not expected to occur.
  5. Unknown
    Certainty is unknown.

Default is none. i.e. empty list, which means none will be matched.

Example:

&certainty=Observed,Likely,Possible
&certainty=0,1,2
eventNamesLists the event names to match from the weather alerts when generating a report. The format is a list of strings separated by commas.

Default is none, i.e. empty list, which means all will be matched.

Examples:

&eventNames=Tornado%20Warning,High%20winds
startTimeIndicates the start Date/Time string to be applied for the request.

The format for this value is one of the following:

  • ISO8601 ("2015-08-29T13:45:30-07:00")
  • RFC1123 ("Sat, 29 Aug 2015 20:45:30 GMT")

Examples:

&startTime=2015-08-29T13:45:30-07:00
&startTime=Sat,%2029%20Aug%202015%2020:45:30%20GMT
endTimeIndicates the end Date/Time string to be applied for the request.

The format for this value is one of the following:

  1. ISO8601 ("2015-08-29T13:45:30-07:00")
  2. RFC1123 ("Sat, 29 Aug 2015 20:45:30 GMT")

Examples:

&startTime=2015-08-29T13:45:30-07:00
&startTime=Sat,%2029%20Aug%202015%2020:45:30%20GMT
Returns
A JSON formatted list of Weather Alert Events. WeatherAlertEvent

◆ GetWeatherAlertsPoints()

List<List<WeatherAlertEvent> > GetWeatherAlertsPoints(List< double[]> points,
WeatherAlertUrgencyurgency,
WeatherAlertSeverityseverity,
WeatherAlertCertaintycertainty,
string[] eventNames,
string startTime,
string endTime 
)

The /WeatherAlerts/Batch GET request retrieves weather alerts for a set of points.

REST METHOD: GET
REST URI:

/WeatherAlerts/Batch?points={points}&urgency={urgency}&severity={severity}&certainty={certainty}
                          &eventNames={eventNames}&startTime={startTime}&endTime={endTime}


Parameters are of the form &qname={pname}, where qname is the URI query parameter name, and pname is the corresponding parameter name. The parameters are listed below by their pname.

Gets weather alerts for a given set of points.

Parameters
pointsThe coordinates that make up the points of the a request. Each point is specified as a comma separated pairs of floating point numbers, representing longitude and latitude respectively in the Web Mercator ESPG:3857 projection. The list of points is represented by a semi-colon separated sequence of stops.

There must be at least one coordinate pair.

Example:

&points=-76.12345,42.12345;-76.12312,42.12312;-76.12456,42.12456
urgencyIndicates to retrieve weather alerts with an urgency attribute matching the listed values. Format is a comma-separated list of the following values:

  1. Immediate
    Responsive action should be taken immediately.
  2. Expected
    Responsive action should be taken soon.
  3. Future
    Responsive action should be taken in the near future.
  4. Past
    Responsive action is no longer required.
  5. Unknown
    Urgency is unknown.

Default is none. i.e. empty list, which means none will be matched.

Example:

&urgency=Immediate,Expected,Future
&urgency=0,1,2

See also
    ALK.PCM.Model.WeatherAlertUrgency

severityIndicates to retrieve weather alerts with an urgency attribute matching the listed values. Format is a comma-separated list of the following values:

  1. Extreme
    Extraordinary threat to life or property.
  2. Severe
    Significant threat to life or property.
  3. Moderate
    Possible threat to life or property.
  4. Minor
    Minimal threat to life or property.
  5. Unknown
    Severity is unknown.

Default is none. i.e. empty list, which means none will be matched.

Example:

&severity=Extreme,Severe,Moderate
&severity=0,1,2

See also
    ALK.PCM.Model.WeatherAlertSeverity

certaintyIndicates to retrieve weather alerts with an certainty attribute matching the listed values. Format is a comma-separated list of the following values:

  1. Observed
    Determined to have occurred or to be ongoing.
  2. Likely
    Possibility is greater than 50% to occur.
  3. Possible
    Is possible, but not likely to occur.
  4. Unlikely
    Is not expected to occur.
  5. Unknown
    Certainty is unknown.

Default is none. i.e. empty list, which means none will be matched.

Example:

&certainty=Observed,Likely,Possible
&certainty=0,1,2
eventNamesLists the event names to match from the weather alerts when generating a report. The format is a list of strings separated by commas.

Default is none, i.e. empty list, which means all will be matched.

Examples:

&eventNames=Tornado%20Warning,High%20winds
startTimeIndicates the start Date/Time string to be applied for the request.

The format for this value is one of the following:

  • ISO8601 ("2015-08-29T13:45:30-07:00")
  • RFC1123 ("Sat, 29 Aug 2015 20:45:30 GMT")

Examples:

&startTime=2015-08-29T13:45:30-07:00
&startTime=Sat,%2029%20Aug%202015%2020:45:30%20GMT
endTimeIndicates the end Date/Time string to be applied for the request.

The format for this value is one of the following:

  1. ISO8601 ("2015-08-29T13:45:30-07:00")
  2. RFC1123 ("Sat, 29 Aug 2015 20:45:30 GMT")

Examples:

&startTime=2015-08-29T13:45:30-07:00
&startTime=Sat,%2029%20Aug%202015%2020:45:30%20GMT
Returns
A JSON formatted list of Weather Alert Events. WeatherAlertEvent

◆ OptimizeTimeWindowSequence()

TimeWindowOptimizedSequence OptimizeTimeWindowSequence(DataRegionregion,
RegionalDataSetdataset,
TimeWindowSequence request 
)

The /route/optimize POST request performs a "Time Window Routing Optimization" on a stop sequence.

REST METHOD: POST
REST URI:

/route/optimize?region={region}&dataset={dataset}


Parameters are of the form &qname={pname}, where qname is the URI query parameter name, and pname is the corresponding parameter name. The parameters are listed below by their pname.

Parameters
requestJSON formatted object of type ALK.PCM.Model.BusinessModels.TimeWindowSequence.

Example:

{
  "Route": {
    "Name": "get-optimized-time-window-sequence",
    "Stops": [
            {
                "Location": {
                    "Coords": {
                       "Lat": "33980290",
                       "Lon": "-84037720"
                    }
                },
                "TimeWindow": {
                    "StartTime": "08:00",
                    "EndTime":"00:00"
                },
                "WaitTime": 0
            },
            {
                "Location": {
                    "Coords": {
                       "Lat": "33979947",
                       "Lon": "-84036745"
                    }
                },
                "TimeWindow": {
                    "StartTime": "08:00",
                    "EndTime": "10:00"
                },
                "WaitTime": 300,
                "IsStatic": true
            },
            {
                "Location": {
                    "Coords": {
                       "Lat": "33986480",
                       "Lon": "-84018840"
                    }
                },
                "TimeWindow": {
                    "StartTime": "6:00",
                    "EndTime": "7:00"
                },
                "WaitTime": 300,
                "SecondTimeWindow": {
                    "StartTime": "18:00",
                    "EndTime": "19:00"
                }
            },
            {
                "Location": {
                    "Address": {
                        "StreetAddress": "952 Heartwood Circle",
                        "City": "Lawrenceville",
                        "State": "GA",
                        "Zip": "30043"
                    }
                },
                "TimeWindow": {
                    "StartTime": "08:00",
                    "EndTime": "14:00"
                },
                "WaitTime": 300,
                "BlockTimeWindow": {
                    "StartTime": "10:00",
                    "EndTime": "14:00"
                }
            },
            {
                "Location": {
                    "Address": {
                        "StreetAddress": "1370 Lake Washington Drive Northwest",
                        "City": "Lawrenceville",
                        "State": "GA",
                        "Zip": "30043"
                    },
                    "Coords": {
                       "Lat": "33983570",
                       "Lon": "-84055350"
                    }
                },
                "TimeWindow": {
                    "StartTime": "11:00",
                    "EndTime": "12:00"
                },
                "WaitTime": 300
            },
            {
                "Location": {
                    "Coords": {
                       "Lat": "0",
                       "Lon": "0"
                    }
                },
                "TimeWindow": {
                    "StartTime": "08:00",
                    "EndTime":"23:55"
                },
                "WaitTime": 300
            },
            {
                "Location": {
                    "Coords": {
                       "Lat": "40368194",
                       "Lon": "-74655001"
                    }
                },
                "TimeWindow": {
                    "StartTime": "08:00",
                    "EndTime":"23:55"
                },
                "WaitTime": 300
            },
            {
                "Location": {
                    "Coords": {
                       "Lat": "33983857",
                       "Lon": "-84053022"
                    }
                },
                "TimeWindow": {
                    "StartTime": "05:00",
                    "EndTime": "06:00"
                },
                "WaitTime": 300
            },
            {
                "Location": {
                    "Coords": {
                       "Lat": "33984546",
                       "Lon": "-84051747"
                    }
                },
                "TimeWindow": {
                    "StartTime": "06:00",
                    "EndTime": "23:55"
                },
                "WaitTime": 300,
                "IsStatic": true
            },
            {
                "Location": {
                    "Coords": {
                       "Lat": "33983101",
                       "Lon": "-84052604"
                    }
                },
                "TimeWindow": {
                    "StartTime": "08:00",
                    "EndTime":"23:55"
                },
                "WaitTime": 1000000
            },
            {
                "Location": {
                    "Coords": {
                       "Lat": "33984321",
                       "Lon": "-84049868"
                    }
                },
                "TimeWindow": {
                    "StartTime": "08:00",
                    "EndTime":"23:55"
                },
                "WaitTime": 1000000,
                "IsBreak": true
            },
            {
                "Location": {
                    "Coords": {
                       "Lat": "33980500",
                       "Lon": "-84038765"
                    }
                },
                "TimeWindow": {
                    "StartTime": "08:00",
                    "EndTime":"23:55"
                },
                "WaitTime": 300,
                "IsStatic": true
            },
            {
                "Location": {
                    "Address": {
                        "StreetAddress": "1399 Watercove Lane",
                        "City": "Lawrenceville",
                        "State": "GA",
                        "Zip": "30043"
                    }
                },
                "TimeWindow": {
                    "StartTime": "00:00",
                    "EndTime":"00:00"
                },
                "WaitTime": 0
            }
    ],
    "Options": {
      "CustomRoadSpeeds": [
        {
          "RoadCategory": 10,
          "Speed": 90
        },
        {
          "RoadCategory": 12,
          "Speed": 90
        },
        {
          "RoadCategory": 13,
          "Speed": 90
        },
        {
          "RoadCategory": 14,
          "Speed": 90
        },
        {
          "RoadCategory": 15,
          "Speed": 90
        },
        {
          "RoadCategory": 16,
          "Speed": 90
        },
        {
          "RoadCategory": 17,
          "Speed": 90
        },
        {
          "RoadCategory": 1,
          "Speed": 90
        },
        {
          "RoadCategory": 3,
          "Speed": 90
        },
        {
          "RoadCategory": 4,
          "Speed": 90
        },
        {
          "RoadCategory": 5,
          "Speed": 90
        },
        {
          "RoadCategory": 6,
          "Speed": 90
        },
        {
          "RoadCategory": 7,
          "Speed": 90
        },
        {
          "RoadCategory": 8,
          "Speed": 90
        }
      ]
    }
  }
}
regionThe data region in which the route is located. Possible values are:

  1. Unknown - Africa
  2. AF - Africa
  3. AS - Asia
  4. EU - Europe
  5. NA - North America
  6. OC - Oceania; Australia
  7. SA - South America
  8. ME - Middle East

Default is NA (North America).

Example:

&region=EU

See also
    ALK.Common.Model.DataRegion

datasetThe data region in which the route is located. Possible values for the routePath request are:

  1. Current
  2. PCM_EU
  3. PCM_OC
  4. PCM_SA
  5. PCM_GT (GeoTrac)
  6. PCM_AF
  7. PCM_AS
  8. PCM_ME
  9. PCM_NA
  10. PCM_WW
  11. PCM_JP
  12. PCM_NASL
  13. PCM_MX

Default is Current. If an unlicensed dataset is specified, the request will result in a forbidden request, i.e. a 403 HTTP Response.

Example:

&dataset=PCM_ME

See also
    ALK.PCM.Model.RegionalDataSet

Returns
JSON formatted object of type ALK.PCM.Model.BusinessModels.TimeWindowOptimizedSequence.

Example:

{
    "TotalETA": "18:07",
    "TotalDistance": "12.34",
    "Stops": [
        {
            "Location": {
                "Address": null,
                "Coords": {
                    "Lat": "33.980290",
                    "Lon": "-84.037720"
                },
                "Region": 4,
                "Label": null,
                "PlaceName": null
            },
            "OriginalPosition": 0,
            "ETA": "08:00",
            "Distance": "0.00",
            "TimeWindowMet": true,
            "SlackTime": 0
        },
        {
            "Location": {
                "Address": null,
                "Coords": {
                    "Lat": "33.979947",
                    "Lon": "-84.036745"
                },
                "Region": 4,
                "Label": null,
                "PlaceName": null
            },
            "OriginalPosition": 1,
            "ETA": "08:00",
            "Distance": "0.06",
            "TimeWindowMet": true,
            "SlackTime": 0
        },
        {
            "Location": {
                "Address": null,
                "Coords": {
                    "Lat": "33.984127",
                    "Lon": "-84.035165"
                },
                "Region": 4,
                "Label": null,
                "PlaceName": null
            },
            "OriginalPosition": 3,
            "ETA": "08:05",
            "Distance": "0.67",
            "TimeWindowMet": true,
            "SlackTime": 0
        },
        {
            "Location": {
                "Address": null,
                "Coords": {
                    "Lat": "33.983570",
                    "Lon": "-84.055350"
                },
                "Region": 4,
                "Label": null,
                "PlaceName": null
            },
            "OriginalPosition": 4,
            "ETA": "08:14",
            "Distance": "5.21",
            "TimeWindowMet": true,
            "SlackTime": 166
        },
        {
            "Location": {
                "Address": null,
                "Coords": {
                    "Lat": "33.986480",
                    "Lon": "-84.018840"
                },
                "Region": 4,
                "Label": null,
                "PlaceName": null
            },
            "OriginalPosition": 2,
            "ETA": "11:08",
            "Distance": "4.23",
            "TimeWindowMet": true,
            "SlackTime": 412
        },
        {
            "Location": {
                "Address": null,
                "Coords": {
                    "Lat": "33.980500",
                    "Lon": "-84.038765"
                },
                "Region": 4,
                "Label": null,
                "PlaceName": null
            },
            "OriginalPosition": 11,
            "ETA": "18:01",
            "Distance": "2.10",
            "TimeWindowMet": true,
            "SlackTime": 0
        },
        {
            "Location": {
                "Address": null,
                "Coords": {
                    "Lat": "33.980175",
                    "Lon": "-84.037567"
                },
                "Region": 4,
                "Label": null,
                "PlaceName": null
            },
            "OriginalPosition": 12,
            "ETA": "18:07",
            "Distance": "0.07",
            "TimeWindowMet": true,
            "SlackTime": 0
        }
    ],
    "RemovedStops": [
        {
            "Location": {
                "Address": null,
                "Coords": {
                    "Lat": "0",
                    "Lon": "0"
                },
                "Region": 0,
                "Label": null,
                "PlaceName": null
            },
            "OriginalPosition": 5,
            "Error": "Geocode"
        },
        {
            "Location": {
                "Address": null,
                "Coords": {
                    "Lat": "40368194",
                    "Lon": "-74655001"
                },
                "Region": 0,
                "Label": null,
                "PlaceName": null
            },
            "OriginalPosition": 6,
            "Error": "Over Max Distance from Other Stops"
        },
        {
            "Location": {
                "Address": null,
                "Coords": {
                    "Lat": "33983857",
                    "Lon": "-84053022"
                },
                "Region": 0,
                "Label": null,
                "PlaceName": null
            },
            "OriginalPosition": 7,
            "Error": "Invalid Stop Time Window"
        },
        {
            "Location": {
                "Address": null,
                "Coords": {
                    "Lat": "33984546",
                    "Lon": "-84051747"
                },
                "Region": 0,
                "Label": null,
                "PlaceName": null
            },
            "OriginalPosition": 8,
            "Error": "Invalid Static Stop Placement"
        },
        {
            "Location": {
                "Address": null,
                "Coords": {
                    "Lat": "33983101",
                    "Lon": "-84052604"
                },
                "Region": 0,
                "Label": null,
                "PlaceName": null
            },
            "OriginalPosition": 9,
            "Error": "Invalid Stop Wait Time"
        },
        {
            "Location": {
                "Address": null,
                "Coords": {
                    "Lat": "33984321",
                    "Lon": "-84049868"
                },
                "Region": 0,
                "Label": null,
                "PlaceName": null
            },
            "OriginalPosition": 10,
            "Error": "Invalid Break Stop Wait Time"
        }
    ]
}

◆ GetTrafficCamerasBoxAsync()

Task<List<TrafficCameraBase> > GetTrafficCamerasBoxAsync(string bbox)

The /trafficCams/box GET request retrieves known traffic cameras for a given viewport.

REST METHOD: GET
REST URI:

/trafficCams/box?bbox={bbox}


Parameters are of the form &qname={pname}, where qname is the URI query parameter name, and pname is the corresponding parameter name. The parameters are listed below by their pname.

Parameters
bboxThe bounding box, which is specified in degrees in the Web Mercator, ESPG:3857, projection.

Its format is four floating point numbers or integers separated by commas in the following juxtaposition:

minLon,minLat,maxLon,maxLat.

Example:

&bbox=-45.0,38.5,44.3,-42.14332
Returns
A JSON formatted array of Traffic Camera objects TrafficCameraBase.

◆ GetTrafficCameraMetaAsync()

Task<TrafficCamera> GetTrafficCameraMetaAsync(string id)

The /trafficCam/metadata GET request retrieves detailed information for a given camera by its id.

REST METHOD: GET
REST URI:

/trafficCam/metadata?id={id}


Parameters are of the form &qname={pname}, where qname is the URI query parameter name, and pname is the corresponding parameter name. The parameters are listed below by their pname.

Parameters
idThe camera's public id.

Example:

&id=231334223
Returns
A JSON formatted Traffic Camera object TrafficCamera.

◆ GetTrafficCameraImgAsync()

Task<Stream> GetTrafficCameraImgAsync(string id,
TrafficCameraImgResolution resolution 
)

The /trafficCam/img GET request retrieves a current image from a given camera identified by its id and image resolution.

REST METHOD: GET
REST URI:

/trafficCam/img?id={id}&res={resolution}


Parameters are of the form &qname={pname}, where qname is the URI query parameter name, and pname is the corresponding parameter name. The parameters are listed below by their pname.

Parameters
idThe camera's public id.

Example:

&id=231334223
resolutionThe image resolution for the picture returned from the camera.

Example:

&resolution=1028
Returns
A byte stream containing the camera image.

◆ RoadSurfaceRouteAsync()

Task<int[]> RoadSurfaceRouteAsync(List< double[]> routePath,
int routeDuration,
RoadSurfaceProvider provider 
)

The /roadSurface/route POST request retrieves a list of road surface conditions at each point of a route path.

REST METHOD: POST
REST URI:

/trafficCam/metadata?id={id}


Parameters are of the form &qname={pname}, where qname is the URI query parameter name, and pname is the corresponding parameter name. The parameters are listed below by their pname.

Parameters
routePathThe list of coordinates that make up the path of the route. Each point is specified as a comma separated pairs of floating point numbers, representing longitude and latitude respectively in the Web Mercator ESPG:3857 projection. The list of points is represented by a semi-colon separated sequence of coordinate pairs.

There must be at least two coordinate pairs.

Example:

&routePath=-76.12345,42.12345;-76.12312,42.12312;-76.12456,42.12456

This parameter shall be specified in the body of the request.
routeDurationIndicates the duration of the route. This value is specified in minutes. The format for this value is an integer.

Example:

&routeDuration=342

This parameter shall be specified in the body of the request.
providerSpecifies the Road Surface provider. Possible values are:
  1. Default
  2. RC1

Example:

&provider=RC1

See also
    ALK.PCM.Model.RoadSurfaceProvider

Returns
Road surface conditions are specified as an array of integers. Each integer corresponds with the following values:

  • 1 - Dry road
  • 2 - Wet road
  • 3 - Ice/snow
  • 4 - Mix water/snow
  • 5 - Dew
  • 6 - Melting snow
  • 7 - Frost
  • 8 - Icing rain
  • 99 - Not in range

◆ GetGeofenceSets()

List<GeofenceSet> GetGeofenceSets(string setID,
string setName,
string setTag,
bool? includeFences 
)
inherited

The /GeofenceSets GET operation retrieves geofence sets.

REST METHOD: GET
REST URI:

/GeofenceSets/{setID=-1}?name={setName}&tag={setTag}&includeFences={includeFences}

Parameters
setIDThe setID is the numeric identifier of the Geofence Set. The default value is "-1" and that searches against all Geofence sets.
setNameThis parameter contains the name of a Geofence Set.

Examples:

&name=Construction
setTagThis parameter contains the tag of an Geofence Set.

Examples:

&tag=A-tag
includeFencesIndicates whether the result should contain the set's fences. Possible values are boolean:

  • true
  • false

Default is false.

Example:

&includeFences=true
Returns
A JSON formatted response.

Example of a result returned from ALK.PCM.PortalService.IRestGeofenceService.GetGeofenceSets. The result is an array of ALK.Common.Model.GeofenceSet.

[
    {
            "ActiveState": 1,
            "BorderAlpha": 100,
            "BorderColor": 16777215,
            "BorderWidth": 10,
            "EndTime": "2025-10-05T13:45:30+00:00",
            "FillAlpha": 125,
            "FillColor": 16777215,
            "Name": "testName_1479820709441",
            "StartTime": "2015-10-05T13:40:30+00:00",
            "Tag": "testTag_1479820709441",
            "Visible": true,
            "Deleted": false,
            "Fences": [
                {
                    "EndTime": null,
                    "Label": null,
                    "Name": "fence_created",
                    "Radius": 0,
                    "SetId": 219899,
                    "ShapePoints": [
                        [
                            -74.684434,
                            40.306305
                        ]
                    ],
                    "ShapeType": 5,
                    "StartTime": null,
                    "Id": 232932
                }
            ],
            "Id": 219899
        }
]

◆ GetGeofences()

List<Geofence> GetGeofences(string fenceId,
string fenceName 
)
inherited

The /Geofence GET operation retrieves geofences.

REST METHOD: GET
REST URI:

/Geofence/{fenceId}?fenceName={fenceName}

Parameters
fenceIdThe fenceId is the numeric identifier of the Geofence.
fenceNameThis parameter contains the name of a Geofence to filter against.

Examples:

&fenceName=Construction
Returns
A JSON formatted response.

Example of a result returned from ALK.PCM.PortalService.IRestGeofenceService.GetGeofences. The result is an array of ALK.Common.Model.Geofence.

[
    {
            "ActiveState": 1,
            "BorderAlpha": 100,
            "BorderColor": 16777215,
            "BorderWidth": 10,
            "EndTime": "2025-10-05T13:45:30+00:00",
            "FillAlpha": 125,
            "FillColor": 16777215,
            "Name": "testName_1479820709441",
            "StartTime": "2015-10-05T13:40:30+00:00",
            "Tag": "testTag_1479820709441",
            "Visible": true,
            "Deleted": false,
            "Fences": [
                {
                    "EndTime": null,
                    "Label": null,
                    "Name": "fence_created",
                    "Radius": 0,
                    "SetId": 219899,
                    "ShapePoints": [
                        [
                            -74.684434,
                            40.306305
                        ]
                    ],
                    "ShapeType": 5,
                    "StartTime": null,
                    "Id": 232932
                }
            ],
            "Id": 219899
        }
]

◆ GetGeofencesRouteIntersection()

GeofenceRouteIntersectResponseBody GetGeofencesRouteIntersection(GeofenceRouteIntersectRequestBody request)
inherited

The /Geofence/Intersection/Route POST request retrieves the geofences with which the supplied route intersects.

REST METHOD: POST
REST URI:

/Geofence/Intersection/Route

Parameters
requestContains a structure to search for geofences that intersect a route.
See ALK.PCM.Model.ServiceModels.GeofenceRouteIntersectRequestBody.

Example:

{
  "Route": [
     [-76.4,42.1],
     [-76.3,42.3],
     [-76.2,42.4]
  ],
  "GeofenceSetIds": [
     2343
  ],
  "GeofenceSetNames" : [
     "a name"
  ],
  "GeofenceSetTags" : [
     "a tag"
  ]
  "GeofenceNames" : [
     "a name"
  ],
  "IntersectTime" : "2025-10-05T13:45:30+00:00"
}
Returns
A JSON formatted response.

Example of a result returned from ALK.PCM.PortalService.IRestGeofenceService.GetGeofences. The result is a ALK.PCM.Model.ServiceModels.GeofenceRouteIntersectResponseBody.

{
  "results" : [
     {
        "fenceId" : 324234,
        "name" : "a",
        "setId": 23434
     }
  ]
}

◆ GetGeofencesPointsIntersection()

GeofencePointIntersectResponseBody [] GetGeofencesPointsIntersection(GeofencePointIntersectRequestBody[] requests)
inherited

The /Geofence/Intersection/Points POST request retrieves the geofences with which the supplied points intersect.

REST METHOD: POST
REST URI:

/Geofence/Intersection/Points

Parameters
requestsContains a structure to search for a Geofence that intersect a list of Points for each request.

The request is an array of ALK.PCM.Model.ServiceModels.GeofencePointsIntersectRequestBody.

Example:

{
  "Points": [
     [-76.4,42.1]
  ],
  "GeofenceSetIds": [
     2343
  ],
  "GeofenceSetNames" : [
     "a name"
  ],
  "GeofenceSetTags" : [
     "a tag"
  ]
  "GeofenceNames" : [
     "a name"
  ],
  "IntersectTime" : "2025-10-05T13:45:30+00:00",
}
Returns
A JSON formatted response.

Example of a result returned from ALK.PCM.PortalService.IRestGeofenceService.GetGeofencePointIntersection. The result is an array of ALK.PCM.Model.ServiceModels.GeofencePointIntersectResponseBody.

{
  "results" : [
     {
        "fenceId" : 324234,
        "name" : "a",
        "setId": 23434
     }
  ]
}

◆ GeofenceSetAdd()

int GeofenceSetAdd(string setName,
string setTag,
GeofenceStateactiveState,
bool? visible,
int? borderColor,
byte? borderAlpha,
byte? borderWidth,
int? fillColor,
byte? fillAlpha,
string startTime,
string endTime 
)
inherited

The /GeofenceSets POST request creates a new geofence set.

REST METHOD: POST
REST URI:

/GeofenceSets?name={setName}&tag={setTag}&activeState={activeState}&visible={visible} &borderColor={borderColor}&borderAlpha={borderAlpha}&borderWidth={borderWidth} &fillColor={fillColor}&fillAlpha={fillAlpha}&startTime={startTime} &endTime={endTime}

Parameters
setNameThis parameter contains the name of a Geofence Set.

Examples:

&name=Construction
setTagThis parameter contains the tag of an Geofence Set.

Examples:

&tag=A-tag
activeStateThe activeState. Possible values are:

  1. Off
  2. Warn
  3. Avoid

Default is Off.

Example:

&activeState=Avoid

See also
    ALK.PCM.Model.GeofenceState

visibleIndicates whether or not geofences within this set should be drawn on the map. Possible values are boolean:

  • true
  • false

Default is true.

Example:

&visible=false
borderColorIndicates the color of a border.

The value is a standard RGB.

Example:

&borderColor=ff3322
borderAlphaIndicates the alpha (transparency) of the border. Valid values are 0 (transparent) to 255 (opaque).

Example:

&borderAlpha=225
borderWidthIndicates the border width of the geofence, in pixels.

Example:

&borderWidth=4
fillColorIndicates the color of the fill inside the area.

The value is a standard RGB in a decimal number.

Example:

&borderColor=234234
fillAlphaIndicates the alpha (transparency) of the color fill. Valid values are 0 (transparent) to 255 (opaque).

Example:

&fillAlpha=99
startTimeIndicates the start Date/Time string to be applied for the request.

The format for this value is one of the following:

  • ISO8601 ("2015-08-29T13:45:30-07:00")
  • RFC1123 ("Sat, 29 Aug 2015 20:45:30 GMT")

Examples:

&startTime=2015-08-29T13:45:30-07:00
&startTime=Sat,%2029%20Aug%202015%2020:45:30%20GMT
endTimeIndicates the end Date/Time string to be applied for the request.

The format for this value is one of the following:

  1. ISO8601 ("2015-08-29T13:45:30-07:00")
  2. RFC1123 ("Sat, 29 Aug 2015 20:45:30 GMT")

Examples:

&startTime=2015-08-29T13:45:30-07:00
&startTime=Sat,%2029%20Aug%202015%2020:45:30%20GMT
Returns
The setID of the newly created set.

◆ GeofenceSetUpdate()

int GeofenceSetUpdate(string setID,
string name,
string tag,
GeofenceStateactiveState,
bool? visible,
int? borderColor,
byte? borderAlpha,
byte? borderWidth,
int? fillColor,
byte? fillAlpha,
string startTime,
string endTime 
)
inherited

The /GeofenceSets PUT request updates an existing geofence set.

REST METHOD: PUT
REST URI:

/GeofenceSets?name={setName}&tag={setTag}&activeState={activeState}&visible={visible} &borderColor={borderColor}&borderAlpha={borderAlpha}&borderWidth={borderWidth} &fillColor={fillColor}&fillAlpha={fillAlpha}&startTime={startTime} &endTime={endTime}

Parameters
setIDThe setID is the numeric identifier of the Geofence Set.
nameThis parameter contains the name of a Geofence Set.

Examples:

&name=Construction
tagThis parameter contains the tag of an Geofence Set.

Examples:

&tag=A-tag
activeStateThe activeState. Possible values are:

  1. Off
  2. Warn
  3. Avoid

Default is Off.

Example:

&activeState=Avoid

See also
    ALK.PCM.Model.GeofenceState

visibleIndicates whether or not geofences within this set should be drawn on the map. Possible values are boolean:

  • true
  • false

Default is true.

Example:

&visible=false
borderColorIndicates the color of a border.

The value is a standard RGB.

Example:

&borderColor=ff3322
borderAlphaIndicates the alpha (transparency) of the border. Valid values are 0 (transparent) to 255 (opaque).

Example:

&borderAlpha=225
borderWidthIndicates the border width of the geofence, in pixels.

Example:

&borderWidth=4
fillColorIndicates the color of the fill inside the area.

The value is a standard RGB in a decimal number.

Example:

&borderColor=234234
fillAlphaIndicates the alpha (transparency) of the color fill. Valid values are 0 (transparent) to 255 (opaque).

Example:

&fillAlpha=99
startTimeIndicates the start Date/Time string to be applied for the request.

The format for this value is one of the following:

  • ISO8601 ("2015-08-29T13:45:30-07:00")
  • RFC1123 ("Sat, 29 Aug 2015 20:45:30 GMT")

Examples:

&startTime=2015-08-29T13:45:30-07:00
&startTime=Sat,%2029%20Aug%202015%2020:45:30%20GMT
endTimeIndicates the end Date/Time string to be applied for the request.

The format for this value is one of the following:

  1. ISO8601 ("2015-08-29T13:45:30-07:00")
  2. RFC1123 ("Sat, 29 Aug 2015 20:45:30 GMT")

Examples:

&startTime=2015-08-29T13:45:30-07:00
&startTime=Sat,%2029%20Aug%202015%2020:45:30%20GMT
Returns
The integer "1" if the update was successful.

◆ GeofenceSetDelete()

int GeofenceSetDelete(string setID)
inherited

The /GeofenceSets/{setID} DELETE request removes an existing geofence set.

REST METHOD: DELETE
REST URI:

/GeofenceSets/{setID}

Parameters
setIDThe setID is the numeric identifier of the Geofence Set.
Returns
The integer "1" if the deletion was successful.

◆ GeofenceAdd()

int GeofenceAdd(AddGeofence fenceToAdd)
inherited

The /Geofence POST request adds the geofence to a particular set.

REST METHOD: POST
REST URI:

/Geofence

Parameters
fenceToAddContains a structure to add a Geofence to a Geofence Set.
See ALK.Common.Model.AddGeofence.

Example:

{
    "SetId":3,
    "Name":"biggie fence",
    "ShapeType":5,
    "Radius":10,
    "Label" : "a label",
    "ShapePoints":[
        [-75.152955714212,39.204307443124],
        [-75.129804285788,39.204307443124],
        [-75.152955714212,39.204307443124]
    ],
    "EndTime": "2025-10-05T13:45:30+00:00",
    "StartTime": "2015-10-05T13:40:30+00:00"
}
Returns
The fenceId of the newly created Geofence.

◆ GeofenceUpdate()

int GeofenceUpdate(Geofence fenceToUpdate)
inherited

The /Geofence PUT request adds the geofences to a particular set.

REST METHOD: PUT
REST URI:

/Geofence

Parameters
fenceToUpdateContains a structure to update a Geofence.
See ALK.Common.Model.Geofence.

Example:

{
    "id" : 3234234,
    "SetId":3,
    "Name":"biggie fence",
    "ShapeType":5,
    "Radius":10,
    "Label" : "a label",
    "ShapePoints":[
        [-75.152955714212,39.204307443124],
        [-75.129804285788,39.204307443124],
        [-75.152955714212,39.204307443124]
    ],
    "EndTime": "2025-10-05T13:45:30+00:00",
    "StartTime": "2015-10-05T13:40:30+00:00"
}
Returns
The integer "1" if the update was successful.

◆ GeofenceDelete()

int GeofenceDelete(string fenceID)
inherited

The /Geofence{fenceID} DELETE request removes an existing geofence.

REST METHOD: DELETE
REST URI:

/Geofence/{fenceID}

Parameters
fenceIDThe fenceID is the numeric identifier of the Geofence.
Returns
The integer "1" if the deletion was successful.

◆ AddAvoidFavorSet()

int AddAvoidFavorSet(string setName,
string setTag,
RegionalDataSet dataset 
)
inherited

The /AvoidFavorSets/ POST operation creates a new avoid/favor set.

REST METHOD: POST
REST URI:

/AvoidFavorSets?name={setName}&tag={setTag}&dataset={dataset}

Parameters
setNameThis parameter contains the name of an Avoid/Favor Set.

Examples:

&name=Construction
setTagThis parameter contains the tag of an Avoid/Favor Set.

Examples:

&tag=A-tag
datasetThe data region in which the route is located. Possible values for the routePath request are:

  1. Current
  2. PCM_EU
  3. PCM_OC
  4. PCM_SA
  5. PCM_GT (GeoTrac)
  6. PCM_AF
  7. PCM_AS
  8. PCM_ME
  9. PCM_NA
  10. PCM_WW
  11. PCM_JP
  12. PCM_NASL
  13. PCM_MX

Default is Current. If an unlicensed dataset is specified, the request will result in a forbidden request, i.e. a 403 HTTP Response.

Example:

&dataset=PCM_ME

See also
    ALK.PCM.Model.RegionalDataSet

Returns
An integer representing the id of the newly created set.

◆ GetAFSets()

List<AFSet> GetAFSets(string setID,
string name,
string tag,
bool? detailForAll,
double[] corner1,
double[] corner2,
RegionalDataSet dataset,
bool inexactNameMatch = false 
)
inherited

The /AvoidFavorSets/ GET operation retrieves avoid/favor sets.

REST METHOD: GET
REST URI:

/AvoidFavorSets/{setID=-1}?name={name}&tag={tag}&detail={detailForAll} &corner1={corner1}&corner2={corner2}&dataset={dataset} &inexactNameMatch={inexactNameMatch}

Parameters
setIDThe setID is the numeric identifier of the Avoid/Favor Set. The default value is "-1" and that searches against all Avoid/Favor sets.
nameThis parameter contains the name of an Avoid/Favor Set.

Examples:

&name=Construction
tagThis parameter contains the tag of an Avoid/Favor Set.

Examples:

&tag=A-tag
detailForAllIndicates whether or not to return avoid/favor link geometries or just the IDs. Possible values are boolean:

  • true
  • false

The default is false if no setID or tag is specified, true if the setID is specified.

Example:

&detail=true
corner1This parameter contains geographic coordinates used to be the bounding box top left corner.The coordinates are represented by a comma separated pair of floating point numbers representing longitude and latitude respectively in the Web Mercator ESPG:3857 projection.

There must be at least two numbers.

Example:

&corner1=-76.12345,42.12345
corner2This parameter contains geographic coordinates used to be the bounding box bottom right corner.The coordinates are represented by a comma separated pair of floating point numbers representing longitude and latitude respectively in the Web Mercator ESPG:3857 projection.

There must be at least two numbers.

Example:

&corner2=-76.12345,42.12345
datasetThe data region in which the route is located. Possible values for the routePath request are:

  1. Current
  2. PCM_EU
  3. PCM_OC
  4. PCM_SA
  5. PCM_GT (GeoTrac)
  6. PCM_AF
  7. PCM_AS
  8. PCM_ME
  9. PCM_NA
  10. PCM_WW
  11. PCM_JP
  12. PCM_NASL
  13. PCM_MX

Default is Current. If an unlicensed dataset is specified, the request will result in a forbidden request, i.e. a 403 HTTP Response.

Example:

&dataset=PCM_ME

See also
    ALK.PCM.Model.RegionalDataSet

inexactNameMatchIndicates whether or not to use the name parameter as filter for sets whose name is a partial match. Possible values are boolean:

  • true
  • false

The default is false.

Example:

&detailForAll=true
Returns
An JSON formatted response containing a list of Avoid/Favor sets.

Example of a JSON formatted array of ALK.Common.Model.AFSet.

 [
     {
         "DataVersion": null,
         "Links": [],
         "Name": "myAFTestSet1",
         "SetID": 269944,
         "Tag": "myAFTestTag_7e6d6a63-ff3a-4eb3-98d9-849ffbfafdbb"
     },
     {
         "DataVersion": null,
         "Links": [
             {
                 "AFGroupID": 1069097,
                 "AvoidFavorID": 24442873,
                 "AvoidFavorType": 1,
                 "Comment": null,
                 "ExtraInfo": null,
                 "Geometries": [
                     [
                         [-83.4,41.33],
                         [-84.234,41.234]
                     ]
                 ],
                 "GridID": 0,
                 "GridLevel": 0,
                 "LinkID": 0,
                 "LinkPoints": null,
                 "PLIDs": [
                     82542423
                 ]
             }
         ],
         "Name": "myAFTestSet2",
         "SetID": 269945,
         "Tag": "myAFTestTag_7e6d3263-ff3a-4eb3-98d9-849ffbfafdbb"
     }
   }
 ]

◆ UpdateAvoidFavorSet()

int UpdateAvoidFavorSet(string setID,
string name,
string tag,
string destinationSetId,
RegionalDataSet dataset 
)
inherited

The /AvoidFavorSets/ PUT operation retrieves avoid/favor sets.

REST METHOD: PUT
REST URI:

/AvoidFavorSets/{setID}?name={name}&tag={tag}&destinationSetId={destinationSetId} &dataset={dataset}

Parameters
setIDThe setID is the numeric identifier of the Avoid/Favor Set.
nameThis parameter contains the name of an Avoid/Favor Set.

Examples:

&name=Construction
tagThis parameter contains the tag of an Avoid/Favor Set.

Examples:

&tag=A-tag
destinationSetIdThe existing avoid/favor set ID where all of the target set's avoid/favors will be moved.

Example:

&destinationSetId=231334223
datasetThe data region in which the route is located. Possible values for the routePath request are:

  1. Current
  2. PCM_EU
  3. PCM_OC
  4. PCM_SA
  5. PCM_GT (GeoTrac)
  6. PCM_AF
  7. PCM_AS
  8. PCM_ME
  9. PCM_NA
  10. PCM_WW
  11. PCM_JP
  12. PCM_NASL
  13. PCM_MX

Default is Current. If an unlicensed dataset is specified, the request will result in a forbidden request, i.e. a 403 HTTP Response.

Example:

&dataset=PCM_ME

See also
    ALK.PCM.Model.RegionalDataSet

Returns
The integer "1" if the update succeeded.

◆ DeleteAvoidFavorSet()

int DeleteAvoidFavorSet(string setID,
RegionalDataSet dataset 
)
inherited

The /AvoidFavorSets DELETE removes an existing Avoid/Favor set.

REST METHOD: DELETE
REST URI:

/AvoidFavorSets/{setID}

The setID is the numeric identifier of the Avoid/Favor Set.

Parameters
setIDThe setID is the numeric identifier of the Avoid/Favor Set.
datasetThe data region in which the route is located. Possible values for the routePath request are:

  1. Current
  2. PCM_EU
  3. PCM_OC
  4. PCM_SA
  5. PCM_GT (GeoTrac)
  6. PCM_AF
  7. PCM_AS
  8. PCM_ME
  9. PCM_NA
  10. PCM_WW
  11. PCM_JP
  12. PCM_NASL
  13. PCM_MX

Default is Current. If an unlicensed dataset is specified, the request will result in a forbidden request, i.e. a 403 HTTP Response.

Example:

&dataset=PCM_ME

See also
    ALK.PCM.Model.RegionalDataSet

Returns
The integer "1" if the deletion was successful.

◆ AddAvoidFavor()

List<AFLink> AddAvoidFavor(string setID,
AvoidFavorMapLink avoidFavorMapLink,
RegionalDataSet dataset 
)
inherited

The /AvoidFavorSets/AvoidFavor POST operation adds an Avoid/Favor to the specified Avoid/Favor Set.

REST METHOD: POST
REST URI:

/AvoidFavorSets/{setID}/AvoidFavor

Parameters
setIDThe setID is the numeric identifier of the Avoid/Favor Set.
avoidFavorMapLinkContains a structure to update add or update an Avoid/Favor Set.
See ALK.Common.Model.AvoidFavorMapLink.

Example:

{
  "avoidFavorMapLink": {
     "MapBound1": [-74.783907757568,40.43223610379],
     "MapBound2": [-74.497233258056,40.285465626496],
     "Region":4,
     "AFPoint": {
       "Type":1,
       "Point": [-74.65361677246,40.34606209256],
       "Comment":"WashingtonSt Grid"
     }
  }
}
datasetThe data region in which the route is located. Possible values for the routePath request are:

  1. Current
  2. PCM_EU
  3. PCM_OC
  4. PCM_SA
  5. PCM_GT (GeoTrac)
  6. PCM_AF
  7. PCM_AS
  8. PCM_ME
  9. PCM_NA
  10. PCM_WW
  11. PCM_JP
  12. PCM_NASL
  13. PCM_MX

Default is Current. If an unlicensed dataset is specified, the request will result in a forbidden request, i.e. a 403 HTTP Response.

Example:

&dataset=PCM_ME

See also
    ALK.PCM.Model.RegionalDataSet

Returns
An JSON formatted response.

Example of a result returned from ALK.PCM.IRestCustomPlaceService.AddAvoidFavor. The named result is a JSON formatted array of ALK.Common.Model.AFLink.

{
    "AddAvoidFavorResult": [
        {
            "AFGroupID": null,
            "AvoidFavorID": 24621964,
            "AvoidFavorType": 1,
            "Comment": "WashingtonSt Grid",
            "ExtraInfo": null,
            "Geometries": [
                [
                    [-74.652771,40.344874],
                    [-74.653097,40.345292]
                ]
            ],
            "GridID": 1342912012,
            "GridLevel": 1,
            "LinkID": 581,
            "LinkPoints": null,
            "PLIDs": [
                72199946,
                72185256
            ]
        }
    ]
}

◆ AddAvoidFavorGridLinks()

List<int> AddAvoidFavorGridLinks(string setID,
List< AFGridLinkafGridLinks,
int? afGroupID,
RegionalDataSet dataset 
)
inherited

The /AvoidFavorSets/AvoidFavorGridLink POST operation adds Avoid/Favors to the specified Avoid/Favor Set.

REST METHOD: POST
REST URI:

/AvoidFavorSets/{setID}/AvoidFavorGridLink?groupID={afGroupID}&dataset={dataset}

Parameters
setIDThe setID is the numeric identifier of the Avoid/Favor Set.
afGroupIDThis parameter contains the group for the AFGridLinks contained in the body of the request.

If afGroupID <= -1, then a new group is created. If afGroupID = null, these avoid favors won't go in a group. If afGroupID > -1, then these afGridLinks are added to that group, if it exists.

Its format is an integer.

Examples:

&groupID=
&groupID=3214
&groupID=-1
afGridLinksContains a structure to update add or update an Avoid/Favor Set.
See ALK.Common.Model.AvoidFavorGridLink.

Example:

{
  "afGridLinks":
	[{
		"Type":1,
		"Grid":48028836,
		"Link":797,
		"Comment":"MyTestAFGridLink1"
	},
	{
		"Type":1,
		"Grid":2831884,
		"Link":730,
		"Comment":"MyTestAFGridLink1"
	}]
}
datasetThe data region in which the route is located. Possible values for the routePath request are:

  1. Current
  2. PCM_EU
  3. PCM_OC
  4. PCM_SA
  5. PCM_GT (GeoTrac)
  6. PCM_AF
  7. PCM_AS
  8. PCM_ME
  9. PCM_NA
  10. PCM_WW
  11. PCM_JP
  12. PCM_NASL
  13. PCM_MX

Default is Current. If an unlicensed dataset is specified, the request will result in a forbidden request, i.e. a 403 HTTP Response.

Example:

&dataset=PCM_ME

See also
    ALK.PCM.Model.RegionalDataSet

Returns
An JSON formatted response.

Example of a result returned from ALK.PCM.PortalService.IRestAvoidFavorService.AddAvoidFavorGridLinks

{
    "AddAvoidFavorGridLinksResult": [
        24621971,
        24621972
    ]
}

◆ AddAvoidFavorGroupLinks()

List<AFLink> AddAvoidFavorGroupLinks(string setID,
List< AFGroupafGroups,
ALK.PCM.Model.DataVersion dataVersion 
)
inherited

Add avoid favor link data for all the given groups to the given set

Parameters
setID
afGroups
dataVersion
Returns

◆ DeleteAvoidFavor()

int DeleteAvoidFavor(string setID,
string afID,
RegionalDataSet dataset 
)
inherited

The /AvoidFavorSets/{setID}/AvoidFavor/{afID} DELETE removes an existing Avoid/Favor set from the specified Avoid/Favor Set.

REST METHOD: DELETE
REST URI:

/AvoidFavorSets/{setID}/AvoidFavor/{afID}?dataset={dataset}

Parameters
setIDThe setID is the numeric identifier of the Avoid/Favor Set.
afIDThe afID is the numeric identifier of the Avoid/Favor within the specified set.
datasetThe data region in which the route is located. Possible values for the routePath request are:

  1. Current
  2. PCM_EU
  3. PCM_OC
  4. PCM_SA
  5. PCM_GT (GeoTrac)
  6. PCM_AF
  7. PCM_AS
  8. PCM_ME
  9. PCM_NA
  10. PCM_WW
  11. PCM_JP
  12. PCM_NASL
  13. PCM_MX

Default is Current. If an unlicensed dataset is specified, the request will result in a forbidden request, i.e. a 403 HTTP Response.

Example:

&dataset=PCM_ME

See also
    ALK.PCM.Model.RegionalDataSet

Returns
The integer "1" if the deletion was successful.

◆ ImportFlattenedAFSet()

ImportAFSetResponseBody ImportFlattenedAFSet(ImportAFSetRequestBody importRequest,
RegionalDataSet dataset 
)
inherited

The /AvoidFavorSets/import POST request imports a PC*Miler interactive af_flattened.dat file and returns the Avoid/Favor set.

REST METHOD: POST
REST URI:

/AvoidFavorSets/import?dataset={dataset}

Parameters
importRequestJSON Formmated object of type ALK.PCM.Model.ServiceModels.ImportAFSetRequestBody.

Example:

//Step 1: Convert the flattened file into a base64 encoded string.  You can do this here: https://www.giftofspeed.com/base64-encoder/
//Step 2: In javascript take the base64 string and load into a variable named for example, base64EncodedString
//Step 3: Convert the string to binary using var b = atob(base64EncodedString);
//Step 4: Convert to binary array doing var byteNumbers = new Array(b.length);
//for (var i = 0; i < b.length; i++) { byteNumbers[i] = b.charCodeAt(i); }
//In the example below, FileBytes is the contents of the byteNumbers array.
{
	"SetName":"import_af_set_example",
	"SetTag":null,
	"SetID":-1,
	"FileBytes":[0,0,0,0,188,254,229,65,1,0,16,0,0,0,0,0,186,177,228,42,2,0,56,0,8,0,55,46,49,48,46,56,46,49,0,0,0,0,0,0,0,0,1,8,0,0,0,0,8,0,0,0,1,0,0,0,1,78,65,0,9,0,68,101,102,97,117,108,116,78,65,11,0,65,118,111,105,100,78,65,46,100,97,116,0,0,0,0,186,230,2,0,0,0,0,0,1,8,0,0,0,0,8,0,0,0,4,0,0,0,1,0,0,0,1,0,0,0,25,0,66,117,110,110,32,68,114,105,118,101,44,32,80,114,105,110,99,101,116,111,110,44,32,78,74,186,230,2,0,1,12,54,107,0,115,3,0,0,0,0,1,8,0,0,0,0,8,0,0,0,1,0,0,0,12,54,107,0,115,3,1,0,0,0,0,0,0,0,0,0,0,0,0,8,0,201,214,140,251,57,249,103,2,92,229,140,251,15,24,104,2,120,0,0,0,249,0,0,0,1,10,0,66,117,110,110,32,68,114,105,118,101,16,0,97,118,111,105,100,32,98,117,110,110,32,100,114,105,118,101,49,138,1,0,2,0,0,0,1,0,0,0,31,0,77,111,117,110,116,32,76,117,99,97,115,32,82,111,97,100,44,32,80,114,105,110,99,101,116,111,110,44,32,78,74,186,230,2,0,1,12,54,107,0,59,0,0,0,0,0,1,8,0,0,0,0,8,0,0,0,1,0,0,0,12,54,107,0,59,0,1,0,0,0,0,0,0,0,0,0,0,0,0,6,0,47,200,140,251,7,4,104,2,39,202,140,251,173,8,104,2,44,1,0,0,142,1,0,0,1,16,0,77,111,117,110,116,32,76,117,99,97,115,32,82,111,97,100,26,0,65,118,111,105,100,32,109,111,117,110,116,32,108,117,99,97,115,32,97,116,32,101,119,105,110,103,49,138,1,0,3,0,0,0,2,0,0,0,34,0,85,83,45,50,48,54,32,40,83,116,97,116,101,32,82,111,97,100,41,44,32,80,114,105,110,99,101,116,111,110,44,32,78,74,186,230,2,0,1,12,54,107,0,25,3,0,0,0,0,1,8,0,0,0,0,41,0,0,0,38,0,0,0,12,54,43,0,14,0,1,238,78,0,0,0,0,0,0,0,0,0,0,4,0,96,206,140,251,191,67,104,2,238,213,140,251,40,75,104,2,246,2,0,0,31,3,0,0,1,10,0,83,116,97,116,101,32,82,111,97,100,12,54,43,0,16,0,1,238,78,0,0,0,0,0,0,0,0,0,0,4,0,56,218,140,251,166,77,104,2,178,222,140,251,112,81,104,2,32,3,0,0,131,3,0,0,1,10,0,83,116,97,116,101,32,82,111,97,100,12,54,43,0,59,0,1,238,78,0,0,0,0,0,0,0,0,0,0,4,0,56,218,140,251,166,77,104,2,238,213,140,251,40,75,104,2,0,0,0,0,0,0,0,0,1,10,0,83,116,97,116,101,32,82,111,97,100,12,54,43,0,225,0,1,238,78,0,0,0,0,0,0,0,0,0,0,4,0,40,240,140,251,118,128,104,2,164,240,140,251,59,140,104,2,241,4,0,0,77,5,0,0,0,0,0,12,54,43,0,226,0,1,238,78,0,0,0,0,0,0,0,0,0,0,4,0,164,240,140,251,59,140,104,2,91,240,140,251,58,147,104,2,79,5,0,0,98,5,0,0,0,0,0,12,54,43,0,42,1,1,238,78,0,0,0,0,0,0,0,0,0,0,4,0,7,240,140,251,194,154,104,2,212,239,140,251,67,158,104,2,221,5,0,0,223,5,0,0,0,0,0,12,54,43,0,43,1,1,238,78,0,0,0,0,0,0,0,0,0,0,4,0,212,239,140,251,67,158,104,2,60,238,140,251,30,171,104,2,0,0,0,0,0,0,0,0,0,0,0,12,54,43,0,59,1,1,238,78,0,0,0,0,0,0,0,0,0,0,4,0,178,222,140,251,112,81,104,2,173,224,140,251,50,85,104,2,0,0,0,0,0,0,0,0,0,0,0,12,54,43,0,92,1,1,238,78,0,0,0,0,0,0,0,0,0,0,4,0,91,240,140,251,58,147,104,2,7,240,140,251,194,154,104,2,0,0,0,0,0,0,0,0,0,0,0,12,54,43,0,177,1,1,238,78,0,0,0,0,0,0,0,0,0,0,4,0,192,230,140,251,119,104,104,2,156,233,140,251,82,115,104,2,0,0,0,0,0,0,0,0,0,0,0,12,54,43,0,178,1,1,238,78,0,0,0,0,0,0,0,0,0,0,4,0,145,237,140,251,21,124,104,2,40,240,140,251,118,128,104,2,204,4,0,0,119,5,0,0,0,0,0,12,54,43,0,179,1,1,238,78,0,0,0,0,0,0,0,0,0,0,4,0,235,227,140,251,109,95,104,2,192,230,140,251,119,104,104,2,0,0,0,0,0,0,0,0,0,0,0,12,54,43,0,37,2,1,238,78,0,0,0,0,0,0,0,0,0,0,4,0,156,233,140,251,82,115,104,2,193,234,140,251,215,118,104,2,132,3,0,0,21,4,0,0,0,0,0,12,54,43,0,78,2,1,238,78,0,0,0,0,0,0,0,0,0,0,4,0,243,224,140,251,242,85,104,2,201,227,140,251,1,95,104,2,0,0,0,0,0,0,0,0,0,0,0,12,54,43,0,79,2,1,238,78,0,0,0,0,0,0,0,0,0,0,4,0,173,224,140,251,50,85,104,2,243,224,140,251,242,85,104,2,0,0,0,0,0,0,0,0,0,0,0,12,54,43,0,141,2,1,238,78,0,0,0,0,0,0,0,0,0,0,4,0,193,234,140,251,215,118,104,2,145,237,140,251,21,124,104,2,4,4,0,0,209,4,0,0,0,0,0,12,54,43,0,153,2,1,238,78,0,0,0,0,0,0,0,0,0,0,4,0,201,227,140,251,1,95,104,2,235,227,140,251,109,95,104,2,0,0,0,0,0,0,0,0,0,0,0,12,54,107,0,55,0,1,238,78,0,0,0,0,0,0,0,0,0,0,4,0,125,188,140,251,67,4,104,2,83,189,140,251,151,7,104,2,10,1,0,0,43,1,0,0,1,10,0,83,116,97,116,101,32,82,111,97,100,12,54,107,0,63,0,1,238,78,0,0,0,0,0,0,0,0,0,0,4,0,16,186,140,251,80,250,103,2,125,188,140,251,67,4,104,2,200,0,0,0,9,1,0,0,1,10,0,83,116,97,116,101,32,82,111,97,100,12,54,107,0,70,0,1,238,78,0,0,0,0,0,0,0,0,0,0,4,0,110,180,140,251,216,226,103,2,235,184,140,251,58,246,103,2,1,0,0,0,99,0,0,0,1,10,0,83,116,97,116,101,32,82,111,97,100,12,54,107,0,76,0,1,238,78,0,0,0,0,0,0,0,0,0,0,4,0,98,178,140,251,145,220,103,2,1,163,140,251,203,207,103,2,0,0,0,0,0,0,0,0,1,10,0,83,116,97,116,101,32,82,111,97,100,12,54,107,0,78,0,1,238,78,0,0,0,0,0,0,0,0,0,0,4,0,98,178,140,251,145,220,103,2,136,179,140,251,172,223,103,2,0,0,0,0,0,0,0,0,1,10,0,83,116,97,116,101,32,82,111,97,100,12,54,107,0,21,3,1,238,78,0,0,0,0,0,0,0,0,0,0,4,0,84,192,140,251,27,45,104,2,96,206,140,251,191,67,104,2,188,2,0,0,245,2,0,0,1,10,0,83,116,97,116,101,32,82,111,97,100,12,54,107,0,25,3,1,238,78,0,0,0,0,0,0,0,0,0,0,4,0,83,189,140,251,151,7,104,2,84,192,140,251,27,45,104,2,44,1,0,0,187,2,0,0,1,10,0,83,116,97,116,101,32,82,111,97,100,12,54,107,0,25,3,1,238,78,0,0,0,0,0,0,0,0,0,0,4,0,83,189,140,251,151,7,104,2,84,192,140,251,27,45,104,2,44,1,0,0,187,2,0,0,1,10,0,83,116,97,116,101,32,82,111,97,100,12,54,107,0,102,3,1,238,78,0,0,0,0,0,0,0,0,0,0,4,0,53,161,140,251,242,203,103,2,120,161,140,251,54,199,103,2,0,0,0,0,0,0,0,0,1,10,0,83,116,97,116,101,32,82,111,97,100,12,54,107,0,103,3,1,238,78,0,0,0,0,0,0,0,0,0,0,4,0,120,161,140,251,54,199,103,2,7,162,140,251,120,198,103,2,180,0,0,0,199,0,0,0,1,11,0,66,97,121,97,114,100,32,76,97,110,101,12,54,107,0,138,3,1,238,78,0,0,0,0,0,0,0,0,0,0,4,0,53,161,140,251,242,203,103,2,1,163,140,251,203,207,103,2,0,0,0,0,0,0,0,0,1,10,0,83,116,97,116,101,32,82,111,97,100,12,54,107,0,172,3,1,238,78,0,0,0,0,0,0,0,0,0,0,4,0,136,179,140,251,172,223,103,2,110,180,140,251,216,226,103,2,0,0,0,0,0,0,0,0,1,10,0,83,116,97,116,101,32,82,111,97,100,12,54,107,0,210,3,1,238,78,0,0,0,0,0,0,0,0,0,0,4,0,235,184,140,251,58,246,103,2,28,185,140,251,49,247,103,2,100,0,0,0,123,0,0,0,1,10,0,83,116,97,116,101,32,82,111,97,100,12,54,107,0,213,3,1,238,78,0,0,0,0,0,0,0,0,0,0,4,0,28,185,140,251,49,247,103,2,16,186,140,251,80,250,103,2,124,0,0,0,199,0,0,0,1,10,0,83,116,97,116,101,32,82,111,97,100,12,54,11,80,44,1,1,238,78,0,0,0,0,0,0,0,0,0,0,4,0,60,238,140,251,30,171,104,2,40,240,140,251,118,128,104,2,0,0,0,0,0,0,0,0,0,0,0,12,54,11,80,51,1,1,238,78,0,0,0,0,0,0,0,0,0,0,4,0,40,240,140,251,118,128,104,2,96,206,140,251,191,67,104,2,0,0,0,0,0,0,0,0,0,0,0,12,54,11,80,52,1,1,238,78,0,0,0,0,0,0,0,0,0,0,4,0,96,206,140,251,191,67,104,2,83,189,140,251,151,7,104,2,0,0,0,0,0,0,0,0,0,0,0,12,54,11,80,52,1,1,238,78,0,0,0,0,0,0,0,0,0,0,4,0,96,206,140,251,191,67,104,2,83,189,140,251,151,7,104,2,0,0,0,0,0,0,0,0,0,0,0,12,54,11,80,65,1,1,238,78,0,0,0,0,0,0,0,0,0,0,4,0,83,189,140,251,151,7,104,2,7,162,140,251,120,198,103,2,0,0,0,0,0,0,0,0,0,0,0,12,54,0,144,5,2,1,238,78,0,0,0,0,0,0,0,0,0,0,4,0,60,238,140,251,30,171,104,2,7,162,140,251,120,198,103,2,0,0,0,0,0,0,0,0,0,0,0,12,54,0,144,5,2,1,238,78,0,0,0,0,0,0,0,0,0,0,4,0,60,238,140,251,30,171,104,2,7,162,140,251,120,198,103,2,0,0,0,0,0,0,0,0,0,0,0,18,0,70,97,118,111,114,32,50,48,54,32,97,116,32,101,119,105,110,103,49,138,1,0,5,0,0,0,1,0,0,0,36,0,78,111,114,116,104,32,72,97,114,114,105,115,111,110,32,83,116,114,101,101,116,44,32,80,114,105,110,99,101,116,111,110,44,32,78,74,186,230,2,0,1,12,54,107,0,210,0,0,0,0,0,1,8,0,0,0,0,8,0,0,0,2,0,0,0,12,54,107,0,210,0,1,0,0,0,0,0,0,0,0,0,0,0,0,6,0,106,226,140,251,165,232,103,2,171,221,140,251,21,239,103,2,44,1,0,0,143,1,0,0,1,21,0,78,111,114,116,104,32,72,97,114,114,105,115,111,110,32,83,116,114,101,101,116,12,54,11,80,64,1,1,0,0,0,0,0,0,0,0,0,0,0,0,6,0,185,207,140,251,214,249,103,2,1,0,141,251,185,192,103,2,0,0,0,0,0,0,0,0,1,21,0,78,111,114,116,104,32,72,97,114,114,105,115,111,110,32,83,116,114,101,101,116,22,0,65,114,111,117,110,100,32,65,76,75,32,111,110,32,72,97,114,114,105,115,111,110,49,138,1,0]
}
datasetThe data region in which the route is located. Possible values for the routePath request are:

  1. Current
  2. PCM_EU
  3. PCM_OC
  4. PCM_SA
  5. PCM_GT (GeoTrac)
  6. PCM_AF
  7. PCM_AS
  8. PCM_ME
  9. PCM_NA
  10. PCM_WW
  11. PCM_JP
  12. PCM_NASL
  13. PCM_MX

Default is Current. If an unlicensed dataset is specified, the request will result in a forbidden request, i.e. a 403 HTTP Response.

Example:

&dataset=PCM_ME

See also
    ALK.PCM.Model.RegionalDataSet

Returns
JSON Formmated object of type ALK.PCM.Model.ServiceModels.ImportAFSetResponseBody

{
    "SetID": 72185254
}

◆ DeleteAvoidFavors()

int DeleteAvoidFavors(string setID,
int[] afIDs,
RegionalDataSet dataset 
)
inherited

The /AvoidFavorSets/{setID}/AvoidFavors DELETE removes Avoid/Favors from a specified Avoid/Favor set.

REST METHOD: DELETE
REST URI:

/AvoidFavorSets/{setID}/AvoidFavors?dataset={dataset}

Parameters
setIDThe setID is the numeric identifier of the Avoid/Favor Set.
afIDsThe afIDs is an array of numeric identifiers provided in the body of the request. They identify the Avoid/Favors within the specified set.
datasetThe data region in which the route is located. Possible values for the routePath request are:

  1. Current
  2. PCM_EU
  3. PCM_OC
  4. PCM_SA
  5. PCM_GT (GeoTrac)
  6. PCM_AF
  7. PCM_AS
  8. PCM_ME
  9. PCM_NA
  10. PCM_WW
  11. PCM_JP
  12. PCM_NASL
  13. PCM_MX

Default is Current. If an unlicensed dataset is specified, the request will result in a forbidden request, i.e. a 403 HTTP Response.

Example:

&dataset=PCM_ME

See also
    ALK.PCM.Model.RegionalDataSet

Returns
The number of Avoid/Favors successfully deleted.

◆ CreateAFGroup()

int CreateAFGroup(string setID,
AFGroupBase group,
RegionalDataSet dataset 
)
inherited

The /AvoidFavorSets/{setID}/Groups POST request creates an AFGroup within the specified Avoid/Favor Set.

REST METHOD: POST
REST URI:

/AvoidFavorSets/{setID}/Groups?dataset={dataset}

Parameters
setIDThe setID is the numeric identifier of the Avoid/Favor Set.
groupThis parameter must be encoded into the body of the request.

Contains a structure to add an AFGroup to a Avoid/Favor Set.
See ALK.Common.Model.AFGroupBase.

Example:

{
  "GroupName": "Group1",
  "GroupComments" : "A comment",
  "AFType" : 3
}
datasetThe data region in which the route is located. Possible values for the routePath request are:

  1. Current
  2. PCM_EU
  3. PCM_OC
  4. PCM_SA
  5. PCM_GT (GeoTrac)
  6. PCM_AF
  7. PCM_AS
  8. PCM_ME
  9. PCM_NA
  10. PCM_WW
  11. PCM_JP
  12. PCM_NASL
  13. PCM_MX

Default is Current. If an unlicensed dataset is specified, the request will result in a forbidden request, i.e. a 403 HTTP Response.

Example:

&dataset=PCM_ME

See also
    ALK.PCM.Model.RegionalDataSet

Returns
The group ID of the newly created group.

◆ GetAFGroups()

List<AFGroup> GetAFGroups(string setID,
bool? detailForAll,
double[] corner1,
double[] corner2,
string filter,
RegionalDataSet dataset 
)
inherited

The /AvoidFavorSets/{setID}/Groups GET request retrieves avoid/favor sets.

REST METHOD: GET
REST URI:

/AvoidFavorSets/{setID}/Groups?detail={detailForAll}&corner1={corner1}&corner2={corner2} &filter={filter}&dataset={dataset}

Parameters
setIDThe setID is the numeric identifier of the Avoid/Favor Set. The default value is "-1" and that searches against all Avoid/Favor sets.
detailForAllIndicates whether or not to return avoid/favor link geometries or just the IDs. Possible values are boolean:

  • true
  • false

The default is false if no setID or tag is specified, true if the setID is specified.

Example:

&detail=true
datasetThe data region in which the route is located. Possible values for the routePath request are:

  1. Current
  2. PCM_EU
  3. PCM_OC
  4. PCM_SA
  5. PCM_GT (GeoTrac)
  6. PCM_AF
  7. PCM_AS
  8. PCM_ME
  9. PCM_NA
  10. PCM_WW
  11. PCM_JP
  12. PCM_NASL
  13. PCM_MX

Default is Current. If an unlicensed dataset is specified, the request will result in a forbidden request, i.e. a 403 HTTP Response.

Example:

&dataset=PCM_ME

See also
    ALK.PCM.Model.RegionalDataSet

corner1This parameter contains geographic coordinates used to be the bounding box top left corner.The coordinates are represented by a comma separated pair of floating point numbers representing longitude and latitude respectively in the Web Mercator ESPG:3857 projection.

There must be at least two numbers.

Example:

&corner1=-76.12345,42.12345
corner2This parameter contains geographic coordinates used to be the bounding box bottom right corner.The coordinates are represented by a comma separated pair of floating point numbers representing longitude and latitude respectively in the Web Mercator ESPG:3857 projection.

There must be at least two numbers.

Example:

&corner2=-76.12345,42.12345
filterContains a string to use in partial match search critera.

Example:

&filter=A%20match%20string
Returns
A JSON formatted array containing an array of the selected AFGroups.

Example of a JSON formatted array of ALK.Common.Model.AFSet.

[
  {
     "GroupID": 234233,
     "GroupName": "myGroup1",
     "SetID": 269944,
     "GroupComments": "My comment",
     "AvoidFavorType: 3,
     "GroupLinks": [
         {
             "AFGroupID": 1069097,
             "AvoidFavorID": 24442873,
             "AvoidFavorType": 1,
             "Comment": null,
             "ExtraInfo": null,
             "Geometries": [
                 [
                     [-83.4,41.33],
                     [-84.234,41.234]
                 ]
             ],
             "GridID": 0,
             "GridLevel": 0,
             "LinkID": 0,
             "LinkPoints": null,
             "PLIDs": [
                 82542423
             ]
         }
     ]
  }
]

◆ UpdateAvoidFavorGroup()

int UpdateAvoidFavorGroup(string setID,
string groupID,
string destinationSetId,
AFGroupBase groupToUpdate,
RegionalDataSet dataset 
)
inherited

The /AvoidFavorSets/AvoidFavor PUT request updates a specified AFGroup within the specified Avoid/Favor Set.

REST METHOD: PUT
REST URI:

/AvoidFavorSets/{setID}/Group/{groupID}?destinationSetId={destinationSetId}&dataset={dataset}

Parameters
setIDThe setID is the numeric identifier of the Avoid/Favor Set.
groupIDThe groupID is the numeric identifier of the AFGroup within the specified Avoid/Favor set.
destinationSetIdThe existing avoid/favor set ID where all of the target set's avoid/favors will be moved.

Example:

&destinationSetId=231334223
groupToUpdateContains a structure to add an AFGroup to a Avoid/Favor Set.
See ALK.Common.Model.AFGroupBase.

Example:

{
  "GroupName": "Group1",
  "GroupComments" : "A comment",
  "AFType" : 3
}
datasetThe data region in which the route is located. Possible values for the routePath request are:

  1. Current
  2. PCM_EU
  3. PCM_OC
  4. PCM_SA
  5. PCM_GT (GeoTrac)
  6. PCM_AF
  7. PCM_AS
  8. PCM_ME
  9. PCM_NA
  10. PCM_WW
  11. PCM_JP
  12. PCM_NASL
  13. PCM_MX

Default is Current. If an unlicensed dataset is specified, the request will result in a forbidden request, i.e. a 403 HTTP Response.

Example:

&dataset=PCM_ME

See also
    ALK.PCM.Model.RegionalDataSet

Returns
The integer "1" if the update was successful.

◆ DeleteAvoidFavorGroup()

int DeleteAvoidFavorGroup(string setID,
string groupID,
RegionalDataSet dataset 
)
inherited

The /AvoidFavorSets/{setID}/Group/{groupID} DELETE request removes an existing Avoid/Favor set from the specified Avoid/Favor Set.

REST METHOD: DELETE
REST URI:

/AvoidFavorSets/{setID}/Group/{groupID}?dataset={dataset}

Parameters
setIDThe setID is the numeric identifier of the Avoid/Favor Set.
groupIDThe groupID is the numeric identifier of the AFGroup within the specified set.
datasetThe data region in which the route is located. Possible values for the routePath request are:

  1. Current
  2. PCM_EU
  3. PCM_OC
  4. PCM_SA
  5. PCM_GT (GeoTrac)
  6. PCM_AF
  7. PCM_AS
  8. PCM_ME
  9. PCM_NA
  10. PCM_WW
  11. PCM_JP
  12. PCM_NASL
  13. PCM_MX

Default is Current. If an unlicensed dataset is specified, the request will result in a forbidden request, i.e. a 403 HTTP Response.

Example:

&dataset=PCM_ME

See also
    ALK.PCM.Model.RegionalDataSet

Returns
The integer "1" if the deletion was successful.

◆ DeleteAvoidFavorGroups()

int DeleteAvoidFavorGroups(string setID,
int[] groupIDs,
RegionalDataSet dataset 
)
inherited

The /AvoidFavorSets/{setID}/AvoidFavors DELETE request removes Avoid/Favors from a specified Avoid/Favor set.

REST METHOD: DELETE
REST URI:

/AvoidFavorSets/{setID}/AvoidFavors?dataset={dataset}

Parameters
setIDThe setID is the numeric identifier of the Avoid/Favor Set.
groupIDsThe groupIDs is an array of numeric identifiers provided in the body of the request. They identify the AFgroups within the specified set.
datasetThe data region in which the route is located. Possible values for the routePath request are:

  1. Current
  2. PCM_EU
  3. PCM_OC
  4. PCM_SA
  5. PCM_GT (GeoTrac)
  6. PCM_AF
  7. PCM_AS
  8. PCM_ME
  9. PCM_NA
  10. PCM_WW
  11. PCM_JP
  12. PCM_NASL
  13. PCM_MX

Default is Current. If an unlicensed dataset is specified, the request will result in a forbidden request, i.e. a 403 HTTP Response.

Example:

&dataset=PCM_ME

See also
    ALK.PCM.Model.RegionalDataSet

Returns
The number of AFGroups successfully deleted.

◆ GetPlaceSets()

List<PlaceSet> GetPlaceSets(string setID,
string tag,
bool includePlaces,
string placeName,
int? catId,
string catName,
double[] corner1,
double[] corner2 
)
inherited

The /CustomPlaceSets/{setID} GET operation retrieves custom place sets.

REST METHOD: GET
REST URI:

/customPlaceSets/{setID=-1}?tag={tag}&includePlaces={includePlaces} &placeName={placeName}&catId={catId}&catName={catName} &corner1={corner1}&corner2={corner2}


Parameters are of the form &qname={pname}, where qname is the URI query parameter name, and pname is the corresponding parameter name. The parameters are listed below by their pname.

Parameters
setIDThe setID is the numeric identifier of the Custom Place Set. The default value is "-1" and that searches against all custom place sets.
tagThis parameter contains the tag of a Custom Place Set.

Examples:

&tag=CatTag1
includePlacesIndicates whether the result should contain the set's Custom Places. Possible values are boolean:

  • true
  • false

Default is false.

Example:

&includPlaces=true
placeNameThis parameter contains the name of a Custom Place in a Custom Place Set. It refines the search. It is only effective with the includePlaces set to true.

Examples:

&placeName=A%20Place%20Name
catIdThis parameter contains the Custom Place Category ID. It refines the search. It is only effective with the includePlaces set to true.

Its format is an integer.

Examples:

&catId=3214
catNameThis parameter contains the Custom Place Category name. It refines the search. It is only effective with the includePlaces set to true.

Examples:

&catName=FireHydrants
corner1This parameter contains geographic coordinates used to be the bounding box top left corner.The coordinates are represented by a comma separated pair of floating point numbers representing longitude and latitude respectively in the Web Mercator ESPG:3857 projection.

There must be at least two numbers.

Example:

&corner1=-76.12345,42.12345
corner2This parameter contains geographic coordinates used to be the bounding box bottom right corner.The coordinates are represented by a comma separated pair of floating point numbers representing longitude and latitude respectively in the Web Mercator ESPG:3857 projection.

There must be at least two numbers.

Example:

&corner2=-76.12345,42.12345
Returns
A JSON formatted response containing the matched Custom Place Sets.

Example of a JSON formatted array of ALK.Common.Model.PlaceSet.

 [
    {
       "Name": "1501102696277",
       "Tag": "a-tag",
       "Id": 262133,
       "Places": [
           {
               "Address": {
                   "StreetAddress": "1 Main St",
                   "City": "Trenton",
                   "State": "NJ",
                   "Zip": "08832",
                   "County": null,
                   "Country": "USA",
                   "SPLC": "0933397177234",
                   "CountryPostalFilter": 0,
                   "AbbreviationFormat": 0
               },
               "Coords": {
                   "Lat": "41.6",
                   "Lon": "-76.2"
               },
               "Region": 4,
               "Label": "A Label",
               "PlaceName": "Test_placeName",
               "CategoryId": 34323,
               "Heading": null,
               "Info": null,
               "Phone": "123-36-7890",
               "PlaceType": null,
               "SetId": 262133,
               "Speed": null,
               "SiteId": null,
               "Id": 192148421
           }
       ]
   }
 ]

◆ AddCustomPlaceSet()

int AddCustomPlaceSet(string setName,
string setTag 
)
inherited

The /CustomPlaceSets POST operation creates a new custom place set.

REST METHOD: POST
REST URI:

/CustomPlaceSets?name={setName}&tag={setTag}


Parameters are of the form &qname={pname}, where qname is the URI query parameter name, and pname is the corresponding parameter name. The parameters are listed below by their pname.

Parameters
setNameThis parameter contains the name of a Custom Place Set.

Examples:

&name=FireHydrants
setTagThis parameter contains the tag of a Custom Place Set.

Examples:

&tag=CatTag1
Returns
An integer representing the Custom Place Set Id.

◆ UpdateCustomPlaceSet()

int UpdateCustomPlaceSet(string setID,
string newName,
string newTag 
)
inherited

The /CustomPlaceSets/{setID} PUT modifies an existing custom place set.

REST METHOD: PUT
REST URI:

/CustomPlaceSets/{setID}?name={newName}&tag={newTag}


Parameters are of the form &qname={pname}, where qname is the URI query parameter name, and pname is the corresponding parameter name. The parameters are listed below by their pname.

Parameters
setIDThe setID is the numeric identifier of the Custom Place Set.
newNameThis parameter contains the name of a Custom Place Set.

Examples:

&name=FireHydrants
newTagThis parameter contains the tag of a Custom Place Set.

Examples:

&tag=CatTag1
Returns
The integer "1" if the update was successful.

◆ DeleteCustomPlaceSet()

int DeleteCustomPlaceSet(string setID)
inherited

The /CustomPlaceSets DELETE removes an existing custom place set.

REST METHOD: DELETE
REST URI:

/CustomPlaceSets/{setID}

The setID is the numeric identifier of the Custom Place Set.

Parameters
setIDThe setID is the numeric identifier of the Custom Place Set.
Returns
The integer "1" if the deletion was successful.

◆ AddCustomPlace()

int AddCustomPlace(string setID,
AddPlace placeToAdd 
)
inherited

The /CustomPlaceSets/CustomPlace POST operation creates a new custom place within the specified Custom Place Set.

REST METHOD: POST
REST URI:

/CustomPlaceSets/{setID}/CustomPlace

Parameters
setIDThe setID is the numeric identifier of the Custom Place Set.
placeToAddContains a structure to add a Custom Place to a Custom Place Set.
See ALK.Common.Model.AddPlace.

Example:

{
  "placeToAdd": {
      "Address" : {
          "State" : "NJ",
          "City" : "Trenton"
      },
      "Coords" : {
          "Lat" : "41.6",
          "Lon" : "-76.2"
      },
      "Region" : 4,
      "Label" : null,
      "PlaceName" : "A Store",
      "Phone" : "609-555-1212"
  }
}
Returns
An JSON formatted response.

Example of a result returned from ALK.PCM.PortalService.IRestCustomPlaceService.AddCustomPlace

{
   "AddCustomPlaceResult": 19234332344
}

◆ UpdateCustomPlace()

int UpdateCustomPlace(string setID,
Place placeToUpdate 
)
inherited

The /CustomPlaceSets/CustomPlace PUT operation updates an existing custom place within the specified Custom Place Set.

REST METHOD: PUT
REST URI:

/CustomPlaceSets/{setID}/CustomPlace

Parameters
setIDThe setID is the numeric identifier of the Custom Place Set.
placeToUpdateContains a structure to update a Custom Place in a Custom Place Set. The Id specified in the structure refers to the existing custom place.
See ALK.Common.Model.Place.

Example:

{
  "placeToUpdate": {
      "Id" : 234234,
      "Address" : {
          "State" : "NJ",
          "City" : "Trenton"
      },
      "Coords" : {
          "Lat" : "41.6",
          "Lon" : "-76.2"
      },
      "Region" : 4,
      "Label" : null,
      "PlaceName" : "A Store",
      "Phone" : "609-555-1212"
  }
}
Returns
The integer "1" if the update was successful.

◆ DeleteCustomPlace()

int DeleteCustomPlace(string setID,
string placeID 
)
inherited

The /CustomPlaceSets/{setID}/CustomPlace/{placeID} DELETE removes an existing custom place set from the specified Custom Place Set.

REST METHOD: DELETE
REST URI:

/CustomPlaceSets/{setID}/CustomPlace/{placeID}

Parameters
setIDThe setID is the numeric identifier of the Custom Place Set.
placeIDThe placeID is the numeric identifier of the Custom Place.
Returns
The integer "1" if the deletion was successful.

◆ GetCustomCategories()

List<PlaceCategory> GetCustomCategories(string catID,
string tag,
string catName 
)
inherited

The /CustomCategories/{catID} GET operation retrieves custom categories.

REST METHOD: GET
REST URI:

/CustomCategories/{catID=-1}?tag={tag}&catName={catName}


Parameters are of the form &qname={pname}, where qname is the URI query parameter name, and pname is the corresponding parameter name. The parameters are listed below by their pname.

Parameters
catIDThe catID is the numeric identifier of the Custom Category. The default value is "-1" and that searches against all custom categories.
tagThis parameter contains the tag of a Custom Category.

Examples:

&tag=CatTag1
catNameThis parameter contains the Custom Place Category name. It refines the search. It is only effective with the includePlaces set to true.

Examples:

&catName=FireHydrants
Returns
A JSON formatted response containing the Custom Categories that matched the search critera.

Example of a JSON formatted array of ALK.Common.Model.PlaceCategory.

 [
    {
       "Icon": "Food",
       "IconURL" : null,
       "Name" : "Asian Fusion Restaurants",
       "Tag": "a-tag",
       "Id": 262133
    }
 ]

◆ AddCustomCategory()

int AddCustomCategory(PlaceCategory category)
inherited

The /CustomCategories POST operation creates a new custom category.

REST METHOD: POST
REST URI:

/CustomCategories


Parameters are of the form &qname={pname}, where qname is the URI query parameter name, and pname is the corresponding parameter name. The parameters are listed below by their pname.

Parameters
categoryA JSON formatted data for a category.

Example of a JSON formatted ALK.Common.Model.PlaceCategory.

    {
       "Icon": "Food",
       "IconURL" : null,
       "Name" : "Asian Fusion Restaurants",
       "Tag": "a-tag",
       "Id": 262133
    }
Returns
A JSON response:
Example of a result returned from ALK.PCM.PortalService.IRestCustomPlaceService.AddCustomCategory

{
   "AddCustomCategoryResult": 30014
}

◆ UpdateCustomCategory()

int UpdateCustomCategory(PlaceCategory category)
inherited

The /CustomCategories PUT operation modifies an existing custom category.

REST METHOD: POST
REST URI:

/CustomCategories


Parameters are of the form &qname={pname}, where qname is the URI query parameter name, and pname is the corresponding parameter name. The parameters are listed below by their pname.

Parameters
categoryA JSON formatted data for a category.

Example of a JSON formatted ALK.Common.Model.PlaceCategory.

    {
       "Icon": "Food",
       "IconURL" : null,
       "Name" : "Asian Fusion Restaurants",
       "Tag": "a-tag",
       "Id": 262133
    }
Returns
A JSON response.
Example of a result returned from ALK.PCM.PortalService.IRestCustomPlaceService.UpdateCustomCategory

{
   "UpdateCustomCategoryResult": 1
}

◆ DrawMap()

Stream DrawMap(double[] corner1,
double[] corner2,
int width,
int height,
DrawerGroups drawerGroups,
string format,
MapStylestyle,
string projection,
DataRegionregion,
RegionalDataSet dataset,
bool? init,
List< double[]> pinCoords,
PinColorpinColor,
MapImageOption imgOption,
string language,
BackgroundImageProviderimgSrc 
)
inherited

The /map GET request retrieves a map tile.

REST METHOD: GET
REST URI:

/map?pt1={corner1}&pt2={corner2}&width={width}&height={height}
           &drawergroups={drawerGroups}&format={format}
           &style={style}&srs={projection}
           &region={region}&dataset={dataset}&init={init}
           &imgOption={imgOption}&pins={pinCoords}&color={pinColor}
           &language={language}&imgSrc={imgSrc}


Parameters are of the form &qname={pname}, where qname is the URI query parameter name, and pname is the corresponding parameter name. The parameters are listed below by their pname.

Parameters
corner1This parameter contains geographic coordinates used to be the map view port bounding box top left corner.The coordinates are represented by a comma separated pair of floating point numbers representing longitude and latitude respectively in the Web Mercator ESPG:3857 projection.

There must be at least two numbers.

Example:

&pt1=-76.12345,42.12345
corner2This parameter contains geographic coordinates used to be the map view port bounding box bottom right corner.The coordinates are represented by a comma separated pair of floating point numbers representing longitude and latitude respectively in the Web Mercator ESPG:3857 projection.

There must be at least two numbers.

Example:

&pt2=-76.12345,42.12345
widthIndicates the width of a map tile in pixels. The format for this value is an integer.

Example:

&width=256
heightIndicates the height of a map tile in pixels. The format for this value is an integer.

Example:

&height=256
drawerGroupsA comma-separated list of groups of layers to draw on the map, or a bitwise OR of the numeric values. Possible values are: Commercial (includes truck restrictions, designations and hazardous materials), Borders (includes state and county boundaries) and Areas (includes parks, military bases, airports and urban areas).

  1. Cities
  2. Labels (includes road labels and shields)
  3. Roads (includes roads and railroads)
  4. Commercial (includes truck restrictions and hazmat)
  5. Borders (includes state and county boundaries)
  6. Areas (includes parks, military bases, airports, and urban areas)

Default is none, i.e. empty list.

Example:

&drawerGroups=Cities,Roads
formatThe image format in which map tiles are retrieved. Possible values are:

  1. image/jpeg
  2. image/png

Default is image/jpeg.

Example:

&FORMAT=image/jpeg
styleThe style in which the map tiles are retrieved. Possible values are:

  1. Default - Indicates the default map style.
  2. Classic - Indicates a classic motif style.
  3. Monochrome - Indicates a monochrome style.
  4. RoadAtlas - Indicates a style that mimics a road atlas look and feel.
  5. Darkness - DISCONTINUED - Indicates a dark style, replaced with Night.
  6. Modern - DISCONTINUED -Indicates a modern style, replaced with Default.
  7. Contemporary - Indicates a contemporary style.
  8. Night - Indicates a style optimized for night viewing.
  9. Satellite - Indicates the style for satellite imagery.
  10. Lightness - Indicates the style for lightness style.
  11. Smooth - Indicates the style for smooth style.
  12. Terrain - Indicates the style for terrain imagery.

Default is Default.

Example:

&style=Night
projectionThe projection in which the coordinates are interpreted. Possible values are:

  • EPSG:900913 - Web Mercator Projection.
  • EPSG:4326 - Fixed LonLat Projection.

Default is EPSG:900913.

Example for when Fixed LonLat Projection is desired:

&srs=EPSG:4326
regionThe data region in which the route is located. Possible values are:

  1. Unknown - Africa
  2. AF - Africa
  3. AS - Asia
  4. EU - Europe
  5. NA - North America
  6. OC - Oceania; Australia
  7. SA - South America
  8. ME - Middle East

Default is NA (North America).

Example:

&region=EU

See also
    ALK.Common.Model.DataRegion

datasetThe data region in which the route is located. Possible values for the routePath request are:

  1. Current
  2. PCM_EU
  3. PCM_OC
  4. PCM_SA
  5. PCM_GT (GeoTrac)
  6. PCM_AF
  7. PCM_AS
  8. PCM_ME
  9. PCM_NA
  10. PCM_WW
  11. PCM_JP
  12. PCM_NASL
  13. PCM_MX

Default is Current. If an unlicensed dataset is specified, the request will result in a forbidden request, i.e. a 403 HTTP Response.

Example:

&dataset=PCM_ME

See also
    ALK.PCM.Model.RegionalDataSet

initIndicates whether this is the initial map tile request. Possible values are boolean:

  • true
  • false

Default is true.

Example:

&init=false
pinCoordsThe list of coordinates of pins to draw on the map. Each pin coordinate is specified as a comma separated pairs of floating point numbers, representing longitude and latitude respectively in the Web Mercator ESPG:3857 projection, or specified by the srs query parameter. The list of pin coordinates is represented by a semi-colon separated sequence of stops.

Example:

&pinCoords=-76.12345,42.12345;-76.12312,42.12312;-76.12456,42.12456
pinColorIndicates the color in which to draw pins on the map. Possible values are:

  1. Blue
  2. Green
  3. Pink
  4. Yellow

Default is Blue.

Example:

&pinColor=Pink

See also
    ALK.PCM.Model.PinColor

imgOptionIndicates the option of drawing the map in conjunction with the Satellite style query parameter. Possible values are:

  1. Both - Base map is overlayed on background image.
  2. Background - Pure image underlay with no base map overlay.
  3. Foreground - Pure base map transparent image with no underlay.

Default is Both.

Example:

&imgOption=Background

See also
    ALK.PCM.Model.MapImageOption

languageThe language in which the response shall be written.

Possible values are:

  1. ENUS - English - United States
  2. ENGB - English - Great Britain
  3. ES - Spanish
  4. DE - German
  5. FR - French
  6. IT - Italian



Example:

&language=DE

See also
    ALK.PCM.Model.LanguageType

imgSrcIndicates the source of background of the map in conjunction with the Satellite style query parameter. Possible values are:

  1. Default - DigitalGlobeAPIImagery
    Default image provider.
  2. Sat1 - DigitalGlobe
    Premium satellite image provider for tiles and single image requests.
  3. Sat2 - DigitalGlobeConsumer
    Premium satellite image provider for tiles and single image requests.
  4. Sat3 - DigitalGlobeTrueCurrency
    Premium satellite image provider for tiles and single image requests.
  5. Sat4 - DigitalGlobeColorConsumer
    Premium satellite image provider for tiles and single image requests.
  6. Sat5 - DigitalGlobeAPIVivid
    Premium satellite image provider for tiles and single image requests.
  7. Sat6 - DigitalGlobeAPIRecent
    Premium satellite image provider for tiles and single image requests.
  8. ALKCurated - ALKCurated
    Standard satellite image provider for tiles and single image requests.

Default is Default.

Example:

&imgSrc=Sat5

See also
    ALK.PCM.Model.BackgroundImageProvider

Returns
A byte array containing an image.

◆ DrawMapRoutes()

Stream DrawMapRoutes(MapRoutesRequestBody request,
RegionalDataSet dataset 
)
inherited

The /mapRoutes POST request takes a list of geographic coordinate points that make up the requested route and draws the route on a map image.

REST METHOD: POST
REST URI:

/mapRoutes?dataset={dataset}


Parameters are of the form &qname={pname}, where qname is the URI query parameter name, and pname is the corresponding parameter name. The parameters are listed below by their pname.

Parameters
requestContains a structure to find/draw a route on a map.
See ALK.PCM.Model.ServiceModels.MapRoutesRequestBody.

Example:

{
    "Map":{
         "Viewport":{
            "Center":null,
            "ScreenCenter":null,
            "ZoomRadius":0,
            "CornerA":null,
            "CornerB":null,
            "Region":0
         },
         "Projection":0,
         "Style":0,
         "ImageOption":0,
         "Width":1366,
         "Height":768,
         "Drawers":[
            8,
            2,
            7,
            17,
            15
         ],
         "LegendDrawer":[
            {
               "Type":0,
               "DrawOnMap":true
            }
         ],
         "GeometryDrawer":null,
         "PinDrawer":null,
         "PinCategories":null,
         "TrafficDrawer":null,
         "MapLayering":0,
         "Language":null,
         "ImageSource":null
      },
    "Routes":[
         {
            "RouteId":null,
            "Stops":[
               {
                  "Address":{
                     "StreetAddress":null,
                     "City":"Miami",
                     "State":"FL",
                     "Zip":"",
                     "County":null,
                     "Country":null,
                     "SPLC":null,
                     "CountryPostalFilter":0,
                     "AbbreviationFormat":0
                  },
                  "Coords":null,
                  "Region":4,
                  "Label":null,
                  "PlaceName":null,
                  "Costs":null,
                  "IsViaPoint":false
               },
               {
                  "Address":{
                     "StreetAddress":null,
                     "City":"Chicago",
                     "State":"IL",
                     "Zip":"",
                     "County":null,
                     "Country":null,
                     "SPLC":null,
                     "CountryPostalFilter":0,
                     "AbbreviationFormat":0
                  },
                  "Coords":null,
                  "Region":4,
                  "Label":null,
                  "PlaceName":null,
                  "Costs":null,
                  "IsViaPoint":false
               }
            ],
            "Options":{
               "AFSetIDs":null,
               "BordersOpen":null,
               "ClassOverrides":0,
               "DistanceUnits":0,
               "ElevLimit":null,
               "FerryDiscourage":false,
               "FuelRoute":false,
               "HazMatType":0,
               "HighwayOnly":true,
               "HubRouting":false,
               "OverrideRestrict":false,
               "RouteOptimization":0,
               "RoutingType":0,
               "TollDiscourage":false,
               "TruckCfg":null,
               "UseAvoidsAndFavors":false,
               "VehicleType":0
            },
            "FuelOptions":null,
            "DrawLeastCost":false,
            "RouteLegOptions":{
			    "LineOptions":[{
				    "Color":{
					    "Red":147,
					    "Green":112,
					    "Blue":219
				    },
				    "Width":8
			    }],
			    "TextOptions":[{
				    "Color":{
					    "Red":255,
					    "Green":255,
					    "Blue":255
				    },
				"FontSize":20
			    }]
		    },
            "StopLabelDrawer":0
         }
      ]
}
datasetThe data region in which the route is located. Possible values for the routePath request are:

  1. Current
  2. PCM_EU
  3. PCM_OC
  4. PCM_SA
  5. PCM_GT (GeoTrac)
  6. PCM_AF
  7. PCM_AS
  8. PCM_ME
  9. PCM_NA
  10. PCM_WW
  11. PCM_JP
  12. PCM_NASL
  13. PCM_MX

Default is Current. If an unlicensed dataset is specified, the request will result in a forbidden request, i.e. a 403 HTTP Response.

Example:

&dataset=PCM_ME

See also
    ALK.PCM.Model.RegionalDataSet

Returns
A byte array that contains an image.

◆ DrawMapTileAsync()

Task<Stream> DrawMapTileAsync(int x,
int y,
int z,
string format,
DrawerGroups drawerGroups,
MapStylestyle,
string projection,
DataRegion region,
RegionalDataSetdataset,
bool? init,
MapImageOption imgOption,
string language,
BackgroundImageProviderimgSrc,
TileImageRatioratio,
TileSizewidth,
VectorMapStylevectorMapStyle 
)
inherited

The /maptile GET request retrieves a map tile image.

REST METHOD: GET
REST URI:

/maptile?x={x}&y={y}&z={z}&drawergroups={drawerGroups}&format={format}
              &style={style}&srs={projection}&region={region}
              &dataset={dataset}&init={init}&imgOption={imgOption}
              &language={language}&imgSrc={imgSrc}


Parameters are of the form &qname={pname}, where qname is the URI query parameter name, and pname is the corresponding parameter name. The parameters are listed below by their pname.

Parameters
xThis parameter x parameter in the x,y,z coordinate system of a map tile.

Example:

&x=4
yThis parameter y parameter in the x,y,z coordinate system of a map tile.

Example:

&y=5
zThis parameter z parameter in the x,y,z coordinate system of a map tile.

Example:

&z=3
formatThe image format in which map tiles are retrieved. Possible values are:

  1. image/jpeg
  2. image/png

Default is image/jpeg.

Example:

&FORMAT=image/jpeg
drawerGroupsA comma-separated list of groups of layers to draw on the map, or a bitwise OR of the numeric values. Possible values are: Commercial (includes truck restrictions, designations and hazardous materials), Borders (includes state and county boundaries) and Areas (includes parks, military bases, airports and urban areas).

  1. Cities
  2. Labels (includes road labels and shields)
  3. Roads (includes roads and railroads)
  4. Commercial (includes truck restrictions and hazmat)
  5. Borders (includes state and county boundaries)
  6. Areas (includes parks, military bases, airports, and urban areas)

Default is none, i.e. empty list.

Example:

&drawerGroups=Cities,Roads
styleThe style in which the map tiles are retrieved. Possible values are:

  1. Default - Indicates the default map style.
  2. Classic - Indicates a classic motif style.
  3. Monochrome - Indicates a monochrome style.
  4. RoadAtlas - Indicates a style that mimics a road atlas look and feel.
  5. Darkness - DISCONTINUED - Indicates a dark style, replaced with Night.
  6. Modern - DISCONTINUED -Indicates a modern style, replaced with Default.
  7. Contemporary - Indicates a contemporary style.
  8. Night - Indicates a style optimized for night viewing.
  9. Satellite - Indicates the style for satellite imagery.
  10. Lightness - Indicates the style for lightness style.
  11. Smooth - Indicates the style for smooth style.
  12. Terrain - Indicates the style for terrain imagery.

Default is Default.

Example:

&style=Night
projectionThe projection in which the coordinates are interpreted. Possible values are:

  • EPSG:900913 - Web Mercator Projection.
  • EPSG:4326 - Fixed LonLat Projection.

Default is EPSG:900913.

Example for when Fixed LonLat Projection is desired:

&srs=EPSG:4326
regionThe data region in which the route is located. Possible values are:

  1. Unknown - Africa
  2. AF - Africa
  3. AS - Asia
  4. EU - Europe
  5. NA - North America
  6. OC - Oceania; Australia
  7. SA - South America
  8. ME - Middle East

Default is NA (North America).

Example:

&region=EU

See also
    ALK.Common.Model.DataRegion

datasetThe data region in which the route is located. Possible values for the routePath request are:

  1. Current
  2. PCM_EU
  3. PCM_OC
  4. PCM_SA
  5. PCM_GT (GeoTrac)
  6. PCM_AF
  7. PCM_AS
  8. PCM_ME
  9. PCM_NA
  10. PCM_WW
  11. PCM_JP
  12. PCM_NASL
  13. PCM_MX

Default is Current. If an unlicensed dataset is specified, the request will result in a forbidden request, i.e. a 403 HTTP Response.

Example:

&dataset=PCM_ME

See also
    ALK.PCM.Model.RegionalDataSet

initIndicates whether this is the initial map tile request. Possible values are boolean:

  • true
  • false

Default is true.

Example:

&init=false
imgOptionIndicates the option of drawing the map in conjunction with the Satellite style query parameter. Possible values are:

  1. Both - Base map is overlayed on background image.
  2. Background - Pure image underlay with no base map overlay.
  3. Foreground - Pure base map transparent image with no underlay.

Default is Both.

Example:

&imgOption=Background

See also
    ALK.PCM.Model.MapImageOption

languageThe language in which the response shall be written.

Possible values are:

  1. ENUS - English - United States
  2. ENGB - English - Great Britain
  3. ES - Spanish
  4. DE - German
  5. FR - French
  6. IT - Italian



Example:

&language=DE

See also
    ALK.PCM.Model.LanguageType

imgSrcIndicates the source of background of the map in conjunction with the Satellite style query parameter. Possible values are:

  1. Default - DigitalGlobeAPIImagery
    Default image provider.
  2. Sat1 - DigitalGlobe
    Premium satellite image provider for tiles and single image requests.
  3. Sat2 - DigitalGlobeConsumer
    Premium satellite image provider for tiles and single image requests.
  4. Sat3 - DigitalGlobeTrueCurrency
    Premium satellite image provider for tiles and single image requests.
  5. Sat4 - DigitalGlobeColorConsumer
    Premium satellite image provider for tiles and single image requests.
  6. Sat5 - DigitalGlobeAPIVivid
    Premium satellite image provider for tiles and single image requests.
  7. Sat6 - DigitalGlobeAPIRecent
    Premium satellite image provider for tiles and single image requests.
  8. ALKCurated - ALKCurated
    Standard satellite image provider for tiles and single image requests.

Default is Default.

Example:

&imgSrc=Sat5

See also
    ALK.PCM.Model.BackgroundImageProvider

ratioThe image ratio for the map tile, can be 1 or 2. Ignored unless using vector data.
widthThe tile height/width in pixels, either 256 or 512 is supported.
vectorMapStyleThe vector map style. If supplied, overrides style.
Returns
A byte array containing an image.

◆ DrawMapTileRTSAsync()

Task<Stream> DrawMapTileRTSAsync(int x,
int y,
int z,
DrawerGroups drawerGroups,
MapStylestyle,
string projection,
DataRegion region,
RegionalDataSetdataset,
bool? init,
MapImageOption imgOption,
string language,
BackgroundImageProviderimgSrc,
TileImageRatioratio,
TileSizewidth,
VectorMapStylevectorMapStyle,
string format 
)
inherited

The /maptile/rts GET request retrieves a map tile image using the Raster Tile Server.

REST METHOD: GET
REST URI:

/maptile?x={x}&y={y}&z={z}&drawergroups={drawerGroups}
              &style={style}&srs={projection}&region={region}
              &dataset={dataset}&init={init}&imgOption={imgOption}
              &language={language}&imgSrc={imgSrc}&format={format}


Parameters are of the form &qname={pname}, where qname is the URI query parameter name, and pname is the corresponding parameter name. The parameters are listed below by their pname.

Parameters
xThis parameter x parameter in the x,y,z coordinate system of a map tile.

Example:

&x=4
yThis parameter y parameter in the x,y,z coordinate system of a map tile.

Example:

&y=5
zThis parameter z parameter in the x,y,z coordinate system of a map tile.

Example:

&z=3
drawerGroupsA comma-separated list of groups of layers to draw on the map, or a bitwise OR of the numeric values. Possible values are: Commercial (includes truck restrictions, designations and hazardous materials), Borders (includes state and county boundaries) and Areas (includes parks, military bases, airports and urban areas).

  1. Cities
  2. Labels (includes road labels and shields)
  3. Roads (includes roads and railroads)
  4. Commercial (includes truck restrictions and hazmat)
  5. Borders (includes state and county boundaries)
  6. Areas (includes parks, military bases, airports, and urban areas)

Default is none, i.e. empty list.

Example:

&drawerGroups=Cities,Roads
styleThe style in which the map tiles are retrieved. Possible values are:

  1. Default - Indicates the default map style.
  2. Classic - Indicates a classic motif style.
  3. Monochrome - Indicates a monochrome style.
  4. RoadAtlas - Indicates a style that mimics a road atlas look and feel.
  5. Darkness - DISCONTINUED - Indicates a dark style, replaced with Night.
  6. Modern - DISCONTINUED -Indicates a modern style, replaced with Default.
  7. Contemporary - Indicates a contemporary style.
  8. Night - Indicates a style optimized for night viewing.
  9. Satellite - Indicates the style for satellite imagery.
  10. Lightness - Indicates the style for lightness style.
  11. Smooth - Indicates the style for smooth style.
  12. Terrain - Indicates the style for terrain imagery.

Default is Default.

Example:

&style=Night
projectionThe projection in which the coordinates are interpreted. Possible values are:

  • EPSG:900913 - Web Mercator Projection.
  • EPSG:4326 - Fixed LonLat Projection.

Default is EPSG:900913.

Example for when Fixed LonLat Projection is desired:

&srs=EPSG:4326
regionThe data region in which the route is located. Possible values are:

  1. Unknown - Africa
  2. AF - Africa
  3. AS - Asia
  4. EU - Europe
  5. NA - North America
  6. OC - Oceania; Australia
  7. SA - South America
  8. ME - Middle East

Default is NA (North America).

Example:

&region=EU

See also
    ALK.Common.Model.DataRegion

datasetThe data region in which the route is located. Possible values for the routePath request are:

  1. Current
  2. PCM_EU
  3. PCM_OC
  4. PCM_SA
  5. PCM_GT (GeoTrac)
  6. PCM_AF
  7. PCM_AS
  8. PCM_ME
  9. PCM_NA
  10. PCM_WW
  11. PCM_JP
  12. PCM_NASL
  13. PCM_MX

Default is Current. If an unlicensed dataset is specified, the request will result in a forbidden request, i.e. a 403 HTTP Response.

Example:

&dataset=PCM_ME

See also
    ALK.PCM.Model.RegionalDataSet

initIndicates whether this is the initial map tile request. Possible values are boolean:

  • true
  • false

Default is true.

Example:

&init=false
imgOptionIndicates the option of drawing the map in conjunction with the Satellite style query parameter. Possible values are:

  1. Both - Base map is overlayed on background image.
  2. Background - Pure image underlay with no base map overlay.
  3. Foreground - Pure base map transparent image with no underlay.

Default is Both.

Example:

&imgOption=Background

See also
    ALK.PCM.Model.MapImageOption

languageThe language in which the response shall be written.

Possible values are:

  1. ENUS - English - United States
  2. ENGB - English - Great Britain
  3. ES - Spanish
  4. DE - German
  5. FR - French
  6. IT - Italian



Example:

&language=DE

See also
    ALK.PCM.Model.LanguageType

imgSrcIndicates the source of background of the map in conjunction with the Satellite style query parameter. Possible values are:

  1. Default - DigitalGlobeAPIImagery
    Default image provider.
  2. Sat1 - DigitalGlobe
    Premium satellite image provider for tiles and single image requests.
  3. Sat2 - DigitalGlobeConsumer
    Premium satellite image provider for tiles and single image requests.
  4. Sat3 - DigitalGlobeTrueCurrency
    Premium satellite image provider for tiles and single image requests.
  5. Sat4 - DigitalGlobeColorConsumer
    Premium satellite image provider for tiles and single image requests.
  6. Sat5 - DigitalGlobeAPIVivid
    Premium satellite image provider for tiles and single image requests.
  7. Sat6 - DigitalGlobeAPIRecent
    Premium satellite image provider for tiles and single image requests.
  8. ALKCurated - ALKCurated
    Standard satellite image provider for tiles and single image requests.

Default is Default.

Example:

&imgSrc=Sat5

See also
    ALK.PCM.Model.BackgroundImageProvider

ratioThe image ratio for the map tile, can be 1 or 2. Ignored unless using vector data.
widthThe tile height/width in pixels, either 256 or 512 is supported.
vectorMapStyleThe vector map style. If supplied, overrides style.
formatThe image format in which map tiles are retrieved. Possible values are:

  1. image/jpeg
  2. image/png

Default is image/jpeg.

Example:

&FORMAT=image/jpeg
Returns
A byte array containing an image.

◆ DrawOverlayTileAsync()

Task<Stream> DrawOverlayTileAsync(int x,
int y,
int z,
string format,
MapTileOverlaytype,
DataRegion region,
RegionalDataSetdataset 
)
inherited

The /overlay request retrieves an overlay tile image, which is to be overlayed on a map image.

REST METHOD: GET
REST URI:

/overlay?x={x}&y={y}&z={z}&format={format}&type={type}&region={region}&dataset={dataset}


Parameters are of the form &qname={pname}, where qname is the URI query parameter name, and pname is the corresponding parameter name. The parameters are listed below by their pname.

Parameters
xThis parameter x parameter in the x,y,z coordinate system of a map tile.

Example:

&x=4
yThis parameter y parameter in the x,y,z coordinate system of a map tile.

Example:

&y=5
zThis parameter z parameter in the x,y,z coordinate system of a map tile.

Example:

&z=3
formatThe image format in which map tiles are retrieved. Possible values are:

  1. image/jpeg
  2. image/png

Default is image/jpeg.

Example:

&FORMAT=image/jpeg
typeThe type of overlay to retrieve. Possible values are:

  1. TruckRestrictions

Default is none.

Example:

&type=TruckRestrictions

See also
    ALK.PCM.Model.MapTileOverlay

regionThe data region in which the route is located. Possible values are:

  1. Unknown - Africa
  2. AF - Africa
  3. AS - Asia
  4. EU - Europe
  5. NA - North America
  6. OC - Oceania; Australia
  7. SA - South America
  8. ME - Middle East

Default is NA (North America).

Example:

&region=EU

See also
    ALK.Common.Model.DataRegion

datasetThe data region in which the route is located. Possible values for the routePath request are:

  1. Current
  2. PCM_EU
  3. PCM_OC
  4. PCM_SA
  5. PCM_GT (GeoTrac)
  6. PCM_AF
  7. PCM_AS
  8. PCM_ME
  9. PCM_NA
  10. PCM_WW
  11. PCM_JP
  12. PCM_NASL
  13. PCM_MX

Default is Current. If an unlicensed dataset is specified, the request will result in a forbidden request, i.e. a 403 HTTP Response.

Example:

&dataset=PCM_ME

See also
    ALK.PCM.Model.RegionalDataSet

Returns
A byte array containing an image.

◆ DrawTrafficAsync()

Task<Stream> DrawTrafficAsync(double[] corner1,
double[] corner2,
int width,
int height,
byte? frcs,
DataRegionregion,
DayOfWeek? histDay,
ushort? histTimeBin,
string histTimeZone,
int? strokeWidth 
)
inherited

The /traffic GET request retrieves a traffic tile.

REST METHOD: GET
REST URI:

/traffic?pt1={corner1}&pt2={corner2}&width={width}&height={height}
               &frcs={frcs}&region={region}&histDay={histDay}
               &histTimeBin={histTimeBin}&histTimeZone={histTimeZone}
               &strokeWidth={strokeWidth}


Parameters are of the form &qname={pname}, where qname is the URI query parameter name, and pname is the corresponding parameter name. The parameters are listed below by their pname.

Parameters
corner1This parameter contains geographic coordinates used to be the map view port bounding box top left corner.The coordinates are represented by a comma separated pair of floating point numbers representing longitude and latitude respectively in the Web Mercator ESPG:3857 projection.

There must be at least two numbers.

Example:

&pt1=-76.12345,42.12345
corner2This parameter contains geographic coordinates used to be the map view port bounding box bottom right corner.The coordinates are represented by a comma separated pair of floating point numbers representing longitude and latitude respectively in the Web Mercator ESPG:3857 projection.

There must be at least two numbers.

Example:

&pt2=-76.12345,42.12345
widthIndicates the width of a map tile in pixels. The format for this value is an integer.

Example:

&width=256
heightIndicates the height of a map tile in pixels. The format for this value is an integer.

Example:

&height=256
frcsIndicates the federal road classes as a single byte where each bit indicates a road class. Possible bit values are:

  • bit 0 = National highway network roads
  • bit 1 = State highway network roads
  • bit 2 = State interconnecting roads
  • bit 3 = Major connecting roads
  • bit 4 = Minor roads connecting suburbs
  • bit 5 = Destination collector roads
  • bit 6 = Destination dead end roads
  • bit 7 = Unused.

Default is 0.

Example:

&frcs=15     // bits 4,3,2,1, i.e. 0xf
regionThe data region in which the route is located. Possible values are:

  1. Unknown - Africa
  2. AF - Africa
  3. AS - Asia
  4. EU - Europe
  5. NA - North America
  6. OC - Oceania; Australia
  7. SA - South America
  8. ME - Middle East

Default is NA (North America).

Example:

&region=EU

See also
    ALK.Common.Model.DataRegion

histDayIndicates the day for which to get traffic data. The presence of this parameter indicates that the request is for historical traffic data if an only if the histTimeBin parameter is also present and has a value. Possible values are:

  1. Sunday
  2. Monday
  3. Tuesday
  4. Wednesday
  5. Thursday
  6. Friday
  7. Saturday

A value is required.

Example:

&histDay=Monday

See also
    ALK.Common.Model.DayOfWeek

histTimeBinIndicates the Inrix time bucket for which to get traffic data. Each bucket is a 15 minute interval from midnight. The presence of this parameter indicates that the request is for historical traffic data if and only if the histDay parameter is also present and has a value. Possible values are from 0-95.

A value is required.

Example:

&histTimeBin=35
histTimeZoneIndicates the time zone offset for the historical time bin in ISO 8601 format. This parameter is only effective if both the histDay and histTimeBinparameters are present and have values.

Default is 0:00.

Example:

&histTimeZone=-07:30

strokeWidthIndicates the stroke width of traffic lines, in pixels.

Example:

&strokeWidth=4
Returns
A byte array containing an image.

◆ DrawTrafficTileAsync()

Task<Stream> DrawTrafficTileAsync(int x,
int y,
int z,
byte? frcs,
DataRegionregion,
DayOfWeek? histDay,
ushort? histTimeBin,
string histTimeZone,
int? strokeWidth 
)
inherited

The /trafficTile GET request retrieves a traffic tile.

REST METHOD: GET
REST URI:

/trafficTile?x={x}&y={y}&z={z}&frcs={frcs}&region={region}
                   &histDay={histDay}&histTimeBin={histTimeBin}
                   &histTimeZone={histTimeZone}&strokeWidth={strokeWidth}


Parameters are of the form &qname={pname}, where qname is the URI query parameter name, and pname is the corresponding parameter name. The parameters are listed below by their pname.

Parameters
xThis parameter x parameter in the x,y,z coordinate system of a map tile.

Example:

&x=4
yThis parameter y parameter in the x,y,z coordinate system of a map tile.

Example:

&y=5
zThis parameter z parameter in the x,y,z coordinate system of a map tile.

Example:

&z=3
frcsIndicates the federal road classes as a single byte where each bit indicates a road class. Possible bit values are:

  • bit 0 = National highway network roads
  • bit 1 = State highway network roads
  • bit 2 = State interconnecting roads
  • bit 3 = Major connecting roads
  • bit 4 = Minor roads connecting suburbs
  • bit 5 = Destination collector roads
  • bit 6 = Destination dead end roads
  • bit 7 = Unused.

Default is 0.

Example:

&frcs=15     // bits 4,3,2,1, i.e. 0xf
regionThe data region in which the route is located. Possible values are:

  1. Unknown - Africa
  2. AF - Africa
  3. AS - Asia
  4. EU - Europe
  5. NA - North America
  6. OC - Oceania; Australia
  7. SA - South America
  8. ME - Middle East

Default is NA (North America).

Example:

&region=EU

See also
    ALK.Common.Model.DataRegion

histDayIndicates the day for which to get traffic data. The presence of this parameter indicates that the request is for historical traffic data if an only if the histTimeBin parameter is also present and has a value. Possible values are:

  1. Sunday
  2. Monday
  3. Tuesday
  4. Wednesday
  5. Thursday
  6. Friday
  7. Saturday

A value is required.

Example:

&histDay=Monday

See also
    ALK.Common.Model.DayOfWeek

histTimeBinIndicates the Inrix time bucket for which to get traffic data. Each bucket is a 15 minute interval from midnight. The presence of this parameter indicates that the request is for historical traffic data if and only if the histDay parameter is also present and has a value. Possible values are from 0-95.

A value is required.

Example:

&histTimeBin=35
histTimeZoneIndicates the time zone offset for the historical time bin in ISO 8601 format. This parameter is only effective if both the histDay and histTimeBinparameters are present and have values.

Default is 0:00.

Example:

&histTimeZone=-07:30

strokeWidthIndicates the stroke width of traffic lines, in pixels.

Example:

&strokeWidth=4
Returns
A byte array containing an image.

◆ DrawRoadSurfaceTileAsync()

Task<Stream> DrawRoadSurfaceTileAsync(uint x,
uint y,
uint z,
uint hourOffset,
RoadSurfaceProvider provider 
)
inherited

The /roadSurface/tile GET request retrieves the road surface condition image.

REST METHOD: GET
REST URI:

/roadSurface/tile?x={x}&y={y}&z={z}&hourOffset={hourOffset}
                        &provider={provider}


Parameters are of the form &qname={pname}, where qname is the URI query parameter name, and pname is the corresponding parameter name. The parameters are listed below by their pname.

Parameters
xThis parameter x parameter in the x,y,z coordinate system of a map tile.

Example:

&x=4
yThis parameter y parameter in the x,y,z coordinate system of a map tile.

Example:

&y=5
zThis parameter z parameter in the x,y,z coordinate system of a map tile.

Example:

&z=3
hourOffsetIndicates the an hour offset for which road surface tiles are desired. The value is a positive integer representing hours from the current time. The value 0 is for the current time and 3 for three hours from the current time. Default is 0:00.

Example:

&hourOffset=4
providerSpecifies the Road Surface provider. Possible values are:
  1. Default
  2. RC1

Example:

&provider=RC1

See also
    ALK.PCM.Model.RoadSurfaceProvider

Returns
A byte array containing an image.

◆ DrawWeatherAsync()

Task<Stream> DrawWeatherAsync(double[] corner1,
double[] corner2,
int width,
int height,
string projection,
WeatherTypedisplay 
)
inherited

The /weather GET request retrieves a weather radar or satellite image.

REST METHOD: GET
REST URI:

/weather?pt1={corner1}&pt2={corner2}&width={width}&height={height}
               &srs={projection}&display={display}


Parameters are of the form &qname={pname}, where qname is the URI query parameter name, and pname is the corresponding parameter name. The parameters are listed below by their pname.

Parameters
corner1This parameter contains geographic coordinates used to be the map view port bounding box top left corner.The coordinates are represented by a comma separated pair of floating point numbers representing longitude and latitude respectively in the Web Mercator ESPG:3857 projection.

There must be at least two numbers.

Example:

&pt1=-76.12345,42.12345
corner2This parameter contains geographic coordinates used to be the map view port bounding box bottom right corner.The coordinates are represented by a comma separated pair of floating point numbers representing longitude and latitude respectively in the Web Mercator ESPG:3857 projection.

There must be at least two numbers.

Example:

&pt2=-76.12345,42.12345
widthIndicates the width of a map tile in pixels. The format for this value is an integer.

Example:

&width=256
heightIndicates the height of a map tile in pixels. The format for this value is an integer.

Example:

&height=256
projectionThe projection in which the coordinates are interpreted. Possible values are:

  • EPSG:900913 - Web Mercator Projection.
  • EPSG:4326 - Fixed LonLat Projection.

Default is EPSG:900913.

Example for when Fixed LonLat Projection is desired:

&srs=EPSG:4326
displayThe type of image to display either Radar or Satellite.
Returns
A byte array containing an image.

◆ GetDriveTimePolygon()

ALK.Common.Model.GeoJsonGeometry GetDriveTimePolygon(double[] centerLngLat,
int minutes,
bool? hwyOnly,
ALK.PCM.Model.VehicleTypevehType,
ALK.PCM.Model.RoutingType? routing,
ClassOverrideType? classOvrdtype,
DistanceUnitsdistUnits,
bool tollAvoid,
bool? borders,
bool ovrdRestrict,
HazMatTypehazMat,
TunnelCategorytunnelCategory,
TruckStylevehProfile,
VehicleDimUnitstrkUnits,
string trkHeight,
string trkLength,
string trkWidth,
string trkWeight,
int? trkAxles,
bool trkLCV,
uint? elevLimit,
DataRegionregion,
RegionalDataSet dataset 
)
inherited

The /route/DriveTimePolygon GET request retrieves a polygon of including the locations that may be reached within the specified driving time.

REST METHOD: GET
REST URI:

/route/DriveTimePolygon?center={centerLngLat}&minutes={minutes}&hwyOnly={hwyOnly} &vehType={vehType}&routeType={routing}&overrideClass={classOvrdtype} &distUnits={distUnits}&avoidTolls={tollAvoid}&openBorders={borders} &overrideRestrict={ovrdRestrict}&hazMat={hazMat}&tunnelCategory={tunnelCategory} &vehProfile={vehProfile}&vehDimUnits={trkUnits}&vehHeight={trkHeight} &vehLength={trkLength}&vehWidth={trkWidth}&vehWeight={trkWeight}&axles={trkAxles} &LCV={trkLCV}&elevLimit={elevLimit}&region={region}&dataset={dataset}

Parameters
centerLngLatThis parameter contains geographic coordinates used in conjunction with the radius query parameter.The coordinates are represented by a comma separated pair of floating point numbers representing longitude and latitude respectively in the Web Mercator ESPG:3857 projection.

There must be at least two numbers.

Example:

&center=-76.12345,42.12345
minutesIndicates the number of minutes for driving. Format is an integer. Valid numbers are between 1 and 120 (2 hours).

Example:

&minutes=120
hwyOnlyIndicates whether to use highways only. Possible values are boolean:

  • true
  • false

Default is false.

Example:

&hwyOnly=true
vehTypeThe vehicle type. Possible values are:

  1. Truck
  2. LightTruck
  3. Auto

Default is Truck.

Example:

&vehType=LightTruck

See also
    ALK.PCM.Model.VehicleType

routingThe desired routing algorithm. Possible values are:

  1. Practical
  2. Shortest

Default is Practical.

Example:

&routing=Shortest
classOvrdtypeA comma-separated list of class overrides. Possible values are:

  1. None
  2. NationalNetwork
  3. FiftyThreeFoot

Default is none, i.e. empty list.

Example:

 &overrideClass=NationalNetwork,FiftyThreeFoot

See also
    ALK.Common.Model.ClassOverrideType

distUnitsDistance units that pertain to measurement arguments of this request. Possible values are:

  1. Miles
  2. Kilometers

Default is Miles.

Example:

&distUnits=Kilometers
tollAvoidIndicates whether or not to avoid tolls while routing. Possible values are boolean:

  • true
  • false

Default is false.

Example:

&avoidTolls=true
bordersIndicates whether borders are open for travel. Possible values are boolean:

  • true
  • false

Default is true.

Example:

&openBorders=false
ovrdRestrictIndicates whether or not to override truck restrictions. Possible values are boolean:

  • true
  • false

Default is false.

Example:

&overrideRestrict=true
hazMatIndicates the hazardous material type. Possible values are:

  1. None
  2. General
  3. Caustic
  4. Explosives
  5. Flammable
  6. Inhalants
  7. Radioactive

Default is None.

Example:

&hazMat=Radioactive

See also
    ALK.PCM.Model.HazMatType

tunnelCategory
vehProfileIndicates the vehicle profile which is a preset collection of dimensions and routing options. Possible values are:

  1. None
  2. TwentyEightDoubleTrailer
  3. FortyStraightTruck
  4. FortyEightSemiTrailer
  5. FiftyThreeSemiTrailer
  6. FullSizeVan
  7. TwentySixStraightTruck
  8. ConventionalSchoolBus
  9. SmallSchoolBus

Default is None which is equivalent to the 48 foot semi trailer profile. For Auto or light duty, use FullSizeVan.

Example:

&vehProfile=FullSizeVan

See also
    ALK.PCM.Model.TruckStyle

trkUnitsVehicle dimension units. Possible values are:

  1. English
  2. Metric

Default is English.

Example:

&vehDimUnits=Metric

See also
    ALK.Common.Model.VehicleDimUnits

trkHeightThe height of the truck in feet and inches (English) or meters (Metric) depending on the vehDimUnits query parameter. Feet and inches may be formatted with apostrophe and double quotes, i.e. feet'inches".

Maximum value is 13'6" or 4.1148 meters.

Default is 13'6" in all regions except Europe, which is 12'6".

Examples:

&vehHeight=13'6"  // feet and inches for English
&vehHeight=13.5   // feet for English
&vehHeight=4.11   // meters for Metric
trkLengthThe length of the truck in feet and inches (English) or meters (Metric) depending on the vehDimUnits query parameter. Feet and inches may be formatted with apostrophe and double quotes, i.e. feet'inches".

Maximum value is 53 feet or 16.1544 meters.

Default is 48 feet in all regions except Europe, which is 54"1'.

Examples:

&vehLength=13'6"  // feet and inches for English
&vehLength=13.5   // feet for English
&vehLength=4.11   // meters for Metric
trkWidthThe width of the truck in feet and inches (English) or meters (Metric) depending on the vehDimUnits query parameter. Feet and inches may be formatted with apostrophe and double quotes, i.e. feet'inches".

This value may be 96" and below, 102" and above or 98".

Default is 96" for all regions.

Examples:

&vehWidth=10'6"  // feet and inches for English
&vehWidth=10.5   // feet for English
&vehWidth=3.2    // meters for Metric
trkWeightThe weight of the truck in pounds (English) or kilograms (Metric) depending on the vehDimUnits query parameter.

Acceptable values can be up to 132,000 pounds or 59,874 kilos.
The default value is 80,000 pounds for all regions.

Examples:

&vehWeight=5000  // pounds for English
&vehWeight=2268  // kilograms for Metric
trkAxlesIndicates the number of axles on the vehicle. Acceptable values are 2 through 14.

Default is 5.

Example:

&axles=4
trkLCV
elevLimitIndicates the elevation limit when generating a route. Elevation unit is specified in feet or meters depending on the value of the distUnits query parameter being Miles or Kilometers respectively.
This restriction is available for the following datasets:

  1. Current
  2. PCM_NA

This restriction will be ignored if routing is deemed impractical with the limit, or a stop is located at an elevation higher than the limit.

The default is to not employ this restriction.

Example:

&elevLimit=5000            // feet for Miles
&elevLimit=1524            // meters for Kilometers
regionThe data region in which the route is located. Possible values are:

  1. Unknown - Africa
  2. AF - Africa
  3. AS - Asia
  4. EU - Europe
  5. NA - North America
  6. OC - Oceania; Australia
  7. SA - South America
  8. ME - Middle East

Default is NA (North America).

Example:

&region=EU

See also
    ALK.Common.Model.DataRegion

datasetThe data region in which the route is located. Possible values for the routePath request are:

  1. Current
  2. PCM_EU
  3. PCM_OC
  4. PCM_SA
  5. PCM_GT (GeoTrac)
  6. PCM_AF
  7. PCM_AS
  8. PCM_ME
  9. PCM_NA
  10. PCM_WW
  11. PCM_JP
  12. PCM_NASL
  13. PCM_MX

Default is Current. If an unlicensed dataset is specified, the request will result in a forbidden request, i.e. a 403 HTTP Response.

Example:

&dataset=PCM_ME

See also
    ALK.PCM.Model.RegionalDataSet

Returns
A GeoJSON geometry.

Example of a result returned from .
This result is a GeoJSON Geometry.

{
    "type": "Polygon",
    "coordinates": [
       [-73.992063 40.743919],
       [-73.990968 40.745421],
       [-73.992063 40.743919]
    ]
}

◆ CountyPolygonsAsync()

Task<List<BorderPolygon> > CountyPolygonsAsync(string[] codes)
inherited

The /polygons/county request retrieves polygons that outline specified counties.

REST METHOD: GET
REST URI:

/polygons/county?codes={codes}

Parameters
codesCounty codes for which to generate Polygons. The format is comma separated names from the FIPS standard county codes.

Default is none, i.e. empty list.

Examples:

&codes=34033,34042
Returns
A JSON response containing an array of border polygons for each requested county.

Example of a result returned from ALK.PCM.IRestPolygonService.CountyPolygonsAsync.

This result is an array of ALK.PCM.Model.BusinessModels.BorderPolygon.

[
    {
        "Code": "34001",
        "Name": "Atlantic County, NJ",
        "Polygon": "POLYGON ((-73.992063 40.743919,
        -73.990968 40.745421, -73.992063 40.743919))"
    }
]

◆ StatePolygonsAsync()

Task<List<StatePolygon> > StatePolygonsAsync(string[] states)
inherited

The /polygons/state request retrieves polygons that outline specified states.

REST METHOD: GET
REST URI:

/polygons/state?states={states}

Parameters
statesState names or abbreviations for which to generate Polygons. The format is comma separated names, FIPS standard state codes, or state abbreviations.

At least one entry is required.

Examples:

&states=34,43
&states=NJ,NY
&states=New%20York
Returns
A JSON response containing an array of border polygons for each requested state.

Example of a result returned from ALK.PCM.IRestPolygonService.StatePolygonsAsync.

This result is an array of ALK.PCM.Model.BusinessModels.StatePolygon.

[
    {
        "Code": "36",
        "Name": "New York",
        "Abbreviation" : "NY",
        "Polygon": "POLYGON ((-73.992063 40.743919,
        -73.990968 40.745421, -73.992063 40.743919))"
    }
]

◆ ZipPolygonsAsync()

Task<List<BorderPolygon> > ZipPolygonsAsync(string[] codes)
inherited

The /polygons/zip request retrieves polygons that outline specified zip codes.

REST METHOD: GET
REST URI:

/polygons/zip?zipcodes={codes}

Parameters
codesZip codes for which to generate Polygons. The format is comma separated codes.

At least one entry is required.

Examples:

&zipcodes=08857,10010
Returns
A JSON response containing an array of border polygons for each requested zip codes.

Example of a result returned from ALK.PCM.IRestPolygonService.ZipPolygonsAsync.

This result is an array of ALK.PCM.Model.BusinessModels.BorderPolygon.

[
    {
        "Code": "10010",
        "Name": null,
        "Polygon": "POLYGON ((-73.992063 40.743919,
        -73.990968 40.745421, -73.992063 40.743919))"
    }
]

◆ Locations()

List<GeocodeOutputLocation> Locations(string streetaddr,
string city,
string state,
string zip,
string country,
PostCodeTypepostcodeFilter,
GeocodeCitySearchFilter citySearchFilter,
string splc,
int list,
double[] lnglat,
string searchString,
bool? matchNamedRoadsOnly,
double? maxCleanupMiles,
CountryAbbreviationTypecountryAbbrevType,
DataRegionregion,
ALK.PCM.Model.DataVersiondataset,
int timeOut,
LanguageTypelang,
bool? splitHouseNumber,
bool? includeTrimblePlaceIDs 
)
inherited

The /locations GET request performs a geocode or reverse geocode by searching for locations with the supplied parameters. If coords are supplied, then a reverse geocode is performed.

REST METHOD: GET
REST URI:

/locations?street={streetaddr}&city={city}&state={state}&postcode={zip}&country={country}
               &postcodeFilter={postcodeFilter}&citySearchFilter={citySearchFilter}
               &splc={splc}&list={list}&coords={lnglat}&searchString={searchString}
               &matchNamedRoadsOnly={matchNamedRoadsOnly}&maxCleanupMiles={maxCleanupMiles}
               &countryAbbrevType={countryAbbrevType}&region={region}&dataset={dataset}
               &splitHouseNumber={splitHouseNumber}&includeTrimblePlaceIDs={includeTrimblePlaceIDs}
Parameters
streetaddrThis parameter contains the house number and street name in a single string.

Examples:

&street=1%20Independence%20Way
cityThis parameter contains the city name.

Examples:

&city=New%20York
&city=Princeton
stateThis parameter contains the state (or country) abbreviation according to defacto standards. Such as AZ for Arizona, NY for New York, NSW for New South Whales, etc.

Examples:

&state=NY
&state=NSW
zipThis parameter contains the ZIP or Postal Code.

Examples:

&city=08823
&city=3CV%206L4
countryThis parameter contains the country abbreviation. The abbreviation format standard is dictated by the countryAbbrevType param (FIPS [default], ISO2, ISO3, GENC2, GENC3). Note that this parameter is only supported in version 32 and later.

Examples:

&country=UK
&country=FR
postcodeFilterThis parameter contains the post code filter name. It is used to filter ZIP codes by country. Possible values are:

  1. us
    US ZIP codes
  2. em
    Mexico ZIP codes
  3. both
    Indicates both US and Mexico.

Default is us.

Examples:

&postcodeFilter=us
&postcodeFilter=both

See also
    ALK.Common.Model.PostCodeType

citySearchFilterThis parameter pertains to doing pure city searches. Possible values are:

  1. CitiesWithZips
    Return cities and corresponding ZIP codes.
  2. CityCentersOnly
    Return city centers only, no ZIP codes.

Default is 0

Examples:

&citySearchFilter=0
&citySearchFilter=CityCentersOnly
splcThis parameter contains the Standard Point Location code to use in place of street/city/state/zip.

Examples:

&splc=392832000        // IL,Montgomery,Ohlman,62076
&splc=188142000        // NY,Steuben,Bradford,14815
listIndicates the number of results to return if geocoding results in a less than perfect match.

Example:

&list=4
lnglatThis parameter contains geographic coordinates used in reverse geocoding. The coordinates are represented by a comma separated pair of floating point numbers representing longitude and latitude respectively in the Web Mercator ESPG:3857 projection.
There must be at least two numbers.

Example:

&coords=-76.12345,42.12345
searchStringThis parameter contains single string containing a full address to search. Supplying this parameter will render all other search relevant query parameters ineffective, e.g. city, state, streetAddress, etc. Example:

&searchString=1%20Independence%20Way,%20Princeton,%20NJ
matchNamedRoadsOnlyIndicates that when reverse geocoding, i.e. searching from coordinates, force to only match on named roads. Possible values are boolean:

  • true
  • false

Default is false.

Example:

&hosEnabled=true
maxCleanupMilesIndicates the maximum radius, in miles, in which to find the closest matching road. The format of this value is a floating point number.

Example:

&maxCleanupMiles=10.5
countryAbbrevTypeIndicates the abbreviation format for countries. Possible values are:

  1. FIPS
  2. ISO2
  3. ISO3
  4. GENC2
  5. GENC3

Default is FIPS.

Example:

&countryAbbrevType=ISO2
regionThe data region in which the route is located. Possible values are:

  1. Unknown - Africa
  2. AF - Africa
  3. AS - Asia
  4. EU - Europe
  5. NA - North America
  6. OC - Oceania; Australia
  7. SA - South America
  8. ME - Middle East

Default is NA (North America).

Example:

&region=EU

See also
    ALK.Common.Model.DataRegion

datasetThe data region in which the route is located. Possible values for the routePath request are:

  1. Current
  2. PCM_EU
  3. PCM_OC
  4. PCM_SA
  5. PCM_GT (GeoTrac)
  6. PCM_AF
  7. PCM_AS
  8. PCM_ME
  9. PCM_NA
  10. PCM_WW
  11. PCM_JP
  12. PCM_NASL
  13. PCM_MX

Default is Current. If an unlicensed dataset is specified, the request will result in a forbidden request, i.e. a 403 HTTP Response.

Example:

&dataset=PCM_ME

See also
    ALK.PCM.Model.RegionalDataSet

timeOut
lang
splitHouseNumber
includeTrimblePlaceIDs
Returns
A JSON formatted response.

Example of a result returned from ALK.PCM.IRestGeocodeService.Locations.

This result is an array of ALK.PCM.Model.BusinessModels.GeocodeOutputLocation.

[
    {
        "Address": {
            "StreetAddress": "",
            "City": "Princeton",
            "State": "NJ",
            "Zip": "08540",
            "County": "Mercer",
            "Country": "United States",
            "SPLC": null,
            "CountryPostalFilter": 0,
            "AbbreviationFormat": 0,
            "StateName": "New Jersey",
            "StateAbbreviation": "NJ",
            "CountryAbbreviation": "US"
        },
        "Coords": {
            "Lat": "40.354907",
            "Lon": "-74.645014"
        },
        "Region": 4,
        "Label": "",
        "PlaceName": "",
        "TimeZone": "EDT",
        "Errors": [],
        "SpeedLimitInfo": null,
        "ConfidenceLevel": "Exact",
        "DistanceFromRoad": null,
        "CrossStreet": null
    }
]

◆ GeoBatch()

List<GeocodeOutputLocation> GeoBatch(GeocodeRequestBody request,
ALK.PCM.Model.DataVersiondataset 
)
inherited

The /locations/address/batch POST request performs geocoding search on a batch of addresses.

REST METHOD: POST
REST URI:

/locations/address/batch?dataset={dataset}
Parameters
requestContains a structure to batch Geocode search. This structure is contained in the body of the batch geocode request.
See ALK.PCM.Model.ServiceModels.GeocodeRequestBody.

Example:

{
	"Locations":[{
		"Address":{
			"StreetAddress":"1000 Herrontown Rd",
			"City":"Princeton",
			"State":"NJ",
			"Zip":"",
			"County":"",
			"Country":null,
			"SPLC":"",
			"CountryPostalFilter":0,
			"AbbreviationFormat":0
		},
		"Region":4,
		"GeoList":false,
		"MaxResults":null,
		"CitySearchFilter":0
	},
	{
		"Address":{
			"StreetAddress":"457 N Harrison St",
			"City":"",
			"State":"",
			"Zip":"08540",
			"County":"",
			"Country":null,
			"SPLC":"",
			"CountryPostalFilter":0,
			"AbbreviationFormat":0
		},
		"Region":4,
		"GeoList":false,
		"MaxResults":null,
		"CitySearchFilter":0
	},
	{
		"Address":{
			"StreetAddress":"1 Independence Way",
			"City":"Princeton",
			"State":"",
			"Zip":"08540",
			"County":"",
			"Country":null,
			"SPLC":"",
			"CountryPostalFilter":0,
			"AbbreviationFormat":0
		},
		"Region":4,
		"GeoList":false,
		"MaxResults":null,
		"CitySearchFilter":0
	}]
}
datasetThe data region in which the route is located. Possible values for the routePath request are:

  1. Current
  2. PCM_EU
  3. PCM_OC
  4. PCM_SA
  5. PCM_GT (GeoTrac)
  6. PCM_AF
  7. PCM_AS
  8. PCM_ME
  9. PCM_NA
  10. PCM_WW
  11. PCM_JP
  12. PCM_NASL
  13. PCM_MX

Default is Current. If an unlicensed dataset is specified, the request will result in a forbidden request, i.e. a 403 HTTP Response.

Example:

&dataset=PCM_ME

See also
    ALK.PCM.Model.RegionalDataSet

Returns
A JSON formatted response.

Example of a result returned from ALK.PCM.IRestGeocodeService.GeoBatch.

This result is an array of ALK.PCM.Model.BusinessModels.GeocodeOutputLocation.

[
    {
        "Address": {
            "StreetAddress": "",
            "City": "Princeton",
            "State": "NJ",
            "Zip": "08540",
            "County": "Mercer",
            "Country": "United States",
            "SPLC": null,
            "CountryPostalFilter": 0,
            "AbbreviationFormat": 0,
            "StateName": "New Jersey",
            "StateAbbreviation": "NJ",
            "CountryAbbreviation": "US"
        },
        "Coords": {
            "Lat": "40.354907",
            "Lon": "-74.645014"
        },
        "Region": 4,
        "Label": "",
        "PlaceName": "",
        "TimeZone": "EDT",
        "Errors": [],
        "SpeedLimitInfo": null,
        "ConfidenceLevel": "Exact",
        "DistanceFromRoad": null,
        "CrossStreet": null
    }
]

◆ ReverseGeo()

GeocodeOutputLocation ReverseGeo(double[] lnglat,
bool? matchNamedRoadsOnly,
double? maxCleanupMiles,
bool includePostedSpeedLimit,
SpeedLimitTypespeedLimitPref,
double? heading,
int? currSpeed,
Model.VehicleType vehicle,
bool urban,
bool includeLinkInfo,
string timestamp,
CountryAbbreviationTypecountryAbbrevType,
DataRegionregion,
ALK.PCM.Model.DataVersiondataset,
int timeOut,
LanguageTypelang,
VehicleDimUnitsunits,
bool? splitHouseNumber,
bool? includeTrimblePlaceIDs,
string assetID 
)
inherited

The /locations/reverse GET request performs a "reverse geocode" by searching for locations by a single coordinate pair.

REST METHOD: GET
REST URI:

/locations/reverse?coords={lnglat}&matchNamedRoadsOnly={matchNamedRoadsOnly}
                        &maxCleanupMiles={maxCleanupMiles}&heading={heading}&currentSpeed={currSpeed}
                        &includePostedSpeedLimit={includePostedSpeedLimit}&vehicleType={vehicle}
                        &urban={urban}&includeLinkInfo={includeLinkInfo}&timestamp={timestamp}
                        &countryAbbrevType={countryAbbrevType}&region={region}&dataset={dataset}
                        &splitHouseNumber={splitHouseNumber}&includeTrimblePlaceIDs={includeTrimblePlaceIDs}
Parameters
lnglatThis parameter contains geographic coordinates used in reverse geocoding. The coordinates are represented by a comma separated pair of floating point numbers representing longitude and latitude respectively in the Web Mercator ESPG:3857 projection.
There must be at least two numbers.

Example:

&coords=-76.12345,42.12345
matchNamedRoadsOnlyIndicates that when reverse geocoding, i.e. searching from coordinates, force to only match on named roads. Possible values are boolean:

  • true
  • false

Default is false.

Example:

&hosEnabled=true
maxCleanupMilesIndicates the maximum radius, in miles, in which to find the closest matching road. The format of this value is a floating point number.

Example:

&maxCleanupMiles=10.5
includePostedSpeedLimitIndicates whether or not to include the posted speed limits. Possible values are boolean:

  • true
  • false

Default is false.

Example:

&includePostedSpeedLimit=true
speedLimitPrefPreferred speed limit source SpeedLimitType
headingIndicates the current heading of the vehicle. Speed limit may differ based on direction. This parameter is used with the includePostedSpeedLimit query parameter to increase accuracy of getting the correct speed limit. The format of this value is a floating point number.

Heading angle East:0 North:90 West:180 South:270

Example:

&heading=45.323
currSpeedIndicates the current speed, miles per hour, of the vehicle. This parameter is used with the includePostedSpeedLimit query parameter to increase accuracy of getting the correct speed limit. The format of this value is an integer.

Example:

&currentSpeed=55
vehicleThe vehicle type to be used in finding speed limits. Speed limit may vary based on vehicle. This parameter is used with the includePostedSpeedLimit query parameter to increase accuracy of getting the correct speed limit. Possible values are:

  1. Truck
  2. LightTruck
  3. Auto

Default is Truck.

Example:

&vehicleType=LightTruck

See also
    ALK.PCM.Model.VehicleType

urbanIndicates whether geocoding in an urban location or not. Speed limit may differ based on residential areas. This parameter is used with the includePostedSpeedLimit query parameter to increase accuracy of getting the correct speed limit. Possible values are boolean:

  • true
  • false

Default is false.

Example:

&urban=true
includeLinkInfoIndicates whether or not to include link info. Possible values are boolean:

  • true
  • false

Default is false.

Example:

&includeLinkInfo=true
timestampIndicates the Date/Time string to be applied for the request. This parameter is used to determine the use of Daylight Savings Time at the location in its Time Zone. The format is standard a format:

mm/dd/yyyy hh:m</em

Default is none, if so will use current time.

Example:

&timestamp=08/23/2017%2013:43

countryAbbrevTypeIndicates the abbreviation format for countries. Possible values are:

  1. FIPS
  2. ISO2
  3. ISO3
  4. GENC2
  5. GENC3

Default is FIPS.

Example:

&countryAbbrevType=ISO2
regionThe data region in which the route is located. Possible values for the routePath, routeReports, or locations/reverse/batch requests are:

  1. EU
  2. NA
  3. OC
  4. SA

Default is NA.

Example:

&region=EU

See also
    ALK.Common.Model.DataRegion

datasetThe data region in which the route is located. Possible values for the routePath request are:

  1. Current
  2. PCM_EU
  3. PCM_OC
  4. PCM_SA
  5. PCM_GT (GeoTrac)
  6. PCM_AF
  7. PCM_AS
  8. PCM_ME
  9. PCM_NA
  10. PCM_WW
  11. PCM_JP
  12. PCM_NASL
  13. PCM_MX

Default is Current. If an unlicensed dataset is specified, the request will result in a forbidden request, i.e. a 403 HTTP Response.

Example:

&dataset=PCM_ME

See also
    ALK.PCM.Model.RegionalDataSet

timeOut
lang
assetID
Returns
Parameters
units
splitHouseNumber
includeTrimblePlaceIDs
A JSON formatted response.

Example of a result returned from ALK.PCM.IRestGeocodeService.ReverseGeo.

This result is an object of ALK.PCM.Model.BusinessModels.GeocodeOutputLocation.

{
    "Address": {
        "StreetAddress": "Vine Street West",
        "City": "Philadelphia",
        "State": "PA",
        "Zip": "19102",
        "County": "Philadelphia",
        "Country": "United States",
        "SPLC": null,
        "CountryPostalFilter": 0,
        "AbbreviationFormat": 0,
        "StateName": "Pennsylvania",
        "StateAbbreviation": "PA",
        "CountryAbbreviation": "US"
    },
    "Coords": {
        "Lat": "39.958188",
        "Lon": "-75.163244"
    },
    "Region": 4,
    "Label": "",
    "PlaceName": "",
    "TimeZone": "EST",
    "Errors": [],
    "SpeedLimitInfo": {
        "Speed": 35,
        "SpeedType": 2,
        "SpeedTypeString": "Premium",
        "LinkIds": null,
        "RoadClass": "Secondary",
        "Units": "MPH"
    },
    "ConfidenceLevel": "Exact",
    "DistanceFromRoad": 0,
    "CrossStreet": null
}

◆ ReverseGeoBatch()

List<GeocodeOutputLocation> ReverseGeoBatch(ReverseGeocodeRequestBody request,
ALK.PCM.Model.DataVersiondataset 
)
inherited

The /locations/reverse/batch POST request performs a reverse geocoding search on a batch of coordinates.

REST METHOD: POST
REST URI:

/locations/reverse/batch?dataset={dataset}
Parameters
requestContains the input structure to batch Reverse Geocode. This structure is contained in the body of the batch reverse geocode request.
See ALK.PCM.Model.ServiceModels.ReverseGeocodeRequestBody.

Example:

{
   "request":{
      "Coords":[
         {
            "Lat":39.958188,
            "Lon":-75.163244,
            "Region":4,
            "SpeedLimitOption":{
               "CurrentSpeed":40,
               "Heading":180,
               "Urban":true,
               "Vehicle":0,
               "SpeedLimitPreference":0
            },
            "Timestamp": "2017-01-21 12:30 PM"
         },
         {
            "Lat":40.958188,
            "Lon":-75.163244,
            "Region":4,
            "Timestamp": "2017-06-21 3:30 PM"
         }
      ],
      "MatchNamedRoadsOnly":false,
      "MaxCleanupMiles":99999,
      "IncludePostedSpeedLimit":true
   }
}
datasetThe data region in which the route is located. Possible values for the routePath request are:

  1. Current
  2. PCM_EU
  3. PCM_OC
  4. PCM_SA
  5. PCM_GT (GeoTrac)
  6. PCM_AF
  7. PCM_AS
  8. PCM_ME
  9. PCM_NA
  10. PCM_WW
  11. PCM_JP
  12. PCM_NASL
  13. PCM_MX

Default is Current. If an unlicensed dataset is specified, the request will result in a forbidden request, i.e. a 403 HTTP Response.

Example:

&dataset=PCM_ME

See also
    ALK.PCM.Model.RegionalDataSet

Returns
A JSON formatted response.

Example of a result returned from ALK.PCM.IRestGeocodeService.ReverseGeoBatch.

This result is an array of ALK.PCM.Model.BusinessModels.GeocodeOutputLocation wrapped in a containing object named ReverseGeoBatchResult

{
  "ReverseGeoBatchResult": [
    {
      "Address": {
        "StreetAddress": "Vine Street West",
        "City": "Philadelphia",
        "State": "PA",
        "Zip": "19102",
        "County": "Philadelphia",
        "Country": "United States",
        "SPLC": null,
        "CountryPostalFilter": 0,
        "AbbreviationFormat": 0,
        "StateName": "Pennsylvania",
        "StateAbbreviation": "PA",
        "CountryAbbreviation": "US"
      },
      "Coords": {
        "Lat": "39.958188",
        "Lon": "-75.163244"
      },
      "Region": 4,
      "Label": "",
      "PlaceName": "",
      "TimeZone": "EST",
      "Errors": [],
      "SpeedLimitInfo": {
        "Speed": 35,
        "SpeedType": 2,
        "SpeedTypeString": "Premium",
        "LinkIds": null,
        "RoadClass": "Secondary",
        "Units": "KPH"
      },
      "ConfidenceLevel": "Exact",
      "DistanceFromRoad": 0.001,
      "CrossStreet": null
    },
    {
      "Address": {
        "StreetAddress": "Mountain Road",
        "City": "Stroudsburg",
        "State": "PA",
        "Zip": "18360",
        "County": "Monroe",
        "Country": "United States",
        "SPLC": null,
        "CountryPostalFilter": 0,
        "AbbreviationFormat": 0,
        "StateName": "Pennsylvania",
        "StateAbbreviation": "PA",
        "CountryAbbreviation": "US"
      },
      "Coords": {
        "Lat": "40.958188",
        "Lon": "-75.163244"
      },
      "Region": 4,
      "Label": "",
      "PlaceName": "",
      "TimeZone": "EDT",
      "Errors": [],
      "SpeedLimitInfo": {
        "Speed": 25,
        "SpeedType": 0,
        "SpeedTypeString": "Default",
        "LinkIds": null,
        "Units": "KPH"
      },
      "ConfidenceLevel": "Exact",
      "DistanceFromRoad": 0.027,
      "CrossStreet": null
    }
  ]
}

◆ States()

List<StateCountry> States(DataRegionregion,
CountryCodeFormatabbrFormat,
bool? countryOnly 
)
inherited

The /states GET request retrieves the states or countries for a region.

REST METHOD: GET
REST URI:

/states?region={region}&abbrFormat={abbrFormat}&countryOnly={countryOnly}
Parameters
countryOnlyIndicates whether the search is for country only or for both country and states. Possible values are boolean:

  • true
    Retrieve for countries only.
  • false
    Retrieve for both countries and states.

Default is false (both countries and states).

Example:

&countryOnly=true
abbrFormatIndicates the abbreviation format for countries. Possible values are:

  1. FIPS
  2. ISO2
  3. ISO3
  4. GENC2
  5. GENC3

Default is FIPS.

Example:

&abbrFormat=ISO3

See also
    ALK.PCM.Model.CountryCodeFormat

regionThe data region in which the route is located. Possible values are:

  1. Unknown - Africa
  2. AF - Africa
  3. AS - Asia
  4. EU - Europe
  5. NA - North America
  6. OC - Oceania; Australia
  7. SA - South America
  8. ME - Middle East

Default is NA (North America).

Example:

&region=EU

See also
    ALK.Common.Model.DataRegion

If no input is specified, then the default is to retrieve all countries and states in North America. If the region is NA (North America), the result contains the state abbreviation, the full state name, the country abbreviation, and the full country name.

Outside of NA, the result contains only the country abbreviation and the full country name.

Returns
A JSON formatted response containing the State & Country data.

Example of a result returned from ALK.PCM.IRestGeocodeService.States.

This result is an array of ALK.PCM.Model.BusinessModels.StateCountry.

[
    {
        "StateAbbr": "AL",
        "StateName": "Alabama",
        "CountryAbbr": "US",
        "CountryName": "United States"
    }
]

◆ GetPOIByID()

POIInfo GetPOIByID(uint setId,
uint poiId,
uint? persistentId,
RegionalDataSet dataset 
)
inherited

The /poiSets GET request retrieves a Point of Interest (POI) in the given set with the given ID, or alternatively with the persistent ID.

REST METHOD: GET
REST URI:

/poiSets?setId={setID}&poiId={poiId}&persistentId={persistentId}&dataset={dataset}


Parameters are of the form &qname={pname}, where qname is the URI query parameter name, and pname is the corresponding parameter name. The parameters are listed below by their pname.

Parameters
setIdthe set Id of the POI, must be supplied with poiId
poiIdthe unique identifier of the POI within a set
persistentIdthe persistent id of the POI, setId and poiId do not need to be supplied with this.
datasetThe data region in which the route is located. Possible values for the routePath request are:

  1. Current
  2. PCM_EU
  3. PCM_OC
  4. PCM_SA
  5. PCM_GT (GeoTrac)
  6. PCM_AF
  7. PCM_AS
  8. PCM_ME
  9. PCM_NA
  10. PCM_WW
  11. PCM_JP
  12. PCM_NASL
  13. PCM_MX

Default is Current. If an unlicensed dataset is specified, the request will result in a forbidden request, i.e. a 403 HTTP Response.

Example:

&dataset=PCM_ME

See also
    ALK.PCM.Model.RegionalDataSet

Returns
A JSON formatted object of type ALK.PCM.Model.BusinessModels.POIInfo.

◆ POIRadiusSearch()

List<RadiusSearchMatch> POIRadiusSearch(double[] centerLnglat,
DataRegionregion,
double radius,
DistanceUnitsradiusUnits,
POITypepoiCategories,
String nameFilter,
bool? getPoiIDs,
int? maxResults,
RegionalDataSet dataset 
)
inherited

The /poi GET request retrieves a list of Points of Interest (POIs) within a certain radius distance from center of point identified by lon,lat coordinates.

REST METHOD: GET
REST URI:

/poi?center={centerLnglat}&region={region}&radius={radius}&radiusUnits={radiusUnits} &poiCategories={poiCategories}&nameFilter={nameFilter}&dataset={dataset}


Parameters are of the form &qname={pname}, where qname is the URI query parameter name, and pname is the corresponding parameter name. The parameters are listed below by their pname.

Parameters
centerLnglatThis parameter contains geographic coordinates used in conjunction with the radius query parameter.The coordinates are represented by a comma separated pair of floating point numbers representing longitude and latitude respectively in the Web Mercator ESPG:3857 projection.

There must be at least two numbers.

Example:

&center=-76.12345,42.12345
regionThe data region in which the route is located. Possible values are:

  1. Unknown - Africa
  2. AF - Africa
  3. AS - Asia
  4. EU - Europe
  5. NA - North America
  6. OC - Oceania; Australia
  7. SA - South America
  8. ME - Middle East

Default is NA (North America).

Example:

&region=EU

See also
    ALK.Common.Model.DataRegion

radiusIndicates the radius from the center query parameter. The radius value is specified according to the radiusUnits query parameter. The format for this value is a floating point number.

Example:

&radius=54.43
radiusUnitsDistance units that pertain to radius query parameter. Possible values are:

  1. Miles
  2. Kilometers

Default is Miles.

Example:

&radiusUnits=Kilometers

See also
    ALK.Common.Model.DistanceUnits

poiCategoriesIndicates categories of the Points of Interest with which to perform a search. The format is a comma delimited list of category names. Possible values for category names are:

  1. All
  2. City
  3. Zip
  4. Place
  5. Airport
  6. Automotive
  7. WeighStation
  8. Dining
  9. Education
  10. Emergency
  11. Government
  12. Gas
  13. Lodging
  14. Parks
  15. Retail
  16. RVServices
  17. SportsRec
  18. Travel
  19. TruckServices
  20. Attractions
  21. OilAndGas

Default is All.

Examples:

&poiCategories=           // Is this valid?
&poiCategories=Dining
&poiCategories=TruckServices,Travel,SportsRec

See also
    ALK.PCM.Model.POIType

nameFilterThis parameter contains single string containing a filter to match names of Points of Interest (POIs). Example:

&nameFilter=Applebees
getPoiIDsA boolean indicating whether or not to retrieve unique identifiers for matching POIs. Default is false.
datasetThe data region in which the route is located. Possible values for the routePath request are:

  1. Current
  2. PCM_EU
  3. PCM_OC
  4. PCM_SA
  5. PCM_GT (GeoTrac)
  6. PCM_AF
  7. PCM_AS
  8. PCM_ME
  9. PCM_NA
  10. PCM_WW
  11. PCM_JP
  12. PCM_NASL
  13. PCM_MX

Default is Current. If an unlicensed dataset is specified, the request will result in a forbidden request, i.e. a 403 HTTP Response.

Example:

&dataset=PCM_ME

See also
    ALK.PCM.Model.RegionalDataSet

maxResultsAn optional integer to signify the upper bound for how many entries to return within a given radius.
Returns
A JSON formatted array of POIs RadiusSearchMatch.

◆ FindPoisAlongRoute()

PoisAlongRouteResponseBody FindPoisAlongRoute(PoisAlongRouteRequestBody request,
RegionalDataSetdataset 
)
inherited

The /poi/alongRoute POST requests retrieves the Points of Interest (POIs) along a given route.

REST METHOD: POST
REST URI:

/poi/alongRoute?dataset={dataset}


Parameters are of the form &qname={pname}, where qname is the URI query parameter name, and pname is the corresponding parameter name. The parameters are listed below by their pname.

Parameters
requestJSON Formatted object of type ALK.PCM.Model.ServiceModels.PoisAlongRouteRequestBody.

Example:

{
    "PoiRoute": {
      "ExtendedOptions": null,
      "RouteId": "MiamiToPrinceton",
      "Stops": [
        {
          "Costs": null,
          "IsViaPoint": false,
          "Address": {
            "StreetAddress": null,
            "City": "Miami",
            "State": "FL",
            "Zip": null,
            "County": null,
            "Country": null,
            "SPLC": null,
            "CountryPostalFilter": 0,
            "AbbreviationFormat": 0
          },
          "Coords": null,
          "Region": 4,
          "Label": null,
          "PlaceName": null
        },
        {
          "Costs": null,
          "IsViaPoint": false,
          "Address": {
            "StreetAddress": null,
            "City": null,
            "State": null,
            "Zip": "08540",
            "County": null,
            "Country": null,
            "SPLC": null,
            "CountryPostalFilter": 0,
            "AbbreviationFormat": 0
          },
          "Coords": null,
          "Region": 4,
          "Label": null,
          "PlaceName": null
        }
      ],
      "Options": {
        "HighwayOnly": false
      }
    },
    "RouteLegIndex": 0,
    "SearchType": 2,
    "HoSPOICategories": [0],
    "SearchWindowUnits": 1,
    "SearchWindowStart": 30,
    "SearchWindowEnd": 120,
    "AirDistanceThreshold": 1.5
}
datasetThe data region in which the route is located. Possible values for the routePath request are:

  1. Current
  2. PCM_EU
  3. PCM_OC
  4. PCM_SA
  5. PCM_GT (GeoTrac)
  6. PCM_AF
  7. PCM_AS
  8. PCM_ME
  9. PCM_NA
  10. PCM_WW
  11. PCM_JP
  12. PCM_NASL
  13. PCM_MX

Default is Current. If an unlicensed dataset is specified, the request will result in a forbidden request, i.e. a 403 HTTP Response.

Example:

&dataset=PCM_ME

See also
    ALK.PCM.Model.RegionalDataSet

Returns
JSON Formatted object of type ALK.PCM.Model.ServiceModels.PoisAlongRouteResponseBody.

Example:

{
    "POISearchMatches": [
        {
            "POILocation": {
                "Address": {
                    "StreetAddress": "1126 Hammondville Road",
                    "City": "Pompano Beach",
                    "State": "FL",
                    "Zip": "33069",
                    "County": "",
                    "Country": "",
                    "SPLC": null,
                    "CountryPostalFilter": 0,
                    "AbbreviationFormat": 0,
                    "StateName": "Florida",
                    "StateAbbreviation": "FL",
                    "CountryAbbreviation": "US"
                },
                "Coords": {
                    "Lat": "26.235234",
                    "Lon": "-80.139049"
                },
                "Region": 4,
                "Label": "@Hardy Bros Truck Stop",
                "PlaceName": "@Hardy Bros Truck Stop"
            },
            "DistanceFromOrigin": {
                "Value": 35.141,
                "DistanceUnits": 0
            },
            "POICategory": "",
            "TimeFromOrigin": "00:42:00",
            "DistanceOffRoute": {
                "Value": 3.174,
                "DistanceUnits": 0
            }
        },
        {
            "POILocation": {
                "Address": {
                    "StreetAddress": "3691 W. Blue Heron Blvd.",
                    "City": "Riviera Beach",
                    "State": "FL",
                    "Zip": "33404",
                    "County": "",
                    "Country": "",
                    "SPLC": null,
                    "CountryPostalFilter": 0,
                    "AbbreviationFormat": 0,
                    "StateName": "Florida",
                    "StateAbbreviation": "FL",
                    "CountryAbbreviation": "US"
                },
                "Coords": {
                    "Lat": "26.782595",
                    "Lon": "-80.095487"
                },
                "Region": 4,
                "Label": "@Marathon",
                "PlaceName": "@Marathon"
            },
            "DistanceFromOrigin": {
                "Value": 73.788,
                "DistanceUnits": 0
            },
            "POICategory": "",
            "TimeFromOrigin": "01:22:00",
            "DistanceOffRoute": {
                "Value": 0.353,
                "DistanceUnits": 0
            }
        },
        {
            "POILocation": {
                "Address": {
                    "StreetAddress": "810 N Congress Ave",
                    "City": "Riviera Beach",
                    "State": "FL",
                    "Zip": "33404",
                    "County": "",
                    "Country": "",
                    "SPLC": null,
                    "CountryPostalFilter": 0,
                    "AbbreviationFormat": 0,
                    "StateName": "Florida",
                    "StateAbbreviation": "FL",
                    "CountryAbbreviation": "US"
                },
                "Coords": {
                    "Lat": "26.771411",
                    "Lon": "-80.087143"
                },
                "Region": 4,
                "Label": "@Riviera Truck Stop",
                "PlaceName": "@Riviera Truck Stop"
            },
            "DistanceFromOrigin": {
                "Value": 73.016,
                "DistanceUnits": 0
            },
            "POICategory": "",
            "TimeFromOrigin": "01:22:00",
            "DistanceOffRoute": {
                "Value": 0.92,
                "DistanceUnits": 0
            }
        },
        {
            "POILocation": {
                "Address": {
                    "StreetAddress": "",
                    "City": "Palm City",
                    "State": "FL",
                    "Zip": "34990",
                    "County": "",
                    "Country": "",
                    "SPLC": null,
                    "CountryPostalFilter": 0,
                    "AbbreviationFormat": 0,
                    "StateName": "Florida",
                    "StateAbbreviation": "FL",
                    "CountryAbbreviation": "US"
                },
                "Coords": {
                    "Lat": "27.128257",
                    "Lon": "-80.332947"
                },
                "Region": 4,
                "Label": "Martin County Rest Area, I-95 North",
                "PlaceName": "Martin County Rest Area, I-95 North"
            },
            "DistanceFromOrigin": {
                "Value": 103.92,
                "DistanceUnits": 0
            },
            "POICategory": "",
            "TimeFromOrigin": "01:53:00",
            "DistanceOffRoute": {
                "Value": 0.011,
                "DistanceUnits": 0
            }
        }
    ],
    "SearchStartCoordinates": {
        "Lat": "26.109846",
        "Lon": "-80.168523"
    },
    "SearchEndCoordinates": {
        "Lat": "27.186227",
        "Lon": "-80.397949"
    }
}