API Changelog
This changelog records customer-facing API contract changes published in this documentation repository. Dates refer to documentation publication dates and do not necessarily represent backend deployment dates.
2026-08-12
Article Categories API
- Added writable
parent_idsupport to article category create and update requests.nullmoves a category to the root level; invalid or cross-publication parents return422 Unprocessable Entity. - Added writable
positionsupport for ordering categories within the same parent. Positions are 1-indexed positive JSON integers; invalid values return422and are not normalized. - Added
positionto category responses and clarified thatparent_idsis the read-only ancestor path from the root to the immediate parent. - Defined combined parent and position behavior: assigning or changing a parent appends the category to the new sibling list and ignores
positionin that request. Reordering after a parent change requires a second update. An unchangedparent_idcan be sent together withposition. - Split create and update request schemas: create requires
name;PUTandPATCHaccept partial flat or nested updates.
2026-07-10
Article Import API
- Added article category endpoints to list, create, and update categories with
GET,POST,PUT, andPATCH. - Added
article_category_idsto article responses and article update requests. An empty array removes all assignments. - Restricted category assignment to existing category IDs from the current publication. Unknown IDs and non-integer elements return
422; a non-array value returns400 Bad Request. - Defined article creation and category assignment as two requests: categories cannot be assigned by
POST /storiesand must be assigned with a subsequent article update. - Separated article create and update schemas and documented malformed request envelopes as
400responses.
2026-06-19
Authentication API (OIDC)
- Added the customer-implemented OIDC authorization contract under
/pmx-api/v2/{profile_token}. - Added authorization endpoints for issues, downloads, chatbots, articles, and the optional accessible-issues list.
- Required
Authorization: Bearer {ACCESS_TOKEN}for all OIDC endpoints and documented optional forwarding throughOIDC-ID-Token. - Defined invalid or expired tokens as
401 Unauthorized; valid tokens denied by business rules return200 OKwithgranted: false. - Clarified that end-user login happens upstream at the customer's Identity Provider and that PressMatrix does not send usernames or passwords to this API.
- Documented
PX-User, Auth0, and Keycloak as supported OIDC providers. - Clarified that both authentication API variants are implemented and operated by the customer, not by PressMatrix.
2026-06-17
Article Import API
- Published the Article Import API contract for listing, creating, retrieving, replacing, partially updating, deleting, and publishing articles under the technical
storiesresource. - Added token authentication with
Authorization: Token {TOKEN_GENERATED_BY_PMX}and thestoryrequest and response envelope. - Added JSON and multipart article creation and updates. Image uploads support JPEG, PNG, and GIF with a maximum size of 5 MB.
- Added pagination, creation-date filters, external-ID filtering, and free-text search across article content and product identifiers.
- Documented article pricing, language, release, subscription, purchase, external, and product-identifier fields.
- Defined
401,404, and422responses, deletion behavior, and publishing prerequisite failures.
2026-03-20
Import API 2.1
- Added paginated
GET /emags,GET /emags/{emag_id}, andDELETE /emags/{emag_id}operations. - Added read-only planned-emag listing and retrieval through
GET /planned_emagsandGET /planned_emags/{planned_emag_id}. - Defined standard PDF, planned PDF, and EPUB import payloads. Planned PDF imports use
import_attributestogether withpe_id; EPUB imports useepub_import_attributes. - Defined import-state responses: standard PDF imports use
status; planned PDF and EPUB imports useai_status. Supported states arepending,processing,finished, andfailed. - Added complete emag response envelopes, pagination metadata, and structured validation and business-error responses.
- Clarified update behavior: metadata can be updated independently, import attributes trigger a re-import, and switching between PDF and EPUB mode after creation is not allowed.
- Published a Postman collection for the Import API.
2025-11-14
Authentication API
- Clarified that
POST /issuesis optional and must be enabled by PressMatrix. - Defined the response as a flat array of product IDs. Apple, Google, and external product IDs can be mixed; Amazon product IDs are deprecated.
- Clarified that at least one supported product ID must be returned for each visible issue and that an empty array grants access to no issues.
- Published an example customer implementation using AWS Lambda, DynamoDB, and API Gateway.
2025-09-30
Import API
- Added planned PDF imports to the documented import modes. They use
import_attributeswithimport_imagesand a PressMatrix-providedpe_id.
2025-09-12
Import API
- Replaced the separate planned-emag creation and polling contract with planned PDF creation through
POST /emagsusingpe_id. - Replaced the generic
import_configpayload withimport_attributesfor PDF imports andepub_import_attributesfor EPUB imports. - Defined three mutually exclusive create modes: standard PDF without
pe_id, planned PDF withpe_id, and EPUB. - Documented
422 Unprocessable Entityfor invalid planned-edition IDs, duplicate names, and invalid import-mode changes.
2025-09-10
Import API
- Introduced standalone planned-emag creation through
POST /planned_emagsand processing-status polling throughGET /planned_emags/{planned_emag_id}. This contract was superseded on 2025-09-12 by planned imports throughPOST /emags. - Documented that updating import attributes triggers a new import and removes the previous import result.
- Documented that the import mode cannot be switched between PDF and EPUB after creation.
2025-07-28
Import API 2.0
- Published the OpenAPI contract for creating periodicals with
POST /emagsand updating them withPUT /emags/{emag_id}. - Added token authentication and request envelopes for PDF and EPUB imports.
- Added issue metadata for release dates, pricing, product identifiers, categories, language, text mode, subscription access, and single purchases.
- Defined validation, authentication, not-found, and internal-error responses.
2025-07-24
Import API
- Added the first documented PDF import flow for creating periodicals through
POST /emagswith remote PDF and optional XML widget-mapping URLs.
2025-07-01
Authentication API
- Promoted the download, chatbot, and article authorization endpoints from preview status to supported optional endpoints.
2025-06-30
Authentication API
- Published the OpenAPI contract for authentication, ticket authentication, issue authorization, optional download, chatbot and article authorization, and accessible-issues lookup.
- Defined HTTP Basic Authentication, request and response schemas, profile-token routing, and shared
400and401error responses.
2025-06-18
Authentication API
- Added
Accept: application/jsonto all documented requests. - Marked download, chatbot, and article authorization as preview features at that time.
- Marked
POST /issuesas an optional feature requiring activation by PressMatrix.
2025-06-13
Authentication API
- Added authorization contracts for downloads, chatbots, and articles alongside issue authorization.
- Defined each authorization result as
granted: trueorgranted: false.
2025-06-03
Authentication API
- Published the initial customer-implemented Authentication API contract under
/pmx-api/v1/{profile_token}. - Added username/password authentication, browser ticket authentication, issue authorization, and accessible-issues endpoints.
- Required HTTP Basic Authentication for all endpoints and
401 Unauthorizedfor missing or invalid credentials.