Features
Websites & publishingPortfolio engineMedia & deliveryConservation & fieldworkClient deliveryCoursesCommerce & operationsTeam & workflow
FoundationSolutionsPricing
DocumentationDeveloper APIGuides
About
AboutCommitmentNewsroom
Sign In
ArtInStack

The creative operating system

Product

  • Features overview
  • Websites
  • Portfolio
  • Media
  • Conservation
  • Client delivery
  • Courses
  • Commerce
  • Team
  • Solutions

Resources

  • Guides
  • Software
  • Documentation
  • Developer API
  • Platform foundation
  • Pricing
  • Changelog
  • Roadmap

About

  • About
  • Commitment
  • Newsroom
  • Status
  • Talk to us

Customer login

© 2026 ArtInStack. All rights reserved.

Privacy policyTerms of service

ArtInStack Developer Platform

Build custom integrations, automate workflows, and connect official clients like Lightroom Classic using the ArtInStack HTTP API. Open API reference.

Developer API
  • Overview
  • Authentication
  • OAuth 2.0
  • Personal access tokens
  • Scopes
  • Errors
  • Idempotency
  • API reference
  • Media
  • Portfolios
  • Lightroom Classic
  • Developer settings
Developer API

Idempotency

Send `Idempotency-Key` on `POST /api/v1/media` so retries after network failures do not create duplicate uploads.

Publish and export clients retry on network loss, timeouts, and ambiguous responses. POST /api/v1/media accepts:

Idempotency-Key: <unique-string>

Semantics

  • Same key + same request body → same media_id response (safe retry)
  • Same key + different body → 409 conflict
  • Keys are scoped to the authenticated principal and workspace

Lightroom recommendation

Use a stable key per publish attempt, e.g.:

lr-{catalogId}-{photoUuid}-{exportRevision}

Store the returned media_id on the published photo so re-publish can choose update vs new upload when PATCH media exists.