PixelPort Developer Documentation


PixelPort is client gallery software for photographers and videographers. Studios upload photos and 4K video, deliver them in a branded gallery on their own domain, collect client favourites, and sell prints and digital downloads. PixelPort takes no commission on those sales.


This page is the entry point for everything machine-readable about PixelPort: the REST API, the OpenAPI specification, the Markdown variants of every page, and the agent instructions.


Start here



Nothing here needs an account to read. Start at the API catalog if you have only the domain:


curl -H "Accept: application/linkset+json" https://www.pixelport.co/.well-known/api-catalog

What you can build


The PixelPort REST API is read-only today. It is built for three jobs:


  • Reporting. Pull gallery sales into a spreadsheet, a BI tool, or an accounting workflow. Every order carries its amounts in US cents, its gallery, and its payment state.
  • CRM and studio management. Sync the client list and each client's gallery count into the tool a studio already runs its business from.
  • Agents and assistants. Answer questions like "which galleries have not been delivered", "what did this client buy", or "how much did the studio make last month" without screen-scraping the dashboard.

Creating and updating galleries through the API is not available yet. Galleries are created in the dashboard.


Getting an API key


1. Create a PixelPort account at https://www.pixelport.co/signup.

2. Subscribe to the Studio ($129/month) plan. API access is a Studio-plan feature.

3. Open Settings → API in the dashboard and create a key.

4. Copy the key when it is shown. PixelPort stores only a hash, so a lost key cannot be recovered — create a new one and revoke the old.


Keys start with pk_live_ and address exactly one studio. Every response is filtered to that studio, so a key can never read another studio's galleries, clients, or sales.


Reading the site without a browser


Every documentation and marketing page on https://www.pixelport.co answers to Accept: text/markdown with the Markdown source of that page, and to a .md suffix on the same URL. These two are equivalent:


curl -H "Accept: text/markdown" https://www.pixelport.co/pricing
curl https://www.pixelport.co/pricing.md

Responses send Vary: Accept, so a cache cannot hand the HTML variant to a client that asked for Markdown. A page with no Markdown variant answers 406 Not Acceptable when Markdown is the only type you accept, rather than returning HTML you did not ask for.


Support


Email support@pixelport.co with the endpoint, the request you sent, and the x-vercel-id response header. That header identifies the exact request in our logs.