Skip to main content

Architecture

The Proximos API runs entirely on AWS infrastructure:

AWS Lambda

Handles all request routing, database lookups, and response formatting for every API call.

AWS API Gateway

Manages HTTPS endpoints and validates every license key before forwarding requests.

Amazon DynamoDB

Stores the macOS version database (primary and legacy tables) plus the license key authorization table.

AWS CloudWatch

Logs API activity: request counts per license key and the query data requested.

Staying current

The Proximos API polls Apple’s GDMF (General Device Management Framework) endpoint every five minutes for new macOS releases. When Apple publishes a new version, it is added to the database automatically — no manual intervention required. The Proximos API is typically updated within minutes of Apple publishing a new macOS release.

Request flow

  1. Your client sends a GET request to proximosapi.enlazosystems.com/items/{query} with your license key in the Authorization header.
  2. AWS API Gateway validates the license key against the authorization database.
  3. If authorized, the Lambda function is invoked and queries DynamoDB for the matching record.
  4. The result is returned as a JSON response.

Database structure

The database uses a DynamoDB composite key called board_id_major_version (e.g., J293AP:14). Each summary record stores:
FieldExampleDescription
board_id_major_versionJ293AP:14Primary key: board ID + colon + major version
major_version14The macOS major version number
version14.8.7Latest known point release for this board/major
releasedDate2026-05-11Release date of the latest point release
Point releases (e.g., J293AP:14.7.2) are stored as individual rows as well, enabling the GET by BoardID:Version endpoint to find the next available update from any specific version.

Best Response Performance

Using a primary key lookup GET by BoardID:Version will provide the fastest API response times. If possible, extract a Mac Board ID with shell commandioreg -l | grep board-id and use it in your API call.

Board ID coverage

The J293AP (M1 MacBook Pro) is used as the canonical representative board for version-only lookups covering macOS 11 through the latest release. For older macOS versions, progressively older Mac models are used to fill in coverage. For Classic Mac OS and early Mac OS X, processor type identifiers (G3, G4, PowerPC, 68040, etc.) serve as the board ID.