About

UnitFinder is a fictitious property management program, which holds information for a self-storage company that has units in multiple locations. An API is used to share information among disparate systems, via HTTPS over the internet.

API Manager and Client

A virtual machine from Amazon Web Services (AWS), running Windows Server with IIS and .NET

  • Client Site (C#) - [csharp.zdcs.net] - a web-based API client
    • Offers controls to add, view, edit and delete Unit records via the API
    • Can read Location records via the API, but can not write
    • No database (all data is from API)
    • Code language is C#
  • Manager Site (C#) - [manager.zdcs.net] - a web-based management interface
    • Offers controls to add, view, edit and delete "Unit" records
    • Offers controls to add, view, edit and delete "Location" records
    • Connected to the API Server database via HTTPS
    • Code language is C#

API Server

An App Service with SQL Server, running at Microsoft Azure Cloud

  • API Site - [unitfinder.azurewebsites.net] - There are two API endpoints:
    • Units (POST, PUT, GET, DELETE)
    • Location (GET only)
    • See the endpoints and methods below
    • Code language is C#

Non-Windows API Client

(This server). A virtual machine at Amazon Web Services (AWS), running Linux Server with Apache and PHP.

  • Client Site (PHP) - [php.zdcs.net] - a web-based API client
    • Offers controls to add, view, edit and delete Unit records via the API
    • Can read Location records via the API, but can not write
    • No database (all data is from API)
    • Code language is PHP

Endpoints and Methods

With the API key, you can use software like Postman API Client to access the data

  • Base URL: https://unitfinder.azurewebsites.net/

Units

  • GET: api/Units
  • GET: api/Units/#
  • PUT: api/Units/#
  • POST: api/Units
  • DELETE: api/Units/#
  • AddHeader("ApiKey", "????????");

Locations

  • GET: api/Locations
  • GET: api/Locations/#
  • AddHeader("ApiKey", "????????");