Custom Program
getLocations()
This method can be used to retrieve a recordset of locations based on search criteria.
Locations can be searched by location ID, location name (or partial), and location street address (or partial).
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
searchCriteria Yes String

Alphanumeric

5544

String with search criteria related to search type specified with searchCriteriaType.
searchCriteriaType Yes Integer

Positive integer value

1

Allowable search criteria type values: 1=location ID, 2=location name (or partial), 3=location street address (or partial)
Status Codes
Status Code description
0 Success
2 Invalid parameter(s)
507-01 No locations found matching search criteria.
-1 Indicates that the application record failed to update or return.
Response
<?xml version="1.0" encoding="UTF-8"?>
<response>
   <status_code>0</status_code>
   <status>Success</status>
   <system_timestamp>2015-04-29 12:26:19</system_timestamp>
   <response_data>
     <locations>
       <location>
         <location_id>5</location_id>
         <name>BestBuy</name>
         <address1>33 asdf street</address1>
         <address2>#44</address2>
         <city>Salt Lake City</city>
         <state>UT</state>
         <postalCode>84121</postalCode>
         <parent_location_id>2</parent_location_id>
         <provider_specified_id>ABCD</provider_specified_id>
         <centralBillFlag>0</centralBillFlag>
         <creditLimit>2</creditLimit>
         <cycleType>Weekly</cycleType>
         <cycleInvoice>4</cycleInvoice>
       </location>
     </locations>
   </response_data>
   <processing_time>0.289</processing_time>
   <echo>
     <transaction_id>431469623</transaction_id>
     <provider_transaction_id>GAAP test</provider_transaction_id>
     <provider_timestamp>2015-04-29 12:25:46</provider_timestamp>
   </echo>
</response>

 

Response Description Example value
centralBillFlag Indicates a central corporate credit aggregate billing location. Allows one centralized billing location for all invoice records attached to the location. This parameter works in conjunction with the cycleInvoice parameter. DDD
creditLimit The credit limit for this location. This response works in conjunction with the cycleInvoice parameter. 5000.00
cycleInvoice If cycleType is weekly, the value must be a day of the week with 0 meaning Sunday. If cycleType is monthly, the value must be a day of the month from 1 to 28. If daily, the value is to be 1. 15
cycleType The type of time period. This parameter works in conjunction with the cycleInvoice parameter. Monthly
location_id The numerical value assigned to the location. 6
processing_time The time elapsed in processing the transaction. 0.407
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2018-02-06 10:10:10
provider_transaction_id Secondary transaction identifier (generated by a provider). GAAP test
status A status response in human readable form. Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2018-02-02 11:11:12
transaction_id A number that represents the transaction 916171485
Code Snippet

                    # The following shell script will use cURL to call getLocations
# and return the json response.

curl -d '{"apiLogin":"AbC1234-9999", "apiTransKey":"9845dk-39fdk3fj3-4483483478", "transactionId":"45k-dk3fj3-44478", "searchCriteria":"5544", "searchCriteriaType":"1"}' \ 
-H "response-content-type: json" \ 
-X POST https://**your-full-implementation-url**/getLocations
                
                    // The following Java code will make a getLocations call
// and print the json response.

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.Reader;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLEncoder;
import java.util. *;

class GalileoAPICall
{
    public static void main(String[] args) {
        try {
            Map<String,Object> params = new LinkedHashMap<>();
           params.put("apiLogin", "AbC1234-9999");
           params.put("apiTransKey", "9845dk-39fdk3fj3-4483483478");
           params.put("transactionId", "45k-dk3fj3-44478");
           params.put("searchCriteria", "5544");
           params.put("searchCriteriaType", "1");
            StringBuilder postData = new StringBuilder();
            for (Map.Entry<String,Object> param : params.entrySet()) {
                if (postData.length() != 0) postData.append('&');
                postData.append(URLEncoder.encode(param.getKey(), "UTF-8"));
                postData.append('=');
                postData.append(URLEncoder.encode(String.valueOf(param.getValue()), "UTF-8"));
            }
            byte[] postDataBytes = postData.toString().getBytes("UTF-8");

            URL url = new URL("https://**your-full-implementation-url**/getLocations");

            HttpURLConnection conn = (HttpURLConnection) url.openConnection();
            conn.setRequestMethod("POST");
            conn.setRequestProperty("response-content-type", "json");
            conn.setRequestProperty("Content-Length", String.valueOf(postDataBytes.length));
            conn.setDoOutput(true);
            conn.getOutputStream().write(postDataBytes);

            String xmlOutput;

            Reader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8"));
            for (int c; (c = in.read()) >= 0;) {
                System.out.print((char)c);
            }
        } catch (MalformedURLException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
                
                    # The following Python code will call getLocations
# and print the json response.

import requests
headers = {'response-content-type': 'json'}
payload = {'apiLogin': 'AbC1234-9999', 'apiTransKey': '9845dk-39fdk3fj3-4483483478', 'transactionId': '45k-dk3fj3-44478', 'searchCriteria': '5544', 'searchCriteriaType': '1'}
r = requests.post(url='https://**your-full-implementation-url**/getLocations', data=payload, headers=headers)
try:
    print(r.json())
except:
    print(r.status_code)
                
                    // The following PHP code will make a getLocations call
// and prints the json response.

$endpoint = 'https://**your-full-implementation-url**/getLocations';
$params = array('apiLogin'=>'AbC1234-9999', 'apiTransKey'=>'9845dk-39fdk3fj3-4483483478', 'transactionId'=>'45k-dk3fj3-44478', 'searchCriteria'=>'5544', 'searchCriteriaType'=>'1');

$curl = curl_init();
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, $params);
curl_setopt($curl, CURLOPT_URL, $endpoint);
curl_setopt($curl, CURLOPT_HTTPHEADER, array('response-content-type: json'));
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);

$result = curl_exec($curl);
curl_close($curl);
$json = new json_decode($result, true);
print_r($json);

                
                    // The following C# code will make a getLocations call
// and print the json response.

using System;using System.IO;
using System.Net;
using System.Text;

byte[] data = Encoding.ASCII.GetBytes(
    "apiLogin=AbC1234-9999&apiTransKey=9845dk-39fdk3fj3-4483483478&transactionId=45k-dk3fj3-44478&searchCriteria=5544&searchCriteriaType=1");
WebRequest request = WebRequest.Create("https://**your-full-implementation-url**/getLocations");
request.Method = "POST"\;
request.ContentLength = data.Length;
request.Headers.Add("response-content-type", "json");
using (Stream stream = request.GetRequestStream())
{
    stream.Write(data, 0, data.Length);
}
string responseContent = null;
using (WebResponse response = request.GetResponse())
{
    using (Stream stream = response.GetResponseStream())
    {
        using (StreamReader sr = new StreamReader(stream))
        {
            responseContent = sr.ReadToEnd();
        }
    }
}
Console.WriteLine(responseContent);
                
                    # The following Ruby code will make a getLocations call
# and print the json response.

require 'uri'
require 'net/http'

uri = URI("https://**your-full-implementation-url**/getLocations")
https = Net::HTTP.new(uri.host, uri.port)
https.use_ssl = true
request = Net::HTTP::Post.new(uri.path)
request['response-content-type'] = 'json'
request.body = {apiLogin: 'AbC1234-9999', apiTransKey: '9845dk-39fdk3fj3-4483483478', transactionId: '45k-dk3fj3-44478', searchCriteria: '5544', searchCriteriaType: '1'}.to_json
response = https.request(request)
puts response