API
Mission Manager allows access to certain mission features by a REST API. With this API you can do such things as write your own mobile application for GPS Tracking, posting clues (including pictures) back to the current mission. For a member to use the API they must have an email, login into the system, and possess the API Access login permission or have full system access. If the member meets these requirements they will have a new "API Access" area on the Member screen when their name is selected. Opening this "API Access" area will display their API Key which can be reset, created or cleared with the buttons next to the API Key display. This API Key is required for all API calls. For an example of the API working in JavaScript see the sample code page: apitester.html.
API keys can be created for each member on the Members screen or at a team level in the Configuration screen. Some API calls are available to both team and member APIs, while other calls may only be available to one or the other. This is noted in each API call type.
Only members who have an API Key, and email address and are active can make API calls with a mobile application.
The following are the different types of API calls that can be done:
Other Useful sections:
The general REST API parameters are as follows (note: all parameters are case sensitive):
Parameters | ||
APIKey | The member's API Key. This parameter is required for all API Calls and is case sensitive. | |
MissionID | This is what mission the API is posting to. This parameter is required for any calls that post to a mission | |
SubjectID | Identifies what subject you are getting information for. | |
Get | Tells the GET call to get some information about the current mission.See the examples below for the possible values of this parameter. | |
Post | Tells the POST call you are adding something to the mission, Values can be as follows: | |
Clue | Add a clue - see notes below. | |
Location | Add a GPS Location - see notes below. | |
OutputFormat | Specifies the output format returned for such things as MissionsLists and SubjectLists, etc. The value can be one of the following: | |
Text | Returns the list in pure text format, with the fields separated by commas. Fields containing a comma will have that comma replaced with a \, (backslash comma). This is the default format. Looking at the XML or JSON output can be used to identify the order of the fields. | |
XML | Returns the list in XML format. | |
JSON | Returns the list in JSON fomat. | |
Latitude | A GPS location Latitude, this parameter must be passed when adding clues, adding radio log entries or posting GPS locations. | |
Longitude | A GPS location Longitude, this parameter must be passed when adding clues, adding radio log entries or posting GPS locations. | |
Altitude | A GPS location altitude that can be used when posting GPS locations. | |
ImageURL | A URL to a image that can be posted as a clue picture. The size of an image is limited to 2MB. | |
Image | A posted image, this is an image posted via HTML <input type="file" name="Image"> or its equivalent. The size of an image is limited to 2MB. | |
AreaFilter | This parameter can be used when getting map area information with the parameters MissionAreas or TeamAreas. The value for this parameter can be any of the following words separated by a comma: [Area][,Path][,Marker][,Pie][,Circle] | |
Time | A time the clue was found, a radio log was entered, or a GPS location was collected. If this parameter is omitted the current local time will be used. The format of the time is HH:MM:SS. | |
Date | A date the clue was found, a radio log was entered or a GPS location was collected. If this parameter is omitted the current local date will be used. The format of the date is YYYY-MM-DD. |
The REST API Reference is as follows:
Getting a List of Active Missions Gets a list of active missions the member has access to. The list is returned in a comma separated list, with each mission on a new line. This should be the first API call, and the list of missions should be presented to the user so they can select what mission they are currently on. This call is available to both member and team API keys. Member API Keys will only get a list of Active missions, Team API Keys will get a list of Active, Suspended, and Closed missions, but will not get missions marked as Sensitive on the General Screen. | |
Type | GET/POST |
URL | https://www.missionmanager.net/api.php |
Parameters | <APIKey=XXXXXXX>,< Get=MissionsList>, [OutputFormat=format] |
Return Value | <mission id>,<mission date>,<mission name>
[<mission id>,<mission date>,<mission name>] ... or an Error Code |
Example | https://www.missionmanager.net/api.php?Get=MissionsList&APIKey=aXdnT45856oKtlOyssl3iHOH8257F4OW9 |
Getting the Team Calendar as an ICS file Gets your team's calendar as an ICS file. This file can be used to feed into another program. The user making the call must have Calendar Access permission. This call is available to both member and team API keys. | |
Type | GET/POST |
URL | https://www.missionmanager.net/api.php |
Parameters | <APIKey=XXXXXXX>,< Get=calICS> |
Return Value | Your team's calendar as an ICS file.
... or an Error Code |
Example | https://www.missionmanager.net/api.php?Get=calICS&APIKey=aXdnT45856oKtlOyssl3iHOH8257F4OW9 |
Getting Team and Member Time Keeping data in CSV files The API can gain access to your team's Time Keeping totals as well as the current member who's making the API call Time Keeping totals. To access your team's data use the Get=TeamTimeKeepingCSV and the member making the API call must have the Time Keeping - Other's login permission. To access the current members timekeeping CSV file use the Get=TimeKeepingCSV parameter. You must include a StartDate and EndDate parameters to specify the dates range to get. The format of the dates are YYYY-MM-DD. This call is only available to member API keys. | |
Type | GET/POST |
URL | https://www.missionmanager.net/api.php |
Parameters | <APIKey=XXXXXXX>,< Get=TeamTimeKeepingCSV | TimeKeepingCSV >,<StartDate=YYYY-MM-DD>,<EndDate=YYYY-MM-DD> |
Return Value | A CSV (Comma Separated Values) file
... or an Error Code |
Example | https://www.missionmanager.net/api.php?Get=TeamTimeKeepingCSV&StartDate=2013-01-01&EndDate=2013-04-01&APIKey=aXdnT45856oKtlOyssl3iHOH8257F4OW9 |
Create a New Mission Creates a new mission. The member making this call must have Mission - Active Missions permission or an error will be returned. The app should correctly display a proper message and warn the user they do not have the correct permissions. This call is available to both member and team API keys. | |
Type | GET/POST |
URL | https://www.missionmanager.net/api.php |
Parameters | <APIKey=XXXXXXX>,< NewMission=mission name> |
Return Value | New Mission Number on success
... or an Error Code |
Example | https://www.missionmanager.net/api.php?Post=NewMissions&MissionName=John%20Doe&APIKey=aXdnT45856oKtlOyssl3iHOH8257F4OW9 |
Getting Mission Information Gets information about a mission. This call is available to both member and team API keys. member level API Keys can only retrieve information about active missions, Team API Keys can retrieve information about Active, Suspended, and Closed Missions, but not missions marked as Sensitive on the General Screen. The parameter type get can be one of the the following values:
| ||||||||||||||||||||
Type | GET/POST | |||||||||||||||||||
URL | https://www.missionmanager.net/api.php | |||||||||||||||||||
Parameters | <Get=type>>, <APIKey=XXXXXXX>, <MissionID=##> | |||||||||||||||||||
Return Value | The string value requested
... or an Error Code | |||||||||||||||||||
Example | https://www.missionmanager.net/api.php?Get=MissionName&APIKey=aXdnT45856oKtlOyssl3iHOH8257F4OW9&MissionID=1 |
Getting a Team GUID The API allows you to query a team's GUID or Unique Identifier. This value will be unique for every team and will never change. This TeamGUID can be used if the application needs to compare and see if two different application users are part of the same team. The team GUID is a 36 character string. This is an advanced feature and will not be needed by most API developers. This call is available to both member and team API keys. This call is available to both member and team API keys. | |
Type | GET |
URL | https://www.missionmanager.net/api.php |
Parameters | <APIKey=XXXXXXX>,< Get=TeamGUID> |
Return Value | teamguid on success
... or an Error Code |
Example | https://www.missionmanager.net/api.php?Get=TeamGUID&APIKey=aXdnT45856oKtlOyssl3iHOH8257F4OW9 |
Adding a Team's GPS Location Posts a GPS Location of a mobile device. The location will be added to a teams track. Only members currently on a team that is "On Assignment" will accept GPS locations. The API will identify what team the posting person is on and add the location to that team's track. A Date and Time can be posted along with the location, if these are not posted the current date and time will be used. Note that you must pass both Date and Time, or the current time will be used. If an application is going to post a date and time, it should do so for all points. An application can continue to collect GPS locations if the mobile phone goes out of service range, then when the phone is back in a service area, post all the collected locations. This call is only available to member API keys. | |
Type | POST |
URL | https://www.missionmanager.net/api.php |
Parameters | <Post=Location>, <APIKey=XXXXXXX>, <MissionID=##>, <Latitude=###.###>, <Longitude=###.###>, [Altitude=###], [Date=date], [Time=time] |
Return Value | <0> on success
... or an Error Code |
Example | https://www.missionmanager.net/api.php?APIKey=aXdnT45856oKtlOyssl3iHOH8257F4OW9&MissionID=1 &Post=Location&Latitude=32.95500888763828&Longitude=-116.96466252343748 |
Getting Clue Information Gets information about the team the member making the API calls is on or information about other teams on the Mission. Presenting this information on a mobile application can lessen the need for a paper team assignment to be given to teams. This call is available to both member and team API keys, although when calling from a Team API Key the TeamGet parameter must be supplied. The parameter type get can be one of the the following values:
| ||||||||||||||||||||
Type | GET/POST | |||||||||||||||||||
URL | https://www.missionmanager.net/api.php | |||||||||||||||||||
Parameters | <Get=type>>, <APIKey=XXXXXXX>, <MissionID=##>, [ClueID=clue ID], [OutputFormat=format] | |||||||||||||||||||
Return Value | The string, XML, or JSON values requested
... or an Error Code | |||||||||||||||||||
Example | https://www.missionmanager.net/api.php?Get=ClueList&APIKey=aXdnT45856oKtlOyssl3iHOH8257F4OW9&MissionID=1 |
Getting Team Information Gets information about the team the member making the API calls is on or information about other teams on the Mission. Presenting this information on a mobile application can lessen the need for a paper team assignment to be given to teams. This call is available to both member and team API keys, although when calling from a Team API Key the TeamGet parameter must be supplied. The parameter type get can be one of the the following values:
| ||||||||||||||||||||||||
Type | GET/POST | |||||||||||||||||||||||
URL | https://www.missionmanager.net/api.php | |||||||||||||||||||||||
Parameters | <Get=type>, <APIKey=XXXXXXX>, <MissionID=##>, [TeamGet=Team Number], [OutputFormat=format], [AreaFilter=type,type,...] | |||||||||||||||||||||||
Return Value | The string, XML, or JSON values requested
... or an Error Code | |||||||||||||||||||||||
Example | https://www.missionmanager.net/api.php?Get=TeamMembers&APIKey=aXdnT45856oKtlOyssl3iHOH8257F4OW9&MissionID=1 |
Getting Subject Information Gets a list of subjects for a mission. An application should request a list of subjects to retrieve the subject IDs needed when making requests about particular subjects. This call is available to both member and team API keys. The parameter type get can be one of the the following values:
| ||||||||
Type | GET/POST | |||||||
URL | https://www.missionmanager.net/api.php | |||||||
Parameters | <APIKey=XXXXXXX>,< Get=SubjectList>, <MissionID=##>, [OutputFormat=format]
<APIKey=XXXXXXX>,< Get=SubjectImage>, <MissionID=##>, <SubjectID=##>, [OutputFormat=format] <APIKey=XXXXXXX>,< Get=SubjectField>, <Field=field>, <MissionID=##>, <SubjectID=##>, [OutputFormat=format] | |||||||
Return Value | The string, XML, or JSON values requested
... or an Error Code | |||||||
Example | https://www.missionmanager.net/api.php?Get=SubjectList&APIKey=aXdnT45856oKtlOyssl3iHOH8257F4OW9 |
Setting Subject Information Allows for the remote setting of subject information. This can be used to collect subject information from a mobile app and then set in Mission Manager. The member making this call must have Mission - Active Missions permission or an error will be returned. This call is available to both member and team API keys.
| ||||||
Type | POST | |||||
URL | https://www.missionmanager.net/api.php | |||||
Parameters | <APIKey=XXXXXXX>,< Post=SubjectField>, <Field=field>, <MissionID=##>, <SubjectID=##>, <Value=value> | |||||
Return Value | The string, XML, or JSON values requested
... or an Error Code | |||||
Example | https://www.missionmanager.net/api.php?Set=SubjectField&APIKey=aXdnT45856oKtlOyssl3iHOH8257F4OW9 &MissionID=1&SubjectID=1&Field=SubNickName&Value=Jane%20Doe |
Adding a Clue Posts a new clue to the current mission. This call is available to both member and team API keys. The following parameters are supported, as well as Latitude, Longitude, Date, Time, or ImageURL.
| ||||||||||
Type | POST | |||||||||
URL | https://www.missionmanager.net/api.php | |||||||||
Parameters | <Post=Clue>, <APIKey=XXXXXXX>, <MissionID=##>, <ClueName=name>, [ClueDescription=desc], [ClueFoundBy=by], [ClueLocation=loc], [ImageURL=url], [Latitude=lat], [Longitude=lon], [Date=date], [Time=time] | |||||||||
Return Value | <0> on success
... or an Error Code | |||||||||
Example | https://www.missionmanager.net/api.php?APIKey=aXdnT45856oKtlOyssl3iHOH8257F4OW9&MissionID=1&Post=Clue&ClueName=Shoe &ClueDescription=Brown%20and%20dirty&ClueFoundBy=Billy%20Bob&ClueLocation=Under%20the%20big%20tree &ImageURL=http://www.missionmanager.net/HelpImages/HelpIcon_Chrome.jpg&Latitude=33.000752&Longitude=-117.010324 |
Adding a Radio Log Entry Posts a new radio log entry to the current mission. Log entries can include the message, who the message is to and from, a latitude and longitude, date and time. A message priority can also be included, the values can be high, normal, or low when setting priority. This call is available to both member and team API keys. | |
Type | POST |
URL | https://www.missionmanager.net/api.php |
Parameters | <Post=RadioLog>, <APIKey=XXXXXXX>, <MissionID=##>, <RadioMessage=msg>, [RadioTo=to], [RadioFrom=from], [RadioPriority= high/normal/low], [Latitude=lat], [Longitude=lon], [Date=date], [Time=time] |
Return Value | <0> on success
... or an Error Code |
Example | https://www.missionmanager.net/api.php?APIKey=aXdnT45856oKtlOyssl3iHOH8257F4OW9&MissionID=1&Post=RadioLog&RadioMessage=Checking%20In &RadioTo=Command&RadioFrom=Billy&Latitude=33.000752&Longitude=-117.010324 |
Getting Member Contact Information Does a search of Members and returns basic contact information for members matching search. If the Search parameter is supplied the first and last name will be searched for a matching string and only those members who match this search will be returned. If the Search perimeter is omitted or blank all the active member contact information for your team will be retuned. | |
Type | POST |
URL | https://www.missionmanager.net/api.php |
Parameters | <APIKey=XXXXXXX>,< Get=MemberInfo>, [Search=search val], [OutputFormat=format] |
Return Value | A list of Member information in the format: <FirstName>,<LastName>,<HomePhone>,<WorkPhone>,<MobilePhone>,<OtherPhone>,<Email>,<RadioNum> ... or an Error Code |
Example | https://www.missionmanager.net/api.php?APIKey=aXdnT45856oKtlOyssl3iHOH8257F4OW9&Get=MemberInfo&Search=Joe |
Subject Field Names | Description |
SubName | Subject Name |
SubDOB | DOB |
SubNickName | Nick-Name / Name to Call |
SubAddess | Home Address |
SubAddess2 | Home Address 2 |
SubCity | Home City |
SubState | Home State |
SubZip | Home Zip or Postal Code |
DateLastSeen | Date Last Seen |
TimeLastSeen | Time Last Seen |
PLS | PLS/LKP |
Latitude | PLS/LKP GPS Latitude |
Longitude | PLS/LKP GPS Longitude |
FoundLat | Found GPS Latitude |
FoundLon | Found GPS Longitude |
DateFound | Date Found |
TimeFound | Time Found |
DirOfTravel | PLS/LKP Direction of Travel |
TravelPlans | Travel Plans |
SpecialAreas | Special Areas / Locations Of Interest For Subject |
RadHanded | Handed |
Handicaps | Any Handicaps |
SubAge | Age |
SubSex | SubSex |
SubRace | Race |
SubBuild | Build |
Complexion | Complexion |
SubSMT | Scars/Marks/Tattoos |
SubWeight | Weight |
SubHeight | Height |
SubEye | SubEye |
SubHairColor | Hair Color |
SubHairStyle | Hair Style |
ShirtType | Shirt Type |
ShirtSize | Shirt Size |
ShirtColor | Shirt Color |
PantsType | Pants / Dress Type |
PantsSize | Pants / Dress Size |
PantsColor | Pants / Dress Color |
JacketType | Jacket / Sweater Type |
JacketSize | Jacket / Sweater Size |
JacketColor | Jacket / Sweater Color |
ShoeType | Shoe Type / Brand |
ShoeSize | Shoe Size |
ShoeColor | Shoe Color |
SocksType | Socks Type |
SocksSize | Socks Size |
SocksColor | Socks Color |
GlovesType | Hat / Gloves Type |
GlovesSize | Hat / Gloves Size |
GlovesColor | Hat / Gloves Color |
Glasses | Glasses |
Innerwear | Innerwear |
Outerwear | Outerwear |
OtherClothing | Known Clothing Brands Or Special Markings (Team Logos, Cartoons, Etc) |
MedicalHistory | Medical History |
Medications | Medications |
LastMedsTime | Time Of Last Meds |
Allergies | Allergies |
LastMealTime | LastMealTime |
LastMeal | Last Meal Consisted Of |
Smoker | Does Subject Smoke? |
SmokeBrand | Cigarette Brand |
ChewGum | Chew Gum? |
GumBrand | GumBrand |
Weapon | Does The Subject Have A Weapon |
WeaponType | Type and Description of Weapon |
StateOfMind | Subject's State of Mind |
RunAway | History Of Subject Running Away |
FamilyProblems | Recent Family Problems |
FriendProblems | Recent Problems With Friends |
RespondToStranger | How Would Subject Respond To Stranger Calling Them |
DrugsAlcohol | How Often Does The Subject Use Drugs Or Alcohol |
RecentIllnesses | Recent Illnesses Or Injuries |
PracticalJokes | Does The Subject Often Play Practical Jokes |
StrangersOK | How Would Subject Be Around Other People Or Strangers |
Hobbies | Any Specific Hobbies Or Skills |
Circumstances | Possible Circumstances Caused Subject To Be Lost |
Profession | What Is/Was The Subject's Profession |
CriminalRecord | Criminal Record |
FailureToAppears | Failures To Appear |
Warrants | Wants / Warrants Issued For Subject |
AfraidDark | Afraid Of Dark |
AfraidAnimals | Afraid Of Animals |
AfraidOther | Other Fears |
FeelingTowardAdults | Feeling Toward Adults |
FeelingTowardStrangers | Feeling Toward Strangers |
HurtReaction | Reactions When Hurt |
LostTraining | Training When Lost |
ChildOther | Other: (Pet's Name?, Favorite Toy?, Favorite Food?, Being Disciplined At The Time Of Disappearance?) |
KnowArea | Does The Subject Know The Area |
LastTripHere | Last Trip Here |
HikeAlone | Ever Hike Alone |
MapTraining | Formal Map / Compass / GPS Training |
LostBefore | Has The Subject Ever Been Lost Before |
LostWhen | Lost When |
FirstAid | Formal First Aid Training |
FirstAidLevel | Level of First Aid |
Survival | Survival Training |
RadHike | Hiking Experience |
HikeTrain | Hiking Training |
RadRock | Rock Climbing Experience |
RockTrain | Rock Climbing Training |
RadCamp | Camping Experience |
CampTrain | Camping Training |
RadHunt | Hunting Experience |
HuntTrain | Hunting Training |
RadFish | Fishing Experience |
FishTrain | Fishing Training |
RadCave | Caving Experience |
CaveTrain | Caving Training |
BelongTo | Subject Ever Belong To Group: (i.e. Army Navy Marines Air Force Coast Guard Police Fire Dept, etc.) |
VehMake1 | Vehicles / Vessels 1 - Make |
VehModel1 | Vehicles / Vessels 1 - Model |
VehYear1 | Vehicles / Vessels 1 - Year |
VehColor1 | Vehicles / Vessels 1 - Color |
VehLic1 | Vehicles / Vessels 1 - License |
VehVin1 | Vehicles / Vessels 1 - VIN |
VehMake2 | Vehicles / Vessels 2 - Make |
VehModel2 | Vehicles / Vessels 2 - Model |
VehYear2 | Vehicles / Vessels 2 - Year |
VehColor2 | Vehicles / Vessels 2 - Color |
VehLic2 | Vehicles / Vessels 2 - License |
VehVin2 | Vehicles / Vessels 2 - VIN |
KinName | Next of Kin Name |
KinRelation | Next of Kin Relation |
KinAddress | Next of Kin Address |
KinAddress2 | Next of Kin Address 2 |
KinCity | Next of Kin |
KinState | Next of Kin |
KinZip | Next of Kin |
KinHomePhone | Next of Kin Home Phone |
KinWorkPhone | Next of Kin Work Phone |
KinCellPhone | Next of Kin Cell Phone |
KinEmail | Next of Kin Email |
KinLocation | Next of Kin Location |
KinActions | Next of Kin Actions |
Wit1Name | Witness 1 - Name |
Wit1Relation | Witness 1 - Relation |
Wit1Address | Witness 1 - Address |
Wit1Address2 | Witness 1 - Address 2 |
Wit1City | Witness 1 - City |
Wit1State | Witness 1 - State |
Wit1Zip | Witness 1 - Zip or Postal Code |
Wit1HomePhone | Witness 1 - Home Phone |
Wit1WorkPhone | Witness 1 - Work Phone |
Wit1CellPhone | Witness 1 - Cell Phone |
Wit1Location | Witness 1 - Location |
Wit1Email | Witness 1 - Email |
Wit1Actions | Witness 1 - Actions Taken So Far |
Wit2Name | Witness 2 - Name |
Wit2Relation | Witness 2 - Relation |
Wit2Address | Witness 2 - Address |
Wit2Address2 | Witness 2 - Address 2 |
Wit2City | Witness 2 - City |
Wit2State | Witness 2 - State |
Wit2Zip | Witness 2 - Zip or Postal Code |
Wit2HomePhone | Witness 2 - Home Phone |
Wit2WorkPhone | Witness 2 - Work Phone |
Wit2CellPhone | Witness 2 - Cell Phone |
Wit2Location | Witness 2 - Location |
Wit2Email | Witness 2 - Email |
Wit2Actions | Witness 2 - Actions Taken So Far |
ConName | Contact Name |
ConRelation | Contact Relation |
ConAddress | Contact Address |
ConAddress2 | Contact Address 2 |
ConCity | Contact City |
ConState | Contact State |
ConZip | Contact Zip or Postal Code |
ConHomePhone | Contact Home Phone |
ConWorkPhone | Contact Work Phone |
ConCellPhone | Contact Cell Phone |
ConEmail | Contact Email |
ConLocation | Contact Location |
ConReason | Contact Reason |
Frnd1Name | Friend 1 - Name |
Frnd1Address | Friend 1 - Address |
Frnd1Address2 | Friend 1 - Address 2 |
Frnd1City | Friend 1 - City |
Frnd1State | Friend 1 - State |
Frnd1Zip | Friend 1 - Zip or Postal Code |
Frnd1HomePhone | Friend 1 - Home Phone |
Frnd1WorkPhone | Friend 1 - Work Phone |
Frnd1CellPhone | Friend 1 - Cell Phone |
Frnd1Email | Friend 1 - Email |
Frnd1Location | Friend 1 - Location |
Frnd2Name | Friend 2 - Name |
Frnd2Address | Friend 2 - Address |
Frnd2Address2 | Friend 2 - Address 2 |
Frnd2City | Friend 2 - City |
Frnd2State | Friend 2 - State |
Frnd2Zip | Friend 2 - Zip or Postal Code |
Frnd2HomePhone | Friend 2 - Home Phone |
Frnd2WorkPhone | Friend 2 - Work Phone |
Frnd2CellPhone | Friend 2 - Cell Phone |
Frnd2Email | Friend 2 - Email |
Frnd2Location | Friend 2 - Location |
Frnd3Name | Friend 3 - Name |
Frnd3Address | Friend 3 - Address |
Frnd3Address2 | Friend 3 - Address 2 |
Frnd3City | Friend 3 - City |
Frnd3State | Friend 3 - State |
Frnd3Zip | Friend 3 - Zip or Postal Code |
Frnd3HomePhone | Friend 3 - Home Phone |
Frnd3WorkPhone | Friend 3 - Work Phone |
Frnd3CellPhone | Friend 3 - Cell Phone |
Frnd3Email | Friend 3 - Email |
Frnd3Location | Friend 3 - Location |
Frnd4Name | Friend 4 - Name |
Frnd4Address | Friend 4 - Address |
Frnd4Address2 | Friend 4 - Address 2 |
Frnd4City | Friend 4 - City |
Frnd4State | Friend 4 - State |
Frnd4Zip | Friend 4 - Zip or Postal Code |
Frnd4HomePhone | Friend 4 - Home Phone |
Frnd4WorkPhone | Friend 4 - Work Phone |
Frnd4CellPhone | Friend 4 - Cell Phone |
Frnd4Email | Friend 4 - Email |
Frnd4Location | Friend 4 - Location |
Pic | Is A Picture Available |
PicNeedRet | Need To Return Picture |
PicToWho | Return Picture to Whom |
Scent | Has A Scent Article Been Obtained |
ScentWhat | Scent Article Description |
ScentWho | Scent Article Obtained By Who |
ScentTime | Scent Article Obtained Time |
Room | Has The Room / PLS Been Secured With Access Restricted |
RoomWho | Room Searched / Secured By Who |
RoomTime | Room Searched / Secured Time |
Mark | Has The PLS Been Marked |
MarkWho | PLS Marked By Who |
MarkTime | PLS Marked Time |
Have Any Footprints Been Marked | |
PrintWho | Footprints Marked By Who |
PrintTime | Footprints Marked Time |
Card | Has A Footprint Card Been Filled Out |
CardWho | Footprint Card By Who |
CardTime | Footprint Card Time |
Digital | Has A Digital Picture Been Taken Of Any Footprint |
DigitalWho | Digital Picture By Who |
DigitalTime | Digital Picture Time |
Notes | Notes |
MPNotes | Public Missing Person Notes |
Interviewers | Interviewer's |
InterviewersRank | Interviewer's Rank |
InterviewDate | nterview Date |
InterviewTime | Interview Time |
SubjectOutcome | Ultimate Outcome For Subject |
REST return Error Codes | |
<0> | Success! |
<300> | Missing API Key |
<301> | Bad API Key |
<302> | No command specified |
<303> | Member with API access is missing an email address |
<304> | No member permission to use API Access |
<305> | No MissionID parameter set |
<306> | Member doesn't have access to the specified mission |
<307> | Missing Latitude parameter |
<308> | Missing Longitude parameter |
<309> | No active missions available |
<310> | Invalid Latitude Longitude values |
<311> | No team assignment - this error will be returned if the member accessing the API is not currently assigned to a team |
<312> | Invalid Post add value |
<314> | Missing ClueName parameter |
<315> | Posted image is too large, Image size is limited to 2MB. |
<316> | Bad or missing SubjectID parameter |
<317> | Bad image type, only gif, jpg or png images can be posted |
<318> | Team member is on is not "On Assignment", "On Scene", "Reassigned", or "Returning" |
<319> | Failed to open passed image URL |
<320> | A location point was posted too close in time to another point. Locations can only be posted every 10 seconds. |
<321> | Member making the API call doesn't have the correct login permissions |
<322> | A bad or out of range TeamGet number was used |
<323> | No Radio Log message was supplied |
<324> | Bad Field name |
<325> | Member isn't active |
<326> | Missing Mission Name |
<327> | Missing Post Value |
<328> | No Calendar Access Permission |
<329> | No Time Keeping Access Permission |
<330> | Missing Date parameter |
<331> | Not available to member API Keys |
<332> | Not available to team API Key |
<333> | Bad or missing ClueID parameter |
A couple example things you can do with a team or member level API Keys:
To display your Mission Manager Calendar into Google and display on a webpage:
- Copy the calendar URL (https://www.missionmanager.net/api.php?Get=calICS&APIKey=YOUR_API_KEY ).
- Go to your Google calendar (https://www.google.com/calendar/).
- Click the down arrow to the right of "Other Calendars" and then "Add by URL"
- Paste the URL and click OK, but do not check the box.
- Click the down arrow to the right of your calendar and then "Calendar settings"
- Rename the calendar, then click the "Customize the color, size, and other options" link.
- Pick the settings you want.
- Copy the HTML code and paste into your webpage.
- Be sure to rename the calendar, otherwise you are exposing your API key.
If you don't need to embed it, you can stop after step 4 and still get the calendar on your phone, etc.
Note using the method above runs the risk of exposing your API key. You might want to use a little proxy server on your server to further hide it. Here is a little Perl CGI proxy:
#!/usr/bin/perl use strict; use warnings; use LWP::Simple; print "Content-Type: text/calendar; charset=utf-8\r\n"; print "Pragma: no-cache\r\n"; print "Cache-Control: no-cache, must-revalidate\r\n"; print "Content-Disposition: inline; filename=calendar.ics\r\n"; print "\r\n"; my $apikey = 'YOUR-API-KEY-GOES-HERE'; my $content = get("https://www.missionmanager.net/api.php?Get=calICS&APIKey=$apikey"); print $content;
To Show Your Team's Missions on a webpage:
Use the following PHP code on your server
<?php $url = "http://www.missionmanager.net/api.php?Get=MissionsList&APIKey=YOUR_API_KEY&OutputFormat=JSON"; $fileContents = file_get_contents($url); if(!$fileContents) { echo "Failed to get mission list"; return; } $aJson = json_decode( $fileContents ); if(!$aJson) { echo "Failed to decode JSON"; return; } echo "<table style='border-width: 1px; border-style: solid;'>"; echo "<tr><td style='border-width: 1px; border-style: solid;'>Date</td><td style='border-width: 1px; border-style: solid;'>Mission</td></tr>"; foreach($aJson as $mission) { echo "<tr>"; echo "<td style='border-width: 1px; border-style: solid;'>" . $mission->MissionDate . "</td>"; echo "<td style='border-width: 1px; border-style: solid;'>" . $mission->MissionName . "</td>"; echo "</tr>"; } echo "</table>"; ?>
The sky is the limit for things you can do with the Mission manager API!