checklist Validate

The online validator that used to be here is currently out of service. Please follow the instructions below for how to validate your API Endpoint from your own computer.

Make sure you’re sporting Python 3

All Type.World code is written for Python 3 and is not backwards compatible with Python 2. Make sure you’re using Python 3 by running python3 -V on your command line. (Macs come with Python 3 pre-installed, but the default python command points to Python 2. Instead, python3 points to the correct one.)

Make sure you have PIP 3

PIP is Python’s package service, and sadly, it’s not always bundled with Python. See if you have it by running pip3 -V.

If not already installed, download PIP’s installer with curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py, then install it with python3 get-pip.py. Afterwards, confirm with pip3 -V.

Validate an API Endpoint from your computer

  1. Install the Python typeworld module using pip3 install typeworld. Make sure to keep the module up to date by running pip3 install -U typeworld every time you use it as changes may occur at any time.
  2. For help, run validateTypeWorldEndpoint -h, which will print the following output:
  3. Run the validator using validateTypeWorldEndpoint typeworld://json+https//awesomefonts.com/api all

The following profiles are available:

All Profiles
Keyword: all

Runs available profiles

Setup
Keyword: setup

Check API endpoint response (EndpointResponse class) and download subscription (InstallableFontsResponse class). If necessary, create a Type.World user account and try again.

Free Fonts
Keyword: freefont

Download and install a free font. This subscription needs to hold at least one free font. The first free font will be downloaded

Non-expiring Protected Fonts
Keyword: nonexpiringprotectedfont

To check the proper response of your API Endpoint in handling protected fonts (the norm for commercial setups), this test requires the subscription to hold at least one protected font with at least one LicenseUsage object with a seatsAllowed attribute of 1 and a seatsInstalled attribute of 0. The routine will install the font, and then attempt to install the same font a second time on another (assumed) computer. This is supposed to fail because only 1 seat is allowed. Only after removing the font installation, the second computer can succeed in installing the font.