Open APIs

 View Only
Expand all | Collapse all

what is the new "TMF620E Async Product Catalog Asynchronous" API published today?

  • 1.  what is the new "TMF620E Async Product Catalog Asynchronous" API published today?

    TM Forum Member
    Posted Jun 17, 2024 07:44

    hi,

    Got notified today that TMF has published a new API called.... "TMF620E Async Product Catalog  Asynchronous v5.0.0"

    this release is quite surprising.

    1. what's the purpose of this API that wasn't already covered by 620?
    2. Why does letter "E" mean?
      1. what about TMF620A, TMF620B...TMF620D?
    3. why is this API specifically called "async"?
    4. can TMF share a document explaining the differences between 620 and 620E?
      1. I went through some sections and I haven't yet found notable differences except that 620E has less information on sub-diagrams but still has a few more pages



    ------------------------------
    Kind regards,

    Matthieu Hattab
    Lyse Platform
    ------------------------------


  • 2.  RE: what is the new "TMF620E Async Product Catalog Asynchronous" API published today?

    TM Forum Member
    Posted Jun 17, 2024 09:29

    Hi Matthieu

    The publication is to the beta/preproduction page https://www.tmforum.org/oda/open-apis/table/pre-production

    The asynchronous Open API is a parallel initiative that creates API contracts according to the async API standard (https://www.asyncapi.com/en). Async API basically separates the invocation of operations from the response, so that the consumer sends the input payload as an event/message and waits to receive the response as an event/message.

    There is no change to the payload model, and as far as I am aware the transformation of the published assets to the async API format is completely tool-driven and automatic (for example although I'm the nominal owner of TMF620 I was completely uninvolved in this publication).

    Hope it helps



    ------------------------------
    Jonathan Goldberg
    Amdocs Management Limited
    Any opinions and statements made by me on this forum are purely personal, and do not necessarily reflect the position of the TM Forum or my employer.
    ------------------------------



  • 3.  RE: what is the new "TMF620E Async Product Catalog Asynchronous" API published today?

    TM Forum Member
    Posted Jun 20, 2024 09:51

    Hi "asynchronous Open API" folks, Jonathan,

    I was trying to find the project page for this initiative, in order to learn more about the plan/path, objectives, etc., but I'm not turning up anything (or I'm looking wrong).  Can you point me to the right place and/or people?

    Regards,



    ------------------------------
    Rakshit Simha
    Oracle Corporation
    ------------------------------



  • 4.  RE: what is the new "TMF620E Async Product Catalog Asynchronous" API published today?

    TM Forum Member
    Posted Jun 21, 2024 07:20

    Hi,

    You can find some information about the AsyncAPI initiative in this catalyst:

    https://www.tmforum.org/catalysts/projects/C23.0.562/asyncapi-phase-ii

    This is phase II, but there is also phase I whose documentation I have not been able to find. 

    Regards,



    ------------------------------
    Abel Ruiz Huerta
    alvatross
    ------------------------------



  • 5.  RE: what is the new "TMF620E Async Product Catalog Asynchronous" API published today?

    TM Forum Member
    Posted Jun 24, 2024 11:40

    Just a correction to what I wrote before about the API table, after I wrote the post I discovered that the presentation has been revised, see here for more details.

    https://engage.tmforum.org/discussion/open-api-table-reorganized

    The dedicated page for each API includes the async variation if there is one.



    ------------------------------
    Jonathan Goldberg
    Amdocs Management Limited
    Any opinions and statements made by me on this forum are purely personal, and do not necessarily reflect the position of the TM Forum or my employer.
    ------------------------------



  • 6.  RE: what is the new "TMF620E Async Product Catalog Asynchronous" API published today?

    TM Forum Member
    Posted Aug 25, 2025 14:43

    Is asynchronous APIs removed from site ? I could not find any asynchronous api in site or are they included existing open api specification ?

    I remember like there was a seperate link to asynchronous api.



    ------------------------------
    Oktay DERMAN
    i2i Systems
    ------------------------------



  • 7.  RE: what is the new "TMF620E Async Product Catalog Asynchronous" API published today?

    TM Forum Member
    Posted Aug 26, 2025 07:56
    Understanding AsyncAPI: From REST to Event-Driven ArchitecturesThe AsyncAPI specification has evolved significantly, presenting both opportunities and challenges. This discussion explores its origins, key concepts, and implications for transitioning from REST to event-driven architectures.A Brief History of AsyncAPIAsyncAPI began with the AsyncAPI Catalyst. Version 1 focused on translating REST APIs into AsyncAPI using the Request-Reply pattern, effectively mapping CRUD operations with minimal semantic changes. Version 2 expanded to address gateways between REST and asynchronous systems and introduced notifications, raising a critical question: What defines an event, and how do event-driven architectures function?Since these developments, AsyncAPI has updated to version 3.0, introducing compatibility challenges that require careful consideration.Event-Driven Architectures: A Paradigm ShiftUnlike REST APIs, which rely on commands (e.g., instructing a system to perform an action) and queries (e.g., retrieving data), event-driven systems operate differently. Events signal that something has occurred without expecting a response, enabling loose coupling between producers, consumers, and brokers. This decoupling allows for scalability: add more consumers to handle increased message volumes or more producers for diverse message sources. Brokers ensure messages are reliably stored until processed.This shift changes responsibilities. In REST, servers validate message syntax and return error codes for invalid requests. In event-driven systems, brokers ensure syntactic correctness via schema registries, freeing producers and consumers to focus on business logic.
    Entity Types in AsyncAPIWhen transitioning from REST to AsyncAPI, entities can be categorized into three groups: Repository, Task, and Business Interaction entities.
    1. Repository Entities (e.g., Product, Service, Resource)
      These entities represent inventory or catalog data. Producers emit events without expecting functional actions beyond message storage. Supported events include:
      • <Entity>CreateEvent: Signals creation of a new entity.
      • <Entity>StateChangeEvent or <Entity>AttributeValueChangeEvent: Indicates updates to an existing entity.
      • <Entity>DeleteEvent: Marks an entity as obsolete.
    2. Task Entities
      Task entities are "passive-aggressive," expecting a consumer to act and respond. For example:
      • An initiating application produces a <Task>CreateEvent.
      • The consuming application processes the task and emits a <Task>StateChangeEvent (e.g., status=done or terminatedWithError).
      • Tasks may trigger related events, such as a CancelProductOrder task resulting in sending ProductOrderStateChangeEvent.
    3. Business Interaction Entities
      These complex entities initiate multi-step processes affecting multiple inventory items. The initiating application produces a <BusinessInteraction>CreateEvent and consumes <BusinessInteraction>StateChangeEvent for progress updates. It may also generate task events like <CancelBusinessInteraction>CreateEvent to steer the process. The executing application emits events like <BusinessInteraction>StateChangeEvent but also <InventoryEntity>CreateEvent or <InventoryItem>StateChangeEvent to reflect changes to the inventory.

    Example 1: Product Inventory ComponentA ProductInventory component manages a repository of Product entities. Its AsyncAPI should support:
    • Receiving: ProductCreateEvent, ProductStateChangeEvent, ProductAttributeValueChangeEvent, ProductDeleteEvent (with semantic validation handled by an order-handling component). This might sound counterintuitive: It is the order handling application that creates or changes products. The ProductInventory component only store those updates.
    • Query/Search Tasks:
      • Receive QueryProductCreateEvent and send QueryProductStateChangeEvent (single response).
      • Receive SearchProductCreateEvent and send SearchProductStateChangeEvent (multiple responses).
    This design enables horizontal scaling through sharding, ideal for cloud environments to boost query and search performance.
    Example 2: Product Order Handling ComponentA ProductOrderHandling component orchestrates complex order processes. Its AsyncAPI should:
    • Receive Process Triggers and Steering Events:
      • ProductOrderCreateEvent, CancelProductOrderCreateEvent, RescheduleProductOrderCreateEvent.
    • Send Feedback Events:
      • ProductOrderStateChangeEvent, CancelProductOrderStateChangeEvent, RescheduleProductOrderStateChangeEvent.
    • Update Inventory:
      • Send ProductCreateEvent, ProductStateChangeEvent.
    • Trigger External Processes:
      • Send ServiceOrderCreateEvent, ResourceOrderCreateEvent, WorkOrderCreateEvent, ShippingOrderCreateEvent.
    • Receive External Updates:
      • ServiceOrderStateChangeEvent, ServiceStateChangeEvent, ResourceOrderStateChangeEvent, etc.
    A single AsyncAPI document should describe all these operations.
    Schema Registry for Message ValidationTo ensure agreement on message payloads, a schema registry is often used. This registry, accessible at runtime, enables brokers to validate message syntax, ensuring only valid messages are processed.ConclusionTransitioning from REST to AsyncAPI requires rethinking system design to leverage the scalability and flexibility of event-driven architectures. By categorizing entities, defining clear event roles, and using tools like schema registries, developers can build robust, scalable systems aligned with modern architectural principles. This requires significant effort and a project inside TM-Forum that handles this effort. I believe TM-Forum is currently evaluating if there is sufficient CSP support to start such a project. @Hugo Vaughan @Lorna Mitchell


    ------------------------------
    Koen Peeters
    Ciminko SA
    ------------------------------



  • 8.  RE: what is the new "TMF620E Async Product Catalog Asynchronous" API published today?

    TM Forum Member
    Posted Aug 28, 2025 02:34

    They have been unpublished; there was an update from Goutham on 25 July 2025:

    (...)

    As part of our commitment to advancing Open API standards and meeting the evolving needs of our industry, we are initiating a strategic review of TM Forum's ASYNC API offerings. This review aims to ensure that future ASYNC APIs are fully aligned with emerging patterns in event-driven architectures and deliver the interoperability our members expect.
    As a first step, we will be unpublishing the current set of 10 preview ASYNC APIs from the TM Forum API Directory. These APIs represented early explorations of asynchronous patterns. Their removal will allow us to collaboratively define a stronger technical foundation for ASYNC APIs moving forward.
    (...)


    ------------------------------
    Kristian Svalheim
    Lyse Tele AS
    ------------------------------



  • 9.  RE: what is the new "TMF620E Async Product Catalog Asynchronous" API published today?

    Posted Aug 29, 2025 06:14
    Edited by Manoj PG Sep 01, 2025 00:54

    @Kristian Svalheim I was also looking for the update on async specifications. Could you please share the link to the original post by Goutham regarding the ASYNC API offerings, as I am unable to locate it? 



    ------------------------------
    Manoj PG
    Oracle Corporation
    ------------------------------



  • 10.  RE: what is the new "TMF620E Async Product Catalog Asynchronous" API published today?

    TM Forum Member
    Posted Sep 01, 2025 02:14

    The update was an Open API project email so I have no link to share.

    -------------------------------------------