Postal Code Boundaries Documentation
    • Dark
      Light
    • PDF

    Postal Code Boundaries Documentation

    • Dark
      Light
    • PDF

    Article summary

    Purpose

    LightBox Postal Code Boundaries API supports autocomplete, tile and BBox image creation, and spatial requests to add to your mapping application or to retrieve postal code objects to add to your analysis. The postal code object contains postal code, state and nation along with the centroid and polygon in WKT format.

    OAS 3.1 Specification

    Features

    • Autocomplete
    • Tile/BBox image creation for your common map controls
    • Return postal code object by ID
    • Return postal code object by geometry WKT

    Requirements

    The LightBox APIs are hosted in the cloud and therefore have no platform requirements. Application requirements include:
    • A network connection to the LightBox API server
    • Ability to parse JavaScript Object Notation (JSON) API responses
    • Secure HTTPS connection
    • LightBox authentication key
    • LightBox authentication key

    Connecting your account

    When your LightBox user account is created, a unique API key is also generated. The API key should be kept secret at all times and can only be used for API requests. The key is required in all API calls.

    To retrieve your unique API key:

    • Log in to the LightBox Developer Portal 
    • Select Apps from the menu bar
    • In your approved App, note your API key (under Consumer Key)

    Performing API requests

    All API requests must be made over secure HTTPS connections. Requests made over HTTP will fail.

    The base URL of the API server that all API requests will be made to is: https://api.lightboxre.com/ followed by a version number https://api.lightboxre.com/v1

    Authentication

    LightBox APIs uses a token-based authentication. All requests to the LightBox APIs must be authenticated. The token to be passed via an HTTP header with key 'x-api-key' and value <Your authentication token>

    Pass your unique API key in the authorization header of every LightBox API call.  LightBox uses this information to authenticate your identify and determine whether you have sufficient permissions to complete the operation. curl -X GET -H ‘x-api-key: (api_key)’  https://api.lightboxre.com/

    API Requests

    Query by Geometry

    Query for postal code records based on a geometry represented as a well-known text (WKT) string.

    • POINT(-122.40317865990883 45.585729937697515)
    • LINESTRING (-122.40581795357949 45.58497908445598,-122.40325376176125 45.58627054581282)
    • POLYGON ((-122.4032877944377 45.58629457984625,-122.40264406427413 45.585697658341736,-122.40184476598769 45.58610686936547,-122.40244558080703 45.586688769812724,-122.4032877944377 45.58629457984625))

    GET /postalcodes/us/geometry

    Pro Tip:
    This endpoint is best used when you have an existing latitude longitude from 3rd party geocoder, or using the value of a map click/identify from a standard map control.

    Example requests

    curl -X GET -H ‘x-api-key: (api_key)’ https://api.lightboxre.com/v1/postalcodes/us/geometry?wkt=POINT%28-117.852723%2033.63799%29&bufferDistance=50&bufferUnit=m

    https://api.lightboxre.com/v1/postalcodes/us/geometry?wkt=POINT%28-117.852723%2033.63799%29&bufferDistance=50&bufferUnit=m

    Parameters

    ParameterTypeDescriptionUsage
    wktqueryThe geometry of the location expressed in WKT format.required
    bufferDistancequeryBuffer distance expressed in 'bufferUnits'.optional
    bufferUnitqueryThe unit type to apply to the buffer (eg m, km, ft, mi)optional

    Response

    Media type: application/json

    Query by Postal Code ID 

    Query postal codes using the 5 digit postal code 'ID.' (postal code e.g. 92630)

    GET /postalcodes/us/{id}

    Example Requests

    curl -X GET -H ‘x-api-key: (api_key)’ https://api.lightboxre.com/v1/postalcodes/us/92630

    https://api.lightboxre.com/v1/postalcodes/us/92630 

    Parameters

    ParameterTypeDescriptionUsage
    idpathFive digit postal coderequired

    Response

    Media type: application/json

    Autocomplete

    Return multiple records based on a full or partial postal code.

    GET /counties/us/_autocomplete

    Example Requests

    curl -X GET -H ‘x-api-key: (api_key)’ https://api.lightboxre.com/v1/postalcodes/_autocomplete/us?text=926

    https://api.lightboxre.com/v1/postalcodes/_autocomplete/us?text=926

    Parameters

    ParameterTypeDescriptionUsage
    textrequestFull or partial postal coderequired

    Response

    Media type: application/json

    Tile 

    Use within common map controls to show postal code boundaries as a tile overlay.

    GET /postalcodes/us/tile/{zoom}/{x}/{y}

    Example Requests

    curl -X GET -H ‘x-api-key: (api_key)’ https://api.lightboxre.com/v1/postalcodes/us/tile/18/45050/104888

    https://api.lightboxre.com/v1/postalcodes/us/tile/18/45050/104888

    Parameters

    ParameterTypeDescriptionUsage
    zoompathTile zoom level, which can be a minimum of '13' and a maximum or '21.'required
    xpathTile column.required
    ypathTile row.required

    Response

    Media type: image/png

    Tile Bounding Box 

    Use within common map controls to show postal code boundaries as a bounding box overlay.

    GET /postalcodes/us/tile

    Example Requests

    curl -X GET -H ‘x-api-key: (api_key)’ https://api.lightboxre.com/v1/postalcodes/us/tile?bbox=-83.0434660625,40.0198659375,-83.04070793749999,40.0226240625&width=600&height=600

    https://api.lightboxre.com/v1/postalcodes/us/tile?bbox=-83.0434660625,40.0198659375,-83.04070793749999,40.0226240625&width=600&height=600

    Parameters

    ParameterTypeDescriptionUsage
    bboxpathA bounding box expressed in the NAD83 projected coordinate system.required
    widthpathWidth of the result imagerequired
    heightpathHeight of the result imagerequired

    Response

    Media type: image/png

    Health Check

    Health Check is an endpoint used to determine the health of this service

    GET /postalcodes/health

    Example Requests

    curl -X GET -H ‘x-api-key: (api_key)’ https://api.lightboxre.com/v1/postalcodes/health

    https://api.lightboxre.com/v1/postalcodes/health

    Parameters

    ParameterTypeDescriptionUsage
    None
     

    Response

    Media type: application/json

    Health Check HTTP Status Codes:

    Status CodeDescription
    200 OK - Service is up and healthy
    503Service is unavailable

    API Response

    For each endpoint other then the tile requests the response will stay consistent. 

    {
      "$ref": "string",
      "$metadata": {
        "geogcs": {
          "epsg": "4326"
        },
        "recordSet": {
          "totalRecords": 99,
          "bbox": {
            "xMax": -105.250409,
            "xMin": -105.251916,
            "yMax": 40.023629,
            "yMin": 40.022576
          }
        }
      },
      "postalCode": [
        {
          "$ref": "string",
          "id": "string",
          "fips": "string",
          "location": {
            "representativePoint": {
              "longitude": 0,
              "latitude": 0,
              "geometry": {
                "wkt": "string"
              }
            },
            "geometry": {
              "wkt": "string"
            },
            "regionCode": "AL",
            "postalCode": "string",
            "countryCode": "US"
          }
        }
      ]
    }

    Field Dictionary


    FieldTypeDescription
    countystringCounty that the postal code resides in.
    fpsstringFederal Information Processing Code for the State, as well as the Federal Information Processing Code for the county. The first two digits are the state code and the last three digits are the county code.
    location.postalCodestringPostal code value.
    locatoin.regionCodestringRegion code based on country code, including USPS Publication 28, Appendix B, for the United States and ISO 3166-2:CA for Canada.
    location.countryCodestringISO 3166 alpha-2 country code (e.g., 'US' for the United States).

    HTTP Error Codes

    HTTP Response status codes along with a brief summary of their commonly accepted usage. These status codes are returned by LightBox APIs for each request:
    200
    The request succeeded.
    201
    The object was created successfully
    202Accepted, no content
    204Successful, no content
    204
    The server has successfully fulfilled the request and that there is no additional content to send in the response payload body. Typically returned on a DELETE
    400
    One or more of the request parameters were invalid.
    401
    The client must authenticate itself to get the requested response. Note: This could also be due to your trial key has expired.
    404
    The server cannot find the requested resource. This can also mean that the endpoint is valid but the resource itself does not exist.
    429
    Too many requests were made in a short period of time, or you have exceeded your request-lot pool.
    500
    The server has encountered an error it does not know how to handle.
    503Service Unavailable.





    Was this article helpful?

    Changing your password will log you out immediately. Use the new password to log back in.
    First name must have atleast 2 characters. Numbers and special characters are not allowed.
    Last name must have atleast 1 characters. Numbers and special characters are not allowed.
    Enter a valid email
    Enter a valid password
    Your profile has been successfully updated.