Step 4 — public-apis PR (github.com/public-apis/public-apis)

Discovery plumbing (secondary). This page makes the service findable by someone already searching; it does not replace pipeline work (page 00). Do it once; no paid tier, listing or upgrade (hard rule 6).

Prerequisite: Step 3 (the table requires a Postman/"Call this API" link).

What this is: the ~300k-star GitHub index of free/public APIs. Listing = one merged PR adding one table row. Their CONTRIBUTING.md says verbatim "This API list is not a marketing tool" — the PR body must be factual, no adjectives.

Do this

  1. Use the company GitHub account. Fork public-apis/public-apis.
  2. Read their CONTRIBUTING.md once (2 minutes) so nothing below surprises you.
  3. Edit the README table in the correct category, adding EXACTLY the prepared row below (entry name Aperture — their rules forbid names ending in "API"; Auth No; HTTPS Yes; CORS No — this was verified by probe, do not change it to Yes).
  4. Open the PR with the prepared factual body below. One row, one commit.
  5. Respond to maintainer review comments factually; if asked for changes that would violate our claims discipline, report back instead of complying.

Artifact

Date Account PR URL Merged?

Prepared row + PR body (paste verbatim)

Embedded verbatim from docs/discovery/submission_drafts/public_apis_pr.md — the in-repo file is the source of truth.

Draft — public-apis/public-apis pull request

DRAFT ONLY. No fork has been made, no PR opened. The operator submits. R9 Step 3. Blocked on the Postman collection URL from postman_workspace.md, which is a required column.


The rule that decides this PR

CONTRIBUTING.md says verbatim: "This API list is not a marketing tool." It also requires "full, free access or at least a free tier." We pass the second rule in the strongest form available — Auth: No, no signup at all — and the likeliest way to lose this PR is violating the first one in the PR body. The draft below is written flat on purpose. Do not warm it up before submitting.

Placement

Section: Science & Math. Insert in alphabetical position — Aperture sorts near the top, before entries beginning Ar…. Check the live file at submission time; the section contents move.

Entry name is Aperture, not "ApertureAPI": the contributing rules say the name must not end in "API" and must not contain a TLD. The PR title still follows the repo's Add [Api-name] API template.

The row (copy exactly, one line)

| [Aperture](https://api.apertureapi.com/docs) | Reconstructs digital holograms into quantitative amplitude and phase using wave optics | No | Yes | No | [Go!](POSTMAN_COLLECTION_URL_FROM_STEP_2) |

Column-by-column, with the reasoning, because each one is a claim:

Column Value Why
API Aperture, linked to /docs Interactive OpenAPI docs. Verify /docs is serving publicly at submission time — it is gated by APERTURE_DOCS_ENABLED / APERTURE_ENV and was enabled on the deployment checked 2026-09-22. If it is ever off, link https://api.apertureapi.com/llms.txt instead, which is unconditional.
Description 86 characters Under the 100-character cap. Factual, no adjectives.
Auth No POST /public/reconstruct takes no key. The HMAC form token is anti-bot friction minted by an unauthenticated GET, not a credential — nothing is issued to a person.
HTTPS Yes
CORS No Verified, not assumed. CORS_ALLOWED_ORIGINS is set to the ApertureAPI origins plus localhost; a probe with a foreign Origin header on 2026-09-22 returned no access-control-allow-origin. A browser on a third-party page cannot call this API. Answering Yes here would be a false claim that a reviewer can check in thirty seconds.
Call this API Postman collection URL Produced by the Postman draft.

PR title (exact)

Add Aperture API

PR body (copy as-is)

Adds Aperture to Science & Math.

Aperture reconstructs digital holograms. A caller uploads a single intensity
frame recording optical interference and receives quantitative amplitude and
phase, computed by angular-spectrum wave propagation.

Meeting the contribution rules:

- **Free access:** `POST /public/reconstruct` requires no account, no API key
  and no email address. The listed `Auth: No` is accurate — the endpoint is
  gated by an anti-bot form token minted from an unauthenticated GET, not by a
  credential issued to a user. Rate limit is a small number of reconstructions
  per IP per hour; upload cap is 75 MB.
- **Not a trial:** the free path is a permanent part of the service, not a
  time-limited evaluation.
- **No hardware purchase is required to use the API.** It accepts a hologram
  file from any source, including the public datasets on Zenodo.
- **HTTPS:** yes. **CORS:** no — the allowlist is restricted to the service's
  own origins, so browser calls from third-party pages are blocked. Listed
  accordingly.

The linked Postman collection's first request is the unauthenticated
reconstruction call, so it returns 200 with no setup.

One row, alphabetical position, squashed to a single commit.

Checklist before opening

Verifiable artifact when executed: the merged PR URL, plus the Aperture row visible in the rendered public-apis README under Science & Math.


Buyer pages to pair with this page: workflow fit. Pipeline stages and KPIs: page 00.