Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
33 changes: 33 additions & 0 deletions .github/workflows/openapi-validation.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
name: OpenAPI Validation

on:
pull_request:
paths:
- 'api/meta/build/meta.yaml'
- 'api/registry/build/registry.yaml'
- 'api/transaction/build/transaction.yaml'

jobs:
validate-openapi:
runs-on: ubuntu-latest

steps:
- name: Checkout code
uses: actions/checkout@v3

- name: Set up Node.js
uses: actions/setup-node@v3
with:
node-version: '16'

- name: Install OpenAPI Validator
run: npm install -g @redocly/openapi-cli

- name: Validate meta.yaml
run: openapi lint api/meta/build/meta.yaml

- name: Validate registry.yaml
run: openapi lint api/registry/build/registry.yaml

- name: Validate transaction.yaml
run: openapi lint api/transaction/build/transaction.yaml
9 changes: 6 additions & 3 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -182,8 +182,8 @@ Schedule schema object was added to Time
- **/get_feedback_categories** : Returns the allowed categories that can have a feedback
- **/get_feedback_form** : Request the BPP to get a feedback form
- **/feedback_form** : Get a feedback form from the BPP. Callback response of /get_feedback_form
- **/rating** : Uses Rating object as message
- **/on_rating** : Used RatingAck as message
- **rating** : Uses Rating object as message
- **on_rating** : Used RatingAck as message

**Made all the meta APIs async. Created the following new meta BAP APIs :**
- POST /cancellation_reasons
Expand Down Expand Up @@ -245,4 +245,7 @@ The same was added to the following :

### December 22, 2021

**Added document object array in order**
**Added document object array in order**

### April 25, 2025
- Updated `/track` API to support tracking at the fulfillment level by adding an optional `fulfillment_id` property.
2 changes: 2 additions & 0 deletions api/transaction/components/io/Track.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,8 @@ properties:
properties:
order_id:
$ref: "../../../../schema/Order.yaml#/properties/id"
fulfillment_id:
$ref: "../../../../schema/Fulfillment.yaml#/properties/id"
callback_url:
type: string
format: uri
Expand Down
13 changes: 12 additions & 1 deletion schema/Item.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -67,15 +67,26 @@ properties:
items:
$ref: "./RefundTerm.yaml"
replacement_terms:
description: Terms that are applicable be met when this item is replaced
description: Terms that are applicable when this item is replaced
type: array
items:
$ref: "./ReplacementTerm.yaml"
properties:
replacement_eligible:
description: Indicates if the item is eligible for replacement
type: boolean
fulfillment_managed_by:
description: Entity managing the fulfillment of the replacement
type: string
return_terms:
description: Terms that are applicable when this item is returned
type: array
items:
$ref: "./ReturnTerm.yaml"
properties:
return_eligible:
description: Indicates if the item is eligible for return
type: boolean
xinput:
description: Additional input required from the customer to purchase / avail this item
allOf:
Expand Down
6 changes: 5 additions & 1 deletion schema/Order.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -100,4 +100,8 @@ properties:
tags:
type: array
items:
$ref: "./TagGroup.yaml"
$ref: "./TagGroup.yaml"
state:
description: The current state of the order. This can represent various stages like 'Pending', 'Processing', 'Shipped', etc., as defined by the network policy.
allOf:
- $ref: "./State.yaml"