Architecture and concepts
BFF API
BFF API Overview

BFF API - SOM GUI API Specification

Overview

The SOM GUI API serves as a contract between the GUI and backend applications, ensuring smooth interaction between the frontend and various subdomains of the system. It follows OpenAPI version 3.0.0 and acts as a gateway for commands and queries. The API is structured into multiple sub-APIs:

  • Orders: This API handles order-related operations, including retrieval, updates, and status tracking. It enables users to search for orders based on different criteria and manage their lifecycle from creation to fulfillment.
  • Batch Orders: Facilitates batch processing of multiple orders at once. This API is useful for canceling multiple orders in bulk or processing batch updates efficiently.
  • Order Statistics: Provides statistical insights into order data, such as order counts, order distribution by state, and trends over time. This API helps in reporting and analytics.
  • Fulfillment Plans: Defines fulfillment strategies for orders, outlining the steps required to complete an order successfully. Users can retrieve fulfillment plans associated with specific orders.
  • Fulfillment Steps: Allows tracking of individual steps in the fulfillment process. This API is essential for monitoring execution and ensuring smooth order processing.
  • Fulfillment Errors: Captures errors encountered during the fulfillment process. Users can retrieve error details, assign issues to specific users, and attempt retries or manual resolutions.
  • Historic Fulfillment Errors: Stores a history of previously encountered fulfillment errors. This API helps in analyzing past failures and improving system reliability.
  • Audit Logs: Maintains a history of API interactions and system events, enabling traceability and compliance with auditing requirements.
  • Product Catalogue Versions: Manages product catalog versions, allowing importing, deploying, and retrieving information about various versions of the product catalog.
  • Current User: Provides information about the authenticated user, including available actions and permissions.
  • Dynamic Mappers: Handles dynamic parameter configurations, enabling flexible mapping and transformation of data fields in the system.

Authentication

The API requires authentication using Bearer Token (JWT) authentication.