Welcome to Py Zip Code API’s documentation!¶
Py ZipCodeApi will make it easier for you to use the different options in ZipCodeAPI.
Installation¶
Use pip to install from PyPI:
pip install pyzipcodeapi
Register for free api_key
here.
Options¶
As mentioned in the original website. the following options are supported in this package :
Example¶
# set different inputs
f2 = FormatEnum.JSON
ud = DistanceUnitEnum.KM
ug = GeoUnitEnum.DEGREES
us = CountryEnum.US
ca = CountryEnum.CA
zca = ZipCodeApi(api_key=API_KEY, f=f2, country=us)
# https://www.zipcodeapi.com/rest/<api_key>/distance.<format>/<zip_code1>/<zip_code2>/<units>
print(zca.distance(zip_code1="94106", zip_code2="94132", units=ud))
print("------------------")
# https://www.zipcodeapi.com/rest/<api_key>/multi-distance.<format>/<zip_code>/<other_zip_codes>/<units>
print(zca.multi_distance(zip_code="94106", zip_codes=["94132"], units=ud))
print("------------------")
# https://www.zipcodeapi.com/rest/<api_key>/radius.<format>/<zip_code>/<distance>/<units>
print(zca.radius(zip_code="94120", distance=5, units=ud, minimal=False))
print("------------------")
# https://www.zipcodeapi.com/rest/<api_key>/multi-radius.<format>/<zip_code>/<distance>/<units>
print(
zca.multi_radius(
distance=5,
zip_codes=["22911", "22902"],
addresses=["1827 Glissade Ln, Charlottesville VA 22911"],
units=ud,
)
)
print("------------------")
# https://www.zipcodeapi.com/rest/<api_key>/match-close.<format>/<zip_codes>/<distance>/<units>
print(zca.match_close(zip_codes=["22911", "22902"], distance=120, units=ud))
print("------------------")
# https://www.zipcodeapi.com/rest/<api_key>/info.<format>/<zip_code>/<units>
print(zca.info(zip_code="22911", units=ug))
print("------------------")
# https://www.zipcodeapi.com/rest/<api_key>/multi-info.<format>/<zip_code>/<units>
print(zca.multi_info(zip_codes=["22911"], units=ug))
print("------------------")
# https://www.zipcodeapi.com/rest/<api_key>/city-zips.<format>/<city>/<state>
print(zca.city_zip_codes(city="New York", state="VA"))
print("------------------")
# https://www.zipcodeapi.com/rest/<api_key>/state-zips.<format>/<state>
print(zca.state_zip_codes(state="VA"))
print("------------------")
# https://www.zipcodeapi.com/rest/<api_key>/radius-sql.<format>/<lat>/<long>/<lat_long_units>/<distance>/<units>/
# <lat_field_name>/<long_field_name>/<precision>
print(
zca.radius_sql(
lat=37.722223,
long=-122.484048,
lat_long_units=ug,
distance=5,
units=ud,
lat_field_name="lat",
long_field_name="long",
precision=4,
)
)
Output¶
for each request you make, you can choose between the different outputs :
- json
- csv (the output is an instance from CSV Reader Objects DictReader)
- xml
Warning
Depend on the option you will choose, Please refer to the original website to see the context of each output.
Contributing¶
To contribute to PyZipCodeAPI create a fork on GitHub. Clone your fork, make some changes, and submit a pull request.
Issues¶
Use the GitHub issue tracker for PyZipCodeAPI to submit bugs, issues, and feature requests.