Está en la página 1de 5

Integrapark Confidential

PARIS Cloud API Reference Background: The PARIS application is typically installed at a parking operator's office. When a user saves changes to PARIS data, the application can update a cloud database for Parkers in selected Locations (meaning a garage or lot). The information updated to the cloud includes the Permit Number assigned to the Parker, whether the Parker's Account is currently paid or not, and any license plate information on file for the Parker. In the PARIS application, the parking operator may create Cloud UserIDs and specify which of their Locations each UserID may see via the API methods. The parking operator's PARIS installation is identified by their Customer Code. This is the same code used to license PARIS, found under the Maintenance menu in PARIS. UserIDs may only see Locations that belong to the Customer Code that created the UserID. Below are the web service methods you may call to check whether a license plate or permit number belongs to a monthly parker (and whether that parker is current on their payments), or to get expanded information about one or more monthly parkers (reserved space number, etc.). These methods are called via HTTP Post, and return XML. Error Messages: It is important to check the returned XML for an <Error> tag. If present, the value in that tag will describe the error encountered. This tag will not be present unless an error was encountered. The descriptions of the methods are presented below in the order you should read them, as information in one method may be pertinent to subsequent methods. After reading through the descriptions of the methods, we suggest that you first test the GetLocationsForUser method, followed by GetParkersForLocation. The latter method will provide valid data to use when testing the other methods, such as GetStatusByPermit. When testing the methods, use "2215BE3E" for the Customer Code, "Guest" as the UserID, and "guestpassword" as the UserPassword. This UserID will only have access to a Demo Location, which will have a few Parkers and License Plates in it. Some of these Parkers will be marked as currently paid and others not. The web service base page is at http://iprome.com/ParisCloud.asmx

Copyright 2012, IntegraPark LLC

Integrapark Confidential

GetLocationsForUser (CustomerCode, UserID, UserPassword) http://iprome.com/ParisCloud.asmx?op=GetLocationsForUser This method will return an XML list of the locations (Garages and Lots) that this UserID may see. You might use this data to populate a dropdown list of locations on a handheld device. Note that UserPassword value is case-sensitive, though CustomerCode and UserID are not. For an integrator storing values for these parameters, Customer Code is a maximum of 12 characters, UserID and UserPassword are each a maximum of 50 characters. These values will be provided to you by the parking operator. A sample of the XML that might be returned is <?xml version="1.0" standalone="yes"?> <Locations> <Location> <FacID>1</FacID> <LocNumber>0001</LocNumber> <LocName>Demo Location</LocName> </Location> <Location> <FacID>2</FacID> <LocNumber>050</LocNumber> <LocName>First Street Garage</LocName> </Location> </Locations> FacID is the unique, unchanging identifier of this location within PARIS. This number will be used as a parameter of all the other methods for this web service. LocNumber is the parking operator's location number or designator for this location, as specified in the PARIS application LocName is the parking operator's name or title for this location If any of the parameter values are incorrect, you will receive the following XML: <?xml version="1.0" standalone="yes"?> <Error>Customer Code, UserID, or Password Incorrect</Error>

Copyright 2012, IntegraPark LLC

Integrapark Confidential

GetPaidStatusByPermit (CustomerCode, UserID, UserPassword, FacID, PermitNumber) http://iprome.com/ParisCloud.asmx?op=GetPaidStatusByPermit This method will return a value indicating whether the Parker assigned the specified Permit Number is currently paid or not, or whether this Permit Number does not belong to a current Parker on this Location. Use the same CustomerCode, UserID, UserPassword, and FacID values as described in the GetLocationsForUser method. This method will return only one XML tag, either "Status" or "Error". The values returned for the "Status" tag will be: 0 (zero), indicating that the Permit Number belongs to a monthly parker who is currently Paid 1 (one), indicating that the Permit Number belongs to a monthly parker who is NOT currently Paid 2 (two), indicating that the Permit Number is not valid for this Location Permit Number is not case-sensitive.

GetPaidStatusByLicense (CustomerCode, UserID, UserPassword, FacID, LicensePlate, LicenseState) http://iprome.com/ParisCloud.asmx?op=GetPaidStatusByLicense This method will return a value indicating whether the Parker with a specified License Plate is currently paid or not, or whether this License Plate does not belong to a current Parker on this Location. Use the same CustomerCode, UserID, UserPassword, and FacID values as described in the GetLocationsForUser method. LicensePlate and LicenseState are not case-sensitive. LicenseState is an optional parm, and will be ignored if it contains and empty string. This method will return only one XML tag, either "Status" or "Error". The values returned for the "Status" tag will be: 0 (zero), indicating that the License Plate belongs to a monthly parker who is currently Paid 1 (one), indicating that the License Plate belongs to a monthly parker who is NOT currently Paid 2 (two), indicating that the License Plate is not on file for any monthly parker at for this Location

Copyright 2012, IntegraPark LLC

Integrapark Confidential

GetParkerByPermit (CustomerCode, UserID, UserPassword, FacID, PermitNumber) http://iprome.com/ParisCloud.asmx?op=GetParkerByPermit This method returns all the information on file for the Parker who is assigned the specified Permit Number. If a Parker has multiple License Plates on file, there will be multiple "Car" tags in the returned XML. An example of the XML that might be returned is: <?xml version="1.0" standalone="yes"?> <Parkers> <Parker> <PermitNumber>14</PermitNumber> <Category>Reserved</Category> <AccessLevel>24/7</AccessLevel> <StallNumber>43</StallNumber> <Status>0</Status> <Cars> <Car> <LicensePlate>123456</LicensePlate> <LicenseState>TN</LicenseState> </Car> <Car> <LicensePlate>BigCar</LicensePlate> <LicenseState>TX</LicenseState> </Car> </Cars> </Parker> </Parkers> Category typically contains "Reserved" or "Non-Reserved". These are the types of spaces in the Location, as configured in PARIS. The exact values used for Category are defined in PARIS and may vary for each Location. AccessLevel is sometimes used in PARIS to identify when a Parker is allowed on the lot, or what areas they may park in. This value may be an empty string. StallNumber is the Reserved Space assigned to this Parker. This value may be an empty string. Status will be a 0 (zero) if the Permit Number is assigned to a monthly parker who is currently paid. Status will be a 1 (one) if the monthly parker is NOT currently paid. If there are no License Plates on file for the Parker, the "Cars" tag will be omitted. If the specified Permit Number is not assigned to a monthly parker at this location, the XML will contain an "Error" tag.

Copyright 2012, IntegraPark LLC

Integrapark Confidential

GetParkerByLicense (CustomerCode, UserID, UserPassword, FacID, LicensePlate, LicenseState) http://iprome.com/ParisCloud.asmx?op=GetParkerByLicense This method returns identical information as GetParkerByPermit. As with GetStatusByLicense, LicensePlate and LicenseState are not case-sensitive. LicenseState is an optional parm, and will be ignored if it contains and empty string value.

GetParkersForLocation (CustomerCode, UserID, UserPassword, FacID) http://iprome.com/ParisCloud.asmx?op=GetParkersForLocation This method returns identical information as GetParkerByPermit, except the returned XML contains all Parkers on record for the Location (multiple "Parker" tags, in other words).

Copyright 2012, IntegraPark LLC