Initial Digitribe ONIX setup
Some checks failed
Terraform Deploy to GCP / Terraform Plan Only (push) Has been cancelled
Some checks failed
Terraform Deploy to GCP / Terraform Plan Only (push) Has been cancelled
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
FROM golang:1.24-bullseye AS builder
|
||||
FROM golang:1.25 AS builder
|
||||
|
||||
WORKDIR /workspace/app
|
||||
ENV GOTOOLCHAIN=auto
|
||||
COPY cmd/adapter ./cmd/adapter
|
||||
COPY core/ ./core
|
||||
COPY pkg/ ./pkg
|
||||
@@ -10,16 +11,11 @@ RUN go mod download
|
||||
|
||||
RUN go build -o server cmd/adapter/main.go
|
||||
|
||||
# Create a minimal runtime image
|
||||
FROM cgr.dev/chainguard/wolfi-base
|
||||
# ✅ Alpine is removed; using minimal Debian
|
||||
WORKDIR /app
|
||||
|
||||
# Copy only the built binary and plugin
|
||||
COPY --from=builder /workspace/app/server .
|
||||
|
||||
# Expose port 8080
|
||||
EXPOSE 8080
|
||||
|
||||
# Run the Go server with the config flag from environment variable.
|
||||
CMD ["sh", "-c", "./server --config=${CONFIG_FILE}"]
|
||||
BIN
__MACOSX/._schemas
Executable file
BIN
__MACOSX/._schemas
Executable file
Binary file not shown.
BIN
__MACOSX/schemas/._.DS_Store
Normal file
BIN
__MACOSX/schemas/._.DS_Store
Normal file
Binary file not shown.
BIN
__MACOSX/schemas/._core
Executable file
BIN
__MACOSX/schemas/._core
Executable file
Binary file not shown.
BIN
__MACOSX/schemas/._ondc_trv10
Executable file
BIN
__MACOSX/schemas/._ondc_trv10
Executable file
Binary file not shown.
BIN
__MACOSX/schemas/core/._v1.1.0
Executable file
BIN
__MACOSX/schemas/core/._v1.1.0
Executable file
Binary file not shown.
BIN
__MACOSX/schemas/core/v1.1.0/._cancel.json
Normal file
BIN
__MACOSX/schemas/core/v1.1.0/._cancel.json
Normal file
Binary file not shown.
BIN
__MACOSX/schemas/core/v1.1.0/._confirm.json
Normal file
BIN
__MACOSX/schemas/core/v1.1.0/._confirm.json
Normal file
Binary file not shown.
BIN
__MACOSX/schemas/core/v1.1.0/._definitions.json
Normal file
BIN
__MACOSX/schemas/core/v1.1.0/._definitions.json
Normal file
Binary file not shown.
BIN
__MACOSX/schemas/core/v1.1.0/._init.json
Normal file
BIN
__MACOSX/schemas/core/v1.1.0/._init.json
Normal file
Binary file not shown.
BIN
__MACOSX/schemas/core/v1.1.0/._on_cancel.json
Normal file
BIN
__MACOSX/schemas/core/v1.1.0/._on_cancel.json
Normal file
Binary file not shown.
BIN
__MACOSX/schemas/core/v1.1.0/._on_confirm.json
Normal file
BIN
__MACOSX/schemas/core/v1.1.0/._on_confirm.json
Normal file
Binary file not shown.
BIN
__MACOSX/schemas/core/v1.1.0/._on_init.json
Normal file
BIN
__MACOSX/schemas/core/v1.1.0/._on_init.json
Normal file
Binary file not shown.
BIN
__MACOSX/schemas/core/v1.1.0/._on_rating.json
Normal file
BIN
__MACOSX/schemas/core/v1.1.0/._on_rating.json
Normal file
Binary file not shown.
BIN
__MACOSX/schemas/core/v1.1.0/._on_search.json
Normal file
BIN
__MACOSX/schemas/core/v1.1.0/._on_search.json
Normal file
Binary file not shown.
BIN
__MACOSX/schemas/core/v1.1.0/._on_select.json
Normal file
BIN
__MACOSX/schemas/core/v1.1.0/._on_select.json
Normal file
Binary file not shown.
BIN
__MACOSX/schemas/core/v1.1.0/._on_status.json
Normal file
BIN
__MACOSX/schemas/core/v1.1.0/._on_status.json
Normal file
Binary file not shown.
BIN
__MACOSX/schemas/core/v1.1.0/._on_support.json
Normal file
BIN
__MACOSX/schemas/core/v1.1.0/._on_support.json
Normal file
Binary file not shown.
BIN
__MACOSX/schemas/core/v1.1.0/._on_track.json
Normal file
BIN
__MACOSX/schemas/core/v1.1.0/._on_track.json
Normal file
Binary file not shown.
BIN
__MACOSX/schemas/core/v1.1.0/._on_update.json
Normal file
BIN
__MACOSX/schemas/core/v1.1.0/._on_update.json
Normal file
Binary file not shown.
BIN
__MACOSX/schemas/core/v1.1.0/._rating.json
Normal file
BIN
__MACOSX/schemas/core/v1.1.0/._rating.json
Normal file
Binary file not shown.
BIN
__MACOSX/schemas/core/v1.1.0/._response.json
Normal file
BIN
__MACOSX/schemas/core/v1.1.0/._response.json
Normal file
Binary file not shown.
BIN
__MACOSX/schemas/core/v1.1.0/._search.json
Normal file
BIN
__MACOSX/schemas/core/v1.1.0/._search.json
Normal file
Binary file not shown.
BIN
__MACOSX/schemas/core/v1.1.0/._select.json
Normal file
BIN
__MACOSX/schemas/core/v1.1.0/._select.json
Normal file
Binary file not shown.
BIN
__MACOSX/schemas/core/v1.1.0/._status.json
Normal file
BIN
__MACOSX/schemas/core/v1.1.0/._status.json
Normal file
Binary file not shown.
BIN
__MACOSX/schemas/core/v1.1.0/._support.json
Normal file
BIN
__MACOSX/schemas/core/v1.1.0/._support.json
Normal file
Binary file not shown.
BIN
__MACOSX/schemas/core/v1.1.0/._track.json
Normal file
BIN
__MACOSX/schemas/core/v1.1.0/._track.json
Normal file
Binary file not shown.
BIN
__MACOSX/schemas/core/v1.1.0/._update.json
Normal file
BIN
__MACOSX/schemas/core/v1.1.0/._update.json
Normal file
Binary file not shown.
BIN
__MACOSX/schemas/ondc_trv10/._v2.0.0
Executable file
BIN
__MACOSX/schemas/ondc_trv10/._v2.0.0
Executable file
Binary file not shown.
BIN
__MACOSX/schemas/ondc_trv10/v2.0.0/._cancel.json
Normal file
BIN
__MACOSX/schemas/ondc_trv10/v2.0.0/._cancel.json
Normal file
Binary file not shown.
BIN
__MACOSX/schemas/ondc_trv10/v2.0.0/._confirm.json
Normal file
BIN
__MACOSX/schemas/ondc_trv10/v2.0.0/._confirm.json
Normal file
Binary file not shown.
BIN
__MACOSX/schemas/ondc_trv10/v2.0.0/._init.json
Normal file
BIN
__MACOSX/schemas/ondc_trv10/v2.0.0/._init.json
Normal file
Binary file not shown.
BIN
__MACOSX/schemas/ondc_trv10/v2.0.0/._on_cancel.json
Normal file
BIN
__MACOSX/schemas/ondc_trv10/v2.0.0/._on_cancel.json
Normal file
Binary file not shown.
BIN
__MACOSX/schemas/ondc_trv10/v2.0.0/._on_confirm.json
Normal file
BIN
__MACOSX/schemas/ondc_trv10/v2.0.0/._on_confirm.json
Normal file
Binary file not shown.
BIN
__MACOSX/schemas/ondc_trv10/v2.0.0/._on_init.json
Normal file
BIN
__MACOSX/schemas/ondc_trv10/v2.0.0/._on_init.json
Normal file
Binary file not shown.
BIN
__MACOSX/schemas/ondc_trv10/v2.0.0/._on_rating.json
Normal file
BIN
__MACOSX/schemas/ondc_trv10/v2.0.0/._on_rating.json
Normal file
Binary file not shown.
BIN
__MACOSX/schemas/ondc_trv10/v2.0.0/._on_search.json
Normal file
BIN
__MACOSX/schemas/ondc_trv10/v2.0.0/._on_search.json
Normal file
Binary file not shown.
BIN
__MACOSX/schemas/ondc_trv10/v2.0.0/._on_select.json
Normal file
BIN
__MACOSX/schemas/ondc_trv10/v2.0.0/._on_select.json
Normal file
Binary file not shown.
BIN
__MACOSX/schemas/ondc_trv10/v2.0.0/._on_status.json
Normal file
BIN
__MACOSX/schemas/ondc_trv10/v2.0.0/._on_status.json
Normal file
Binary file not shown.
BIN
__MACOSX/schemas/ondc_trv10/v2.0.0/._on_support.json
Normal file
BIN
__MACOSX/schemas/ondc_trv10/v2.0.0/._on_support.json
Normal file
Binary file not shown.
BIN
__MACOSX/schemas/ondc_trv10/v2.0.0/._on_track.json
Normal file
BIN
__MACOSX/schemas/ondc_trv10/v2.0.0/._on_track.json
Normal file
Binary file not shown.
BIN
__MACOSX/schemas/ondc_trv10/v2.0.0/._on_update.json
Normal file
BIN
__MACOSX/schemas/ondc_trv10/v2.0.0/._on_update.json
Normal file
Binary file not shown.
BIN
__MACOSX/schemas/ondc_trv10/v2.0.0/._rating.json
Normal file
BIN
__MACOSX/schemas/ondc_trv10/v2.0.0/._rating.json
Normal file
Binary file not shown.
BIN
__MACOSX/schemas/ondc_trv10/v2.0.0/._search.json
Normal file
BIN
__MACOSX/schemas/ondc_trv10/v2.0.0/._search.json
Normal file
Binary file not shown.
BIN
__MACOSX/schemas/ondc_trv10/v2.0.0/._select.json
Normal file
BIN
__MACOSX/schemas/ondc_trv10/v2.0.0/._select.json
Normal file
Binary file not shown.
BIN
__MACOSX/schemas/ondc_trv10/v2.0.0/._status.json
Normal file
BIN
__MACOSX/schemas/ondc_trv10/v2.0.0/._status.json
Normal file
Binary file not shown.
BIN
__MACOSX/schemas/ondc_trv10/v2.0.0/._support.json
Normal file
BIN
__MACOSX/schemas/ondc_trv10/v2.0.0/._support.json
Normal file
Binary file not shown.
BIN
__MACOSX/schemas/ondc_trv10/v2.0.0/._track.json
Normal file
BIN
__MACOSX/schemas/ondc_trv10/v2.0.0/._track.json
Normal file
Binary file not shown.
BIN
__MACOSX/schemas/ondc_trv10/v2.0.0/._update.json
Normal file
BIN
__MACOSX/schemas/ondc_trv10/v2.0.0/._update.json
Normal file
Binary file not shown.
96
config/digitribe-onix.yaml
Normal file
96
config/digitribe-onix.yaml
Normal file
@@ -0,0 +1,96 @@
|
||||
appName: "digitribe-onix"
|
||||
log:
|
||||
level: debug
|
||||
destinations:
|
||||
- type: stdout
|
||||
contextKeys:
|
||||
- transaction_id
|
||||
- message_id
|
||||
- subscriber_id
|
||||
- module_id
|
||||
http:
|
||||
port: 8081
|
||||
timeout:
|
||||
read: 30
|
||||
write: 30
|
||||
idle: 30
|
||||
pluginManager:
|
||||
root: ./plugins
|
||||
modules:
|
||||
- name: bapTxnReceiver
|
||||
path: /bap/receiver/
|
||||
handler:
|
||||
type: std
|
||||
role: bap
|
||||
httpClientConfig:
|
||||
maxIdleConns: 1000
|
||||
maxIdleConnsPerHost: 200
|
||||
idleConnTimeout: 300s
|
||||
responseHeaderTimeout: 5s
|
||||
plugins:
|
||||
registry:
|
||||
id: registry
|
||||
config:
|
||||
url: http://registry:3030/subscribers
|
||||
retry_max: 3
|
||||
retry_wait_min: 100ms
|
||||
retry_wait_max: 500ms
|
||||
keyManager:
|
||||
id: simplekeymanager
|
||||
config:
|
||||
networkParticipant: digitribe-network
|
||||
keyId: digitribe-key
|
||||
signingPrivateKey: uc5WYG/eke0PVGyQ9JNVLpwQL0K9JIZfHfqUHdLBTaY=
|
||||
signingPublicKey: UX1EDpL4YHOnfkuhrtS+Bz18qwidrX+oJxButD8xaCE=
|
||||
encrPrivateKey: uc5WYG/eke0PVGyQ9JNVLpwQL0K9JIZfHfqUHdLBTaY=
|
||||
encrPublicKey: UX1EDpL4YHOnfkuhrtS+Bz18qwidrX+oJxButD8xaCE
|
||||
router:
|
||||
id: router
|
||||
config:
|
||||
routingConfig: ./config/local-simple-routing.yaml
|
||||
schemaValidator:
|
||||
id: schemavalidator
|
||||
config:
|
||||
schemaDir: ./schemas
|
||||
signValidator:
|
||||
id: signvalidator
|
||||
steps:
|
||||
- addRoute
|
||||
- validateSchema
|
||||
|
||||
- name: bapTxnCaller
|
||||
path: /bap/caller/
|
||||
handler:
|
||||
type: std
|
||||
role: bap
|
||||
httpClientConfig:
|
||||
maxIdleConns: 1000
|
||||
maxIdleConnsPerHost: 200
|
||||
idleConnTimeout: 300s
|
||||
responseHeaderTimeout: 5s
|
||||
plugins:
|
||||
registry:
|
||||
id: registry
|
||||
config:
|
||||
url: http://registry:3030/subscribers
|
||||
retry_max: 3
|
||||
retry_wait_min: 100ms
|
||||
retry_wait_max: 500ms
|
||||
keyManager:
|
||||
id: simplekeymanager
|
||||
config:
|
||||
networkParticipant: digitribe-network
|
||||
keyId: digitribe-key
|
||||
signingPrivateKey: uc5WYG/eke0PVGyQ9JNVLpwQL0K9JIZfHfqUHdLBTaY=
|
||||
signingPublicKey: UX1EDpL4YHOnfkuhrtS+Bz18qwidrX+oJxButD8xaCE=
|
||||
encrPrivateKey: uc5WYG/eke0PVGyQ9JNVLpwQL0K9JIZfHfqUHdLBTaY=
|
||||
encrPublicKey: UX1EDpL4YHOnfkuhrtS+Bz18qwidrX+oJxButD8xaCE
|
||||
router:
|
||||
id: router
|
||||
config:
|
||||
routingConfig: ./config/local-simple-routing-BAPCaller.yaml
|
||||
signer:
|
||||
id: signer
|
||||
steps:
|
||||
- addRoute
|
||||
- sign
|
||||
37
docker-compose.yml
Normal file
37
docker-compose.yml
Normal file
@@ -0,0 +1,37 @@
|
||||
services:
|
||||
redis:
|
||||
image: redis:7-alpine
|
||||
container_name: onix-redis
|
||||
restart: unless-stopped
|
||||
networks:
|
||||
- onix-network
|
||||
|
||||
onix:
|
||||
image: onix-adapter:latest
|
||||
container_name: onix-adapter
|
||||
restart: unless-stopped
|
||||
environment:
|
||||
- CONFIG_FILE=/app/config/local-dev.yaml
|
||||
volumes:
|
||||
- ./config:/app/config
|
||||
- ./schemas:/app/schemas
|
||||
- ./plugins:/app/plugins
|
||||
networks:
|
||||
- onix-network
|
||||
- traefik-public
|
||||
depends_on:
|
||||
- redis
|
||||
labels:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.http.routers.onix.rule=Host(`onix.digitribe.fr`)"
|
||||
- "traefik.http.routers.onix.entrypoints=web"
|
||||
- "traefik.http.routers.onix.entrypoints=websecure"
|
||||
- "traefik.http.routers.onix.tls=true"
|
||||
- "traefik.http.routers.onix.tls.certresolver=letsencrypt"
|
||||
- "traefik.http.services.onix.loadbalancer.server.port=8081"
|
||||
|
||||
networks:
|
||||
onix-network:
|
||||
driver: bridge
|
||||
traefik-public:
|
||||
external: true
|
||||
4
go.mod
4
go.mod
@@ -1,6 +1,6 @@
|
||||
module github.com/beckn-one/beckn-onix
|
||||
|
||||
go 1.24.6
|
||||
go 1.25.0
|
||||
|
||||
require (
|
||||
github.com/santhosh-tekuri/jsonschema/v6 v6.0.1
|
||||
@@ -80,6 +80,7 @@ require (
|
||||
github.com/xeipuuv/gojsonpointer v0.0.0-20190905194746-02993c407bfb // indirect
|
||||
github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415 // indirect
|
||||
github.com/yashtewari/glob-intersection v0.2.0 // indirect
|
||||
github.com/yuin/gopher-lua v1.1.1 // indirect
|
||||
go.opentelemetry.io/auto/sdk v1.2.1 // indirect
|
||||
go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.39.0 // indirect
|
||||
go.opentelemetry.io/proto/otlp v1.9.0 // indirect
|
||||
@@ -98,6 +99,7 @@ require (
|
||||
)
|
||||
|
||||
require (
|
||||
github.com/alicebob/miniredis/v2 v2.37.0
|
||||
github.com/getkin/kin-openapi v0.133.0
|
||||
github.com/google/uuid v1.6.0
|
||||
github.com/hashicorp/go-retryablehttp v0.7.7
|
||||
|
||||
4
go.sum
4
go.sum
@@ -2,6 +2,8 @@ github.com/aclements/go-moremath v0.0.0-20210112150236-f10218a38794 h1:xlwdaKcTN
|
||||
github.com/aclements/go-moremath v0.0.0-20210112150236-f10218a38794/go.mod h1:7e+I0LQFUI9AXWxOfsQROs9xPhoJtbsyWcjJqDd4KPY=
|
||||
github.com/agnivade/levenshtein v1.2.1 h1:EHBY3UOn1gwdy/VbFwgo4cxecRznFk7fKWN1KOX7eoM=
|
||||
github.com/agnivade/levenshtein v1.2.1/go.mod h1:QVVI16kDrtSuwcpd0p1+xMC6Z/VfhtCyDIjcwga4/DU=
|
||||
github.com/alicebob/miniredis/v2 v2.37.0 h1:RheObYW32G1aiJIj81XVt78ZHJpHonHLHW7OLIshq68=
|
||||
github.com/alicebob/miniredis/v2 v2.37.0/go.mod h1:TcL7YfarKPGDAthEtl5NBeHZfeUQj6OXMm/+iu5cLMM=
|
||||
github.com/andreyvit/diff v0.0.0-20170406064948-c7f18ee00883 h1:bvNMNQO63//z+xNgfBlViaCIJKLlCJ6/fmUseuG0wVQ=
|
||||
github.com/andreyvit/diff v0.0.0-20170406064948-c7f18ee00883/go.mod h1:rCTlJbsFo29Kk6CurOXKm700vrz8f0KW0JNfpkRJY/8=
|
||||
github.com/arbovm/levenshtein v0.0.0-20160628152529-48b4e1c0c4d0 h1:jfIu9sQUG6Ig+0+Ap1h4unLjW6YQJpKZVmUzxsD4E/Q=
|
||||
@@ -230,6 +232,8 @@ github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415 h1:EzJWgHo
|
||||
github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415/go.mod h1:GwrjFmJcFw6At/Gs6z4yjiIwzuJ1/+UwLxMQDVQXShQ=
|
||||
github.com/yashtewari/glob-intersection v0.2.0 h1:8iuHdN88yYuCzCdjt0gDe+6bAhUwBeEWqThExu54RFg=
|
||||
github.com/yashtewari/glob-intersection v0.2.0/go.mod h1:LK7pIC3piUjovexikBbJ26Yml7g8xa5bsjfx2v1fwok=
|
||||
github.com/yuin/gopher-lua v1.1.1 h1:kYKnWBjvbNP4XLT3+bPEwAXJx262OhaHDWDVOPjL46M=
|
||||
github.com/yuin/gopher-lua v1.1.1/go.mod h1:GBR0iDaNXjAgGg9zfCvksxSRnQx76gclCIb7kdAd1Pw=
|
||||
github.com/zenazn/pkcs7pad v0.0.0-20170308005700-253a5b1f0e03 h1:m1h+vudopHsI67FPT9MOncyndWhTcdUoBtI1R1uajGY=
|
||||
github.com/zenazn/pkcs7pad v0.0.0-20170308005700-253a5b1f0e03/go.mod h1:8sheVFH84v3PCyFY/O02mIgSQY9I6wMYPWsq7mDnEZY=
|
||||
go.opentelemetry.io/auto/sdk v1.2.1 h1:jXsnJ4Lmnqd11kwkBV2LgLoFMZKizbCi5fNZ/ipaZ64=
|
||||
|
||||
BIN
schemas/.DS_Store
vendored
Normal file
BIN
schemas/.DS_Store
vendored
Normal file
Binary file not shown.
32
schemas/core/v1.1.0/cancel.json
Normal file
32
schemas/core/v1.1.0/cancel.json
Normal file
@@ -0,0 +1,32 @@
|
||||
{
|
||||
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
||||
"$id": "cancel",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"context": {
|
||||
"allOf": [
|
||||
{
|
||||
"$ref": "definitions.json#/$defs/Context"
|
||||
},
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"action": {
|
||||
"enum": [
|
||||
"cancel"
|
||||
]
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"action"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
},
|
||||
"required": [
|
||||
"message",
|
||||
"context"
|
||||
]
|
||||
}
|
||||
43
schemas/core/v1.1.0/confirm.json
Normal file
43
schemas/core/v1.1.0/confirm.json
Normal file
@@ -0,0 +1,43 @@
|
||||
{
|
||||
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
||||
"$id": "confirm",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"context": {
|
||||
"allOf": [
|
||||
{
|
||||
"$ref": "definitions.json#/$defs/Context"
|
||||
},
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"action": {
|
||||
"enum": [
|
||||
"confirm"
|
||||
]
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"action"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"message": {
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"order": {
|
||||
"$ref": "definitions.json#/$defs/Order"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"order"
|
||||
]
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"message",
|
||||
"context"
|
||||
]
|
||||
}
|
||||
2459
schemas/core/v1.1.0/definitions.json
Normal file
2459
schemas/core/v1.1.0/definitions.json
Normal file
File diff suppressed because it is too large
Load Diff
43
schemas/core/v1.1.0/init.json
Normal file
43
schemas/core/v1.1.0/init.json
Normal file
@@ -0,0 +1,43 @@
|
||||
{
|
||||
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
||||
"$id": "init",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"context": {
|
||||
"allOf": [
|
||||
{
|
||||
"$ref": "./definitions.json#/$defs/Context"
|
||||
},
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"action": {
|
||||
"enum": [
|
||||
"init"
|
||||
]
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"action"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"message": {
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"order": {
|
||||
"$ref": "./definitions.json#/$defs/Order"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"order"
|
||||
]
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"message",
|
||||
"context"
|
||||
]
|
||||
}
|
||||
46
schemas/core/v1.1.0/on_cancel.json
Normal file
46
schemas/core/v1.1.0/on_cancel.json
Normal file
@@ -0,0 +1,46 @@
|
||||
{
|
||||
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
||||
"$id": "on_cancel",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"context": {
|
||||
"allOf": [
|
||||
{
|
||||
"$ref": "./definitions.json#/$defs/Context"
|
||||
},
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"action": {
|
||||
"enum": [
|
||||
"on_cancel"
|
||||
]
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"action"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"message": {
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"order": {
|
||||
"$ref": "./definitions.json#/$defs/Order"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"order"
|
||||
]
|
||||
},
|
||||
"error": {
|
||||
"$ref": "./definitions.json#/$defs/Error"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"context",
|
||||
"message"
|
||||
]
|
||||
}
|
||||
46
schemas/core/v1.1.0/on_confirm.json
Normal file
46
schemas/core/v1.1.0/on_confirm.json
Normal file
@@ -0,0 +1,46 @@
|
||||
{
|
||||
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
||||
"$id": "on_confirm",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"context": {
|
||||
"allOf": [
|
||||
{
|
||||
"$ref": "./definitions.json#/$defs/Context"
|
||||
},
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"action": {
|
||||
"enum": [
|
||||
"on_confirm"
|
||||
]
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"action"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"message": {
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"order": {
|
||||
"$ref": "./definitions.json#/$defs/Order"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"order"
|
||||
]
|
||||
},
|
||||
"error": {
|
||||
"$ref": "./definitions.json#/$defs/Error"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"message",
|
||||
"context"
|
||||
]
|
||||
}
|
||||
46
schemas/core/v1.1.0/on_init.json
Normal file
46
schemas/core/v1.1.0/on_init.json
Normal file
@@ -0,0 +1,46 @@
|
||||
{
|
||||
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
||||
"$id": "on_init",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"context": {
|
||||
"allOf": [
|
||||
{
|
||||
"$ref": "./definitions.json#/$defs/Context"
|
||||
},
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"action": {
|
||||
"enum": [
|
||||
"on_init"
|
||||
]
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"action"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"message": {
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"order": {
|
||||
"$ref": "./definitions.json#/$defs/Order"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"order"
|
||||
]
|
||||
},
|
||||
"error": {
|
||||
"$ref": "./definitions.json#/$defs/Error"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"message",
|
||||
"context"
|
||||
]
|
||||
}
|
||||
47
schemas/core/v1.1.0/on_rating.json
Normal file
47
schemas/core/v1.1.0/on_rating.json
Normal file
@@ -0,0 +1,47 @@
|
||||
{
|
||||
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
||||
"$id": "on_rating",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"context": {
|
||||
"allOf": [
|
||||
{
|
||||
"$ref": "./definitions.json#/$defs/Context"
|
||||
},
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"action": {
|
||||
"enum": [
|
||||
"on_rating"
|
||||
]
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"action"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"message": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"feedback_form": {
|
||||
"description": "A feedback form to allow the user to provide additional information on the rating provided",
|
||||
"allOf": [
|
||||
{
|
||||
"$ref": "./definitions.json#/$defs/XInput"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
"error": {
|
||||
"$ref": "./definitions.json#/$defs/Error"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"context",
|
||||
"message"
|
||||
]
|
||||
}
|
||||
46
schemas/core/v1.1.0/on_search.json
Normal file
46
schemas/core/v1.1.0/on_search.json
Normal file
@@ -0,0 +1,46 @@
|
||||
{
|
||||
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
||||
"$id": "on_search",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"context": {
|
||||
"allOf": [
|
||||
{
|
||||
"$ref": "./definitions.json#/$defs/Context"
|
||||
},
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"action": {
|
||||
"enum": [
|
||||
"on_search"
|
||||
]
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"action"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"message": {
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"catalog": {
|
||||
"$ref": "./definitions.json#/$defs/Catalog"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"catalog"
|
||||
]
|
||||
},
|
||||
"error": {
|
||||
"$ref": "./definitions.json#/$defs/Error"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"message",
|
||||
"context"
|
||||
]
|
||||
}
|
||||
43
schemas/core/v1.1.0/on_select.json
Normal file
43
schemas/core/v1.1.0/on_select.json
Normal file
@@ -0,0 +1,43 @@
|
||||
{
|
||||
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
||||
"$id": "on_select",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"context": {
|
||||
"allOf": [
|
||||
{
|
||||
"$ref": "./definitions.json#/$defs/Context"
|
||||
},
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"action": {
|
||||
"enum": [
|
||||
"on_select"
|
||||
]
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"action"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"message": {
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"order": {
|
||||
"$ref": "./definitions.json#/$defs/Order"
|
||||
}
|
||||
}
|
||||
},
|
||||
"error": {
|
||||
"$ref": "./definitions.json#/$defs/Error"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"message",
|
||||
"context"
|
||||
]
|
||||
}
|
||||
46
schemas/core/v1.1.0/on_status.json
Normal file
46
schemas/core/v1.1.0/on_status.json
Normal file
@@ -0,0 +1,46 @@
|
||||
{
|
||||
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
||||
"$id": "on_status",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"context": {
|
||||
"allOf": [
|
||||
{
|
||||
"$ref": "./definitions.json#/$defs/Context"
|
||||
},
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"action": {
|
||||
"enum": [
|
||||
"on_status"
|
||||
]
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"action"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"message": {
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"order": {
|
||||
"$ref": "./definitions.json#/$defs/Order"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"order"
|
||||
]
|
||||
},
|
||||
"error": {
|
||||
"$ref": "./definitions.json#/$defs/Error"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"message",
|
||||
"context"
|
||||
]
|
||||
}
|
||||
42
schemas/core/v1.1.0/on_support.json
Normal file
42
schemas/core/v1.1.0/on_support.json
Normal file
@@ -0,0 +1,42 @@
|
||||
{
|
||||
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
||||
"$id": "on_support",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"context": {
|
||||
"allOf": [
|
||||
{
|
||||
"$ref": "./definitions.json#/$defs/Context"
|
||||
},
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"action": {
|
||||
"enum": [
|
||||
"on_support"
|
||||
]
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"action"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"message": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"support": {
|
||||
"$ref": "./definitions.json#/$defs/Support"
|
||||
}
|
||||
}
|
||||
},
|
||||
"error": {
|
||||
"$ref": "./definitions.json#/$defs/Error"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"context",
|
||||
"message"
|
||||
]
|
||||
}
|
||||
46
schemas/core/v1.1.0/on_track.json
Normal file
46
schemas/core/v1.1.0/on_track.json
Normal file
@@ -0,0 +1,46 @@
|
||||
{
|
||||
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
||||
"$id": "on_track",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"context": {
|
||||
"allOf": [
|
||||
{
|
||||
"$ref": "./definitions.json#/$defs/Context"
|
||||
},
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"action": {
|
||||
"enum": [
|
||||
"on_track"
|
||||
]
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"action"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"message": {
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"tracking": {
|
||||
"$ref": "./definitions.json#/$defs/Tracking"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"tracking"
|
||||
]
|
||||
},
|
||||
"error": {
|
||||
"$ref": "./definitions.json#/$defs/Error"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"context",
|
||||
"message"
|
||||
]
|
||||
}
|
||||
46
schemas/core/v1.1.0/on_update.json
Normal file
46
schemas/core/v1.1.0/on_update.json
Normal file
@@ -0,0 +1,46 @@
|
||||
{
|
||||
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
||||
"$id": "on_update",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"context": {
|
||||
"allOf": [
|
||||
{
|
||||
"$ref": "./definitions.json#/$defs/Context"
|
||||
},
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"action": {
|
||||
"enum": [
|
||||
"on_update"
|
||||
]
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"action"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"message": {
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"order": {
|
||||
"$ref": "./definitions.json#/$defs/Order"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"order"
|
||||
]
|
||||
},
|
||||
"error": {
|
||||
"$ref": "./definitions.json#/$defs/Error"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"message",
|
||||
"context"
|
||||
]
|
||||
}
|
||||
42
schemas/core/v1.1.0/rating.json
Normal file
42
schemas/core/v1.1.0/rating.json
Normal file
@@ -0,0 +1,42 @@
|
||||
{
|
||||
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
||||
"$id": "rating",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"context": {
|
||||
"allOf": [
|
||||
{
|
||||
"$ref": "./definitions.json#/$defs/Context"
|
||||
},
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"action": {
|
||||
"enum": [
|
||||
"rating"
|
||||
]
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"action"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"message": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"ratings": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"$ref": "./definitions.json#/$defs/Rating"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"message",
|
||||
"context"
|
||||
]
|
||||
}
|
||||
7
schemas/core/v1.1.0/response.json
Normal file
7
schemas/core/v1.1.0/response.json
Normal file
@@ -0,0 +1,7 @@
|
||||
{
|
||||
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
||||
"$id": "Response",
|
||||
"type": "object",
|
||||
"properties": {},
|
||||
"required": []
|
||||
}
|
||||
26
schemas/core/v1.1.0/search.json
Normal file
26
schemas/core/v1.1.0/search.json
Normal file
@@ -0,0 +1,26 @@
|
||||
{
|
||||
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
||||
"$id": "search",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"context": {
|
||||
"allOf": [
|
||||
{
|
||||
"$ref": "./definitions.json#/$defs/Context"
|
||||
}
|
||||
]
|
||||
},
|
||||
"message": {
|
||||
"properties": {
|
||||
"intent": {
|
||||
"$ref": "./definitions.json#/$defs/Intent"
|
||||
}
|
||||
},
|
||||
"type": "object"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"message",
|
||||
"context"
|
||||
]
|
||||
}
|
||||
43
schemas/core/v1.1.0/select.json
Normal file
43
schemas/core/v1.1.0/select.json
Normal file
@@ -0,0 +1,43 @@
|
||||
{
|
||||
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
||||
"$id": "select",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"context": {
|
||||
"allOf": [
|
||||
{
|
||||
"$ref": "./definitions.json#/$defs/Context"
|
||||
},
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"action": {
|
||||
"enum": [
|
||||
"select"
|
||||
]
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"action"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"message": {
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"order": {
|
||||
"$ref": "./definitions.json#/$defs/Order"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"order"
|
||||
]
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"message",
|
||||
"context"
|
||||
]
|
||||
}
|
||||
43
schemas/core/v1.1.0/status.json
Normal file
43
schemas/core/v1.1.0/status.json
Normal file
@@ -0,0 +1,43 @@
|
||||
{
|
||||
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
||||
"$id": "status",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"context": {
|
||||
"allOf": [
|
||||
{
|
||||
"$ref": "./definitions.json#/$defs/Context"
|
||||
},
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"action": {
|
||||
"enum": [
|
||||
"status"
|
||||
]
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"action"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"message": {
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"ref_id": {
|
||||
"$ref": "./definitions.json#/$defs/Order"
|
||||
},
|
||||
"order_id": {
|
||||
"$ref": "./definitions.json#/$defs/Order"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"message",
|
||||
"context"
|
||||
]
|
||||
}
|
||||
39
schemas/core/v1.1.0/support.json
Normal file
39
schemas/core/v1.1.0/support.json
Normal file
@@ -0,0 +1,39 @@
|
||||
{
|
||||
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
||||
"$id": "support",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"context": {
|
||||
"allOf": [
|
||||
{
|
||||
"$ref": "./definitions.json#/$defs/Context"
|
||||
},
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"action": {
|
||||
"enum": [
|
||||
"support"
|
||||
]
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"action"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"message": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"support": {
|
||||
"$ref": "./definitions.json#/$defs/Support"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"message",
|
||||
"context"
|
||||
]
|
||||
}
|
||||
47
schemas/core/v1.1.0/track.json
Normal file
47
schemas/core/v1.1.0/track.json
Normal file
@@ -0,0 +1,47 @@
|
||||
{
|
||||
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
||||
"$id": "track",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"context": {
|
||||
"allOf": [
|
||||
{
|
||||
"$ref": "./definitions.json#/$defs/Context"
|
||||
},
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"action": {
|
||||
"enum": [
|
||||
"track"
|
||||
]
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"action"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"message": {
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"order_id": {
|
||||
"$ref": "./definitions.json#/$defs/Order"
|
||||
},
|
||||
"callback_url": {
|
||||
"type": "string",
|
||||
"format": "uri"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"order_id"
|
||||
]
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"message",
|
||||
"context"
|
||||
]
|
||||
}
|
||||
53
schemas/core/v1.1.0/update.json
Normal file
53
schemas/core/v1.1.0/update.json
Normal file
@@ -0,0 +1,53 @@
|
||||
{
|
||||
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
||||
"$id": "update",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"context": {
|
||||
"allOf": [
|
||||
{
|
||||
"$ref": "./definitions.json#/$defs/Context"
|
||||
},
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"action": {
|
||||
"enum": [
|
||||
"update"
|
||||
]
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"action"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"message": {
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"update_target": {
|
||||
"description": "Comma separated values of order objects being updated. For example: ```\"update_target\":\"item,billing,fulfillment\"```",
|
||||
"type": "string"
|
||||
},
|
||||
"order": {
|
||||
"description": "Updated order object",
|
||||
"allOf": [
|
||||
{
|
||||
"$ref": "./definitions.json#/$defs/Order"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"update_target",
|
||||
"order"
|
||||
]
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"message",
|
||||
"context"
|
||||
]
|
||||
}
|
||||
40
schemas/ondc_trv10/v2.0.0/cancel.json
Normal file
40
schemas/ondc_trv10/v2.0.0/cancel.json
Normal file
@@ -0,0 +1,40 @@
|
||||
{
|
||||
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
||||
"$id": "cancel",
|
||||
"type": "object",
|
||||
"allOf": [
|
||||
{
|
||||
"$ref": "../../core/v1.1.0/cancel.json#"
|
||||
},
|
||||
{
|
||||
"$ref": "init.json#/allOf/2"
|
||||
},
|
||||
{
|
||||
"properties": {
|
||||
"message": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"order_id": {
|
||||
"type": "string"
|
||||
},
|
||||
"descriptor": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"code": {
|
||||
"type": "string",
|
||||
"enum": ["SOFT_CANCEL", "CONFIRM_CANCEL"]
|
||||
}
|
||||
},
|
||||
"required": ["code"]
|
||||
},
|
||||
"cancellation_reason_id": {
|
||||
"type": "string",
|
||||
"pattern": "^[0-9]+$"
|
||||
}
|
||||
},
|
||||
"required": ["order_id", "descriptor", "cancellation_reason_id"]
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
463
schemas/ondc_trv10/v2.0.0/confirm.json
Normal file
463
schemas/ondc_trv10/v2.0.0/confirm.json
Normal file
@@ -0,0 +1,463 @@
|
||||
{
|
||||
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
||||
"$id": "confirm",
|
||||
"type": "object",
|
||||
"allOf": [
|
||||
{
|
||||
"$ref": "../../core/v1.1.0/confirm.json#"
|
||||
},
|
||||
{
|
||||
"$ref": "./init.json#/allOf/1"
|
||||
},
|
||||
{
|
||||
"$ref": "./init.json#/allOf/2"
|
||||
},
|
||||
{
|
||||
"allOf": [
|
||||
{
|
||||
"$ref": "./on_select.json#/allOf/5"
|
||||
},
|
||||
{
|
||||
"properties": {
|
||||
"message": {
|
||||
"properties": {
|
||||
"order": {
|
||||
"properties": {
|
||||
"fulfillments": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"allOf": [
|
||||
{
|
||||
"properties": {
|
||||
"customer": {
|
||||
"properties": {
|
||||
"contact": {
|
||||
"properties": {
|
||||
"phone": {
|
||||
"type": "string",
|
||||
"pattern": "^\\+?[1-9]\\d{1,14}$"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"phone"
|
||||
]
|
||||
},
|
||||
"person": {
|
||||
"properties": {
|
||||
"name": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"name"
|
||||
]
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"contact",
|
||||
"person"
|
||||
]
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"customer"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"allOf": [
|
||||
{
|
||||
"$ref": "./init.json#/allOf/7"
|
||||
},
|
||||
{
|
||||
"properties": {
|
||||
"message": {
|
||||
"properties": {
|
||||
"order": {
|
||||
"properties": {
|
||||
"payments": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"params": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"amount": {
|
||||
"type": "string",
|
||||
"pattern": "^\\d+(\\.\\d{1,2})?$"
|
||||
}
|
||||
}
|
||||
},
|
||||
"type": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"PRE-ORDER",
|
||||
"ON-FULFILLMENT",
|
||||
"POST-FULFILLMENT"
|
||||
]
|
||||
},
|
||||
"status": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"PAID",
|
||||
"NOT-PAID"
|
||||
]
|
||||
},
|
||||
"collected_by": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"BAP",
|
||||
"BPP"
|
||||
]
|
||||
},
|
||||
"tags": {
|
||||
"type": "array",
|
||||
"minItems": 2,
|
||||
"maxItems": 2,
|
||||
"uniqueItems": true,
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"descriptor": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"code": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"SETTLEMENT_TERMS",
|
||||
"BUYER_FINDER_FEES"
|
||||
]
|
||||
}
|
||||
},
|
||||
"allOf": [
|
||||
{
|
||||
"if": {
|
||||
"properties": {
|
||||
"descriptor": {
|
||||
"properties": {
|
||||
"code": {
|
||||
"const": "SETTLEMENT_TERMS"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"then": {
|
||||
"properties": {
|
||||
"list": {
|
||||
"allOf": [
|
||||
{
|
||||
"contains": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"descriptor": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"code": {
|
||||
"const": "STATIC_TERMS"
|
||||
}
|
||||
}
|
||||
},
|
||||
"value": {
|
||||
"type": "string",
|
||||
"format": "uri"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"contains": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"descriptor": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"code": {
|
||||
"const": "SETTLEMENT_BASIS"
|
||||
}
|
||||
}
|
||||
},
|
||||
"value": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"DELIVERY"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"contains": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"descriptor": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"code": {
|
||||
"const": "SETTLEMENT_WINDOW"
|
||||
}
|
||||
}
|
||||
},
|
||||
"value": {
|
||||
"type": "string"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"contains": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"descriptor": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"code": {
|
||||
"const": "DELAY_INTEREST"
|
||||
}
|
||||
}
|
||||
},
|
||||
"value": {
|
||||
"type": "string",
|
||||
"pattern": "^\\d+(\\.\\d{1,2})?$"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"contains": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"descriptor": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"code": {
|
||||
"const": "SETTLEMENT_TYPE"
|
||||
}
|
||||
}
|
||||
},
|
||||
"value": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"upi",
|
||||
"neft",
|
||||
"rtgs",
|
||||
"UPI",
|
||||
"NEFT",
|
||||
"RTGS"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"contains": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"descriptor": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"code": {
|
||||
"const": "SETTLEMENT_AMOUNT"
|
||||
}
|
||||
}
|
||||
},
|
||||
"value": {
|
||||
"type": "string",
|
||||
"pattern": "^\\d+(\\.\\d{1,2})?$"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"contains": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"descriptor": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"code": {
|
||||
"const": "MANDATORY_ARBITRATION"
|
||||
}
|
||||
}
|
||||
},
|
||||
"value": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"true",
|
||||
"false"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"contains": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"descriptor": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"code": {
|
||||
"const": "COURT_JURISDICTION"
|
||||
}
|
||||
}
|
||||
},
|
||||
"value": {
|
||||
"type": "string"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"if": {
|
||||
"properties": {
|
||||
"descriptor": {
|
||||
"properties": {
|
||||
"code": {
|
||||
"const": "BUYER_FINDER_FEES"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"then": {
|
||||
"properties": {
|
||||
"list": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"descriptor": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"code": {
|
||||
"enum": [
|
||||
"BUYER_FINDER_FEES_PERCENTAGE"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
"value": {
|
||||
"type": "string",
|
||||
"pattern": "^-?\\d+(\\.\\d+)?$"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"descriptor"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"type",
|
||||
"status",
|
||||
"collected_by",
|
||||
"tags"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"properties": {
|
||||
"message": {
|
||||
"properties": {
|
||||
"order": {
|
||||
"properties": {
|
||||
"payments": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"properties": {
|
||||
"type": {
|
||||
"type": "string"
|
||||
},
|
||||
"params": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"transaction_id": {
|
||||
"type": "string"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"type"
|
||||
],
|
||||
"allOf": [
|
||||
{
|
||||
"if": {
|
||||
"properties": {
|
||||
"type": {
|
||||
"const": "PRE-ORDER"
|
||||
}
|
||||
}
|
||||
},
|
||||
"then": {
|
||||
"properties": {
|
||||
"params": {
|
||||
"required": [
|
||||
"transaction_id"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"payments"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"properties": {
|
||||
"message": {
|
||||
"properties": {
|
||||
"order": {
|
||||
"not": {
|
||||
"required": [
|
||||
"id"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
550
schemas/ondc_trv10/v2.0.0/init.json
Normal file
550
schemas/ondc_trv10/v2.0.0/init.json
Normal file
@@ -0,0 +1,550 @@
|
||||
{
|
||||
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
||||
"$id": "init",
|
||||
"type": "object",
|
||||
"allOf": [
|
||||
{
|
||||
"$ref": "../../core/v1.1.0/init.json#"
|
||||
},
|
||||
{
|
||||
"properties": {
|
||||
"context": {
|
||||
"type": "object",
|
||||
"allOf": [
|
||||
{
|
||||
"$ref": "./search.json#/properties/context/allOf/0"
|
||||
},
|
||||
{
|
||||
|
||||
"required": [
|
||||
"bpp_id",
|
||||
"bpp_uri"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"properties": {
|
||||
"message": {
|
||||
"properties": {
|
||||
"order": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"provider": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"id": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"id"
|
||||
]
|
||||
},
|
||||
"items": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"id": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"id"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"provider",
|
||||
"items"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"$ref": "./confirm.json#/allOf/4"
|
||||
},
|
||||
{
|
||||
"$ref": "./on_select.json#/allOf/7"
|
||||
},
|
||||
{
|
||||
"properties": {
|
||||
"message": {
|
||||
"properties": {
|
||||
"order": {
|
||||
"required": [
|
||||
"fulfillments"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"properties": {
|
||||
"message": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"order": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"payments": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"params": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"amount": {
|
||||
"type": "string",
|
||||
"pattern": "^\\d+(\\.\\d{1,2})?$"
|
||||
}
|
||||
}
|
||||
},
|
||||
"type": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"PRE-ORDER",
|
||||
"ON-FULFILLMENT",
|
||||
"POST-FULFILLMENT"
|
||||
]
|
||||
},
|
||||
"status": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"PAID",
|
||||
"NOT-PAID"
|
||||
]
|
||||
},
|
||||
"collected_by": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"BAP",
|
||||
"BPP"
|
||||
]
|
||||
},
|
||||
"tags": {
|
||||
"type": "array",
|
||||
"minItems": 2,
|
||||
"maxItems": 2,
|
||||
"uniqueItems": true,
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"descriptor": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"code": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"SETTLEMENT_TERMS",
|
||||
"BUYER_FINDER_FEES"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"descriptor"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"type",
|
||||
"status",
|
||||
"collected_by",
|
||||
"tags"
|
||||
],
|
||||
"allOf": [
|
||||
{
|
||||
"if": {
|
||||
"allOf": [
|
||||
{
|
||||
"properties": {
|
||||
"collected_by": {
|
||||
"const": "BAP"
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"properties": {
|
||||
"type": {
|
||||
"const": "PRE-ORDER"
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"then": {
|
||||
"properties": {
|
||||
"tags": {
|
||||
"items": {
|
||||
"if": {
|
||||
"properties": {
|
||||
"descriptor": {
|
||||
"properties": {
|
||||
"code": {
|
||||
"const": "SETTLEMENT_TERMS"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"then": {
|
||||
"properties": {
|
||||
"list": {
|
||||
"allOf": [
|
||||
{
|
||||
"contains": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"descriptor": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"code": {
|
||||
"const": "STATIC_TERMS"
|
||||
}
|
||||
}
|
||||
},
|
||||
"value": {
|
||||
"type": "string",
|
||||
"format": "uri"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"contains": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"descriptor": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"code": {
|
||||
"const": "SETTLEMENT_BASIS"
|
||||
}
|
||||
}
|
||||
},
|
||||
"value": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"DELIVERY"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"contains": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"descriptor": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"code": {
|
||||
"const": "SETTLEMENT_WINDOW"
|
||||
}
|
||||
}
|
||||
},
|
||||
"value": {
|
||||
"type": "string"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"contains": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"descriptor": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"code": {
|
||||
"const": "DELAY_INTEREST"
|
||||
}
|
||||
}
|
||||
},
|
||||
"value": {
|
||||
"type": "string",
|
||||
"pattern": "^\\d+(\\.\\d{1,2})?$"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"if": {
|
||||
"allOf": [
|
||||
{
|
||||
"properties": {
|
||||
"collected_by": {
|
||||
"const": "BPP"
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"properties": {
|
||||
"type": {
|
||||
"const": "PRE-ORDER"
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"then": {
|
||||
"properties": {
|
||||
"tags": {
|
||||
"items": {
|
||||
"if": {
|
||||
"properties": {
|
||||
"descriptor": {
|
||||
"properties": {
|
||||
"code": {
|
||||
"const": "SETTLEMENT_TERMS"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"then": {
|
||||
"properties": {
|
||||
"list": {
|
||||
"allOf": [
|
||||
{
|
||||
"contains": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"descriptor": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"code": {
|
||||
"const": "STATIC_TERMS"
|
||||
}
|
||||
}
|
||||
},
|
||||
"value": {
|
||||
"type": "string",
|
||||
"format": "uri"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"contains": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"descriptor": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"code": {
|
||||
"const": "SETTLEMENT_BASIS"
|
||||
}
|
||||
}
|
||||
},
|
||||
"value": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"DELIVERY"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"contains": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"descriptor": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"code": {
|
||||
"const": "SETTLEMENT_WINDOW"
|
||||
}
|
||||
}
|
||||
},
|
||||
"value": {
|
||||
"type": "string"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"if": {
|
||||
"allOf": [
|
||||
{
|
||||
"properties": {
|
||||
"collected_by": {
|
||||
"const": "BPP"
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"properties": {
|
||||
"type": {
|
||||
"const": "ON-FULFILLMENT"
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"then": {
|
||||
"properties": {
|
||||
"tags": {
|
||||
"items": {
|
||||
"if": {
|
||||
"properties": {
|
||||
"descriptor": {
|
||||
"properties": {
|
||||
"code": {
|
||||
"const": "SETTLEMENT_TERMS"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"then": {
|
||||
"properties": {
|
||||
"list": {
|
||||
"allOf": [
|
||||
{
|
||||
"contains": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"descriptor": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"code": {
|
||||
"const": "STATIC_TERMS"
|
||||
}
|
||||
}
|
||||
},
|
||||
"value": {
|
||||
"type": "string",
|
||||
"format": "uri"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"contains": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"descriptor": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"code": {
|
||||
"const": "SETTLEMENT_BASIS"
|
||||
}
|
||||
}
|
||||
},
|
||||
"value": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"DELIVERY"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"contains": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"descriptor": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"code": {
|
||||
"const": "SETTLEMENT_WINDOW"
|
||||
}
|
||||
}
|
||||
},
|
||||
"value": {
|
||||
"type": "string"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"contains": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"descriptor": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"code": {
|
||||
"const": "DELAY_INTEREST"
|
||||
}
|
||||
}
|
||||
},
|
||||
"value": {
|
||||
"type": "string",
|
||||
"pattern": "^\\d+(\\.\\d{1,2})?$"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"properties": {
|
||||
"message": {
|
||||
"properties": {
|
||||
"order": {
|
||||
"properties": {
|
||||
"billing": {
|
||||
"required": [
|
||||
"name"
|
||||
]
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"billing"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
13
schemas/ondc_trv10/v2.0.0/on_cancel.json
Normal file
13
schemas/ondc_trv10/v2.0.0/on_cancel.json
Normal file
@@ -0,0 +1,13 @@
|
||||
{
|
||||
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
||||
"$id": "on_cancel",
|
||||
"type": "object",
|
||||
"allOf": [
|
||||
{
|
||||
"$ref": "../../core/v1.1.0/on_cancel.json#"
|
||||
},
|
||||
{
|
||||
"$ref": "./init.json#/allOf/1"
|
||||
}
|
||||
]
|
||||
}
|
||||
314
schemas/ondc_trv10/v2.0.0/on_confirm.json
Normal file
314
schemas/ondc_trv10/v2.0.0/on_confirm.json
Normal file
@@ -0,0 +1,314 @@
|
||||
{
|
||||
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
||||
"$id": "on_confirm",
|
||||
"type": "object",
|
||||
"allOf": [
|
||||
{
|
||||
"$ref": "../../core/v1.1.0/on_confirm.json#"
|
||||
},
|
||||
{
|
||||
"$ref": "./init.json#/allOf/1"
|
||||
},
|
||||
{
|
||||
"properties": {
|
||||
"message": {
|
||||
"properties": {
|
||||
"order": {
|
||||
"properties": {
|
||||
"provider": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"id": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"required": ["id"]
|
||||
}
|
||||
},
|
||||
"required": ["provider"]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"$ref": "./confirm.json#/allOf/5"
|
||||
},
|
||||
{
|
||||
"properties": {
|
||||
"message": {
|
||||
"properties": {
|
||||
"order": {
|
||||
"properties": {
|
||||
"items": {
|
||||
"type": "array",
|
||||
"minItems": 1,
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"fulfillment_ids": {
|
||||
"minItems": 1
|
||||
},
|
||||
"location_ids": {
|
||||
"minItems": 1
|
||||
}
|
||||
},
|
||||
"required": ["fulfillment_ids", "location_ids"]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"$ref": "./confirm.json#/allOf/4/allOf/1"
|
||||
},
|
||||
{
|
||||
"properties": {
|
||||
"message": {
|
||||
"properties": {
|
||||
"order": {
|
||||
"properties": {
|
||||
"fulfillments": {
|
||||
"type": "array",
|
||||
"minItems": 1,
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"type": {
|
||||
"type": "string",
|
||||
"enum": ["DELIVERY"]
|
||||
}
|
||||
},
|
||||
"required": ["type"]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"allOf": [
|
||||
{
|
||||
"properties": {
|
||||
"message": {
|
||||
"properties": {
|
||||
"order": {
|
||||
"properties": {
|
||||
"quote": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"price": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"currency": {
|
||||
"type": "string"
|
||||
},
|
||||
"value": {
|
||||
"type": "string",
|
||||
"pattern": "^\\d+(\\.\\d{1,2})?$"
|
||||
}
|
||||
},
|
||||
"required": ["currency", "value"]
|
||||
},
|
||||
"breakup": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"price": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"currency": {
|
||||
"type": "string"
|
||||
},
|
||||
"value": {
|
||||
"type": "string",
|
||||
"pattern": "^\\d+(\\.\\d{1,2})?$"
|
||||
}
|
||||
},
|
||||
"required": ["currency", "value"]
|
||||
},
|
||||
"title": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"BASE_FARE",
|
||||
"DISTANCE_FARE",
|
||||
"TAX",
|
||||
"DISCOUNT",
|
||||
"WAITING_CHARGE"
|
||||
]
|
||||
}
|
||||
},
|
||||
"required": ["price", "title"]
|
||||
}
|
||||
}
|
||||
},
|
||||
"required": ["price", "breakup"]
|
||||
}
|
||||
},
|
||||
"required": ["quote"]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"properties": {
|
||||
"message": {
|
||||
"properties": {
|
||||
"order": {
|
||||
"properties": {
|
||||
"quote": {
|
||||
"properties": {
|
||||
"breakup": {
|
||||
"allOf": [
|
||||
{
|
||||
"contains": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"title": {
|
||||
"const": "BASE_FARE"
|
||||
},
|
||||
"price": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"value": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"required": ["value"]
|
||||
}
|
||||
},
|
||||
"required": ["title", "price"]
|
||||
}
|
||||
},
|
||||
{
|
||||
"contains": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"title": {
|
||||
"const": "DISTANCE_FARE"
|
||||
},
|
||||
"price": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"value": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"required": ["value"]
|
||||
}
|
||||
},
|
||||
"required": ["title", "price"]
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"$ref": "./confirm.json#/allOf/6"
|
||||
},
|
||||
{
|
||||
"allOf": [
|
||||
{
|
||||
"properties": {
|
||||
"message": {
|
||||
"properties": {
|
||||
"order": {
|
||||
"properties": {
|
||||
"cancellation_terms": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"fulfillment_state": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"descriptor": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"code": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"RIDE_ASSIGNED",
|
||||
"RIDE_ENROUTE_PICKUP",
|
||||
"RIDE_ARRIVED_PICKUP",
|
||||
"RIDE_STARTED"
|
||||
]
|
||||
}
|
||||
},
|
||||
"required": ["code"]
|
||||
}
|
||||
},
|
||||
"required": ["descriptor"]
|
||||
},
|
||||
"cancellation_fee": {
|
||||
"oneOf": [
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"percentage": {
|
||||
"type": "string",
|
||||
"pattern": "^(100(\\.0{1,2})?|([0-9]{1,2})(\\.\\d{1,2})?)$"
|
||||
}
|
||||
},
|
||||
"required": ["percentage"]
|
||||
},
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"amount": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"value": {
|
||||
"type": "string",
|
||||
"pattern": "^[+-]?(\\d+(\\.\\d*)?|\\.\\d+)$"
|
||||
},
|
||||
"currency": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"required": ["currency", "value"]
|
||||
}
|
||||
},
|
||||
"required": ["amount"]
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"required": ["fulfillment_state", "cancellation_fee"]
|
||||
}
|
||||
}
|
||||
},
|
||||
"required": ["cancellation_terms"]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"properties": {
|
||||
"message": {
|
||||
"type": "object"
|
||||
}
|
||||
},
|
||||
"required": ["message"]
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
317
schemas/ondc_trv10/v2.0.0/on_init.json
Normal file
317
schemas/ondc_trv10/v2.0.0/on_init.json
Normal file
@@ -0,0 +1,317 @@
|
||||
{
|
||||
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
||||
"$id": "on_init",
|
||||
"type": "object",
|
||||
"allOf": [
|
||||
{
|
||||
"$ref": "../../core/v1.1.0/on_init.json#"
|
||||
},
|
||||
{
|
||||
"$ref": "./init.json#/allOf/1"
|
||||
},
|
||||
{
|
||||
"properties": {
|
||||
"message": {
|
||||
"properties": {
|
||||
"order": {
|
||||
"properties": {
|
||||
"provider": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"id": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"required": ["id"]
|
||||
}
|
||||
},
|
||||
"required": ["provider"]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"$ref": "./confirm.json#/allOf/5"
|
||||
},
|
||||
{
|
||||
"$ref": "./on_select.json#/allOf/6"
|
||||
},
|
||||
{
|
||||
"properties": {
|
||||
"message": {
|
||||
"properties": {
|
||||
"order": {
|
||||
"properties": {
|
||||
"items": {
|
||||
"type": "array",
|
||||
"minItems": 1,
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"fulfillment_ids": {
|
||||
"minItems": 1
|
||||
},
|
||||
"location_ids": {
|
||||
"minItems": 1
|
||||
}
|
||||
},
|
||||
"required": ["fulfillment_ids", "location_ids"]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"$ref": "./confirm.json#/allOf/4/allOf/1"
|
||||
},
|
||||
{
|
||||
"properties": {
|
||||
"message": {
|
||||
"properties": {
|
||||
"order": {
|
||||
"properties": {
|
||||
"fulfillments": {
|
||||
"type": "array",
|
||||
"minItems": 1,
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"type": {
|
||||
"type": "string",
|
||||
"enum": ["DELIVERY"]
|
||||
}
|
||||
},
|
||||
"required": ["type"]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"allOf": [
|
||||
{
|
||||
"properties": {
|
||||
"message": {
|
||||
"properties": {
|
||||
"order": {
|
||||
"properties": {
|
||||
"quote": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"price": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"currency": {
|
||||
"type": "string"
|
||||
},
|
||||
"value": {
|
||||
"type": "string",
|
||||
"pattern": "^\\d+(\\.\\d{1,2})?$"
|
||||
}
|
||||
},
|
||||
"required": ["currency", "value"]
|
||||
},
|
||||
"breakup": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"price": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"currency": {
|
||||
"type": "string"
|
||||
},
|
||||
"value": {
|
||||
"type": "string",
|
||||
"pattern": "^\\d+(\\.\\d{1,2})?$"
|
||||
}
|
||||
},
|
||||
"required": ["currency", "value"]
|
||||
},
|
||||
"title": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"BASE_FARE",
|
||||
"DISTANCE_FARE",
|
||||
"TAX",
|
||||
"DISCOUNT",
|
||||
"WAITING_CHARGE"
|
||||
]
|
||||
}
|
||||
},
|
||||
"required": ["price", "title"]
|
||||
}
|
||||
}
|
||||
},
|
||||
"required": ["price", "breakup"]
|
||||
}
|
||||
},
|
||||
"required": ["quote"]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"properties": {
|
||||
"message": {
|
||||
"properties": {
|
||||
"order": {
|
||||
"properties": {
|
||||
"quote": {
|
||||
"properties": {
|
||||
"breakup": {
|
||||
"allOf": [
|
||||
{
|
||||
"contains": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"title": {
|
||||
"const": "BASE_FARE"
|
||||
},
|
||||
"price": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"value": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"required": ["value"]
|
||||
}
|
||||
},
|
||||
"required": ["title", "price"]
|
||||
}
|
||||
},
|
||||
{
|
||||
"contains": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"title": {
|
||||
"const": "DISTANCE_FARE"
|
||||
},
|
||||
"price": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"value": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"required": ["value"]
|
||||
}
|
||||
},
|
||||
"required": ["title", "price"]
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"$ref": "./confirm.json#/allOf/6"
|
||||
},
|
||||
{
|
||||
"allOf": [
|
||||
{
|
||||
"properties": {
|
||||
"message": {
|
||||
"properties": {
|
||||
"order": {
|
||||
"properties": {
|
||||
"cancellation_terms": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"fulfillment_state": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"descriptor": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"code": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"RIDE_ASSIGNED",
|
||||
"RIDE_ENROUTE_PICKUP",
|
||||
"RIDE_ARRIVED_PICKUP",
|
||||
"RIDE_STARTED"
|
||||
]
|
||||
}
|
||||
},
|
||||
"required": ["code"]
|
||||
}
|
||||
},
|
||||
"required": ["descriptor"]
|
||||
},
|
||||
"cancellation_fee": {
|
||||
"oneOf": [
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"percentage": {
|
||||
"type": "string",
|
||||
"pattern": "^(100(\\.0{1,2})?|([0-9]{1,2})(\\.\\d{1,2})?)$"
|
||||
}
|
||||
},
|
||||
"required": ["percentage"]
|
||||
},
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"amount": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"value": {
|
||||
"type": "string",
|
||||
"pattern": "^[+-]?(\\d+(\\.\\d*)?|\\.\\d+)$"
|
||||
},
|
||||
"currency": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"required": ["currency", "value"]
|
||||
}
|
||||
},
|
||||
"required": ["amount"]
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"required": ["fulfillment_state", "cancellation_fee"]
|
||||
}
|
||||
}
|
||||
},
|
||||
"required": ["cancellation_terms"]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"properties": {
|
||||
"message": {
|
||||
"type": "object"
|
||||
}
|
||||
},
|
||||
"required": ["message"]
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
13
schemas/ondc_trv10/v2.0.0/on_rating.json
Normal file
13
schemas/ondc_trv10/v2.0.0/on_rating.json
Normal file
@@ -0,0 +1,13 @@
|
||||
{
|
||||
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
||||
"$id": "on_rating",
|
||||
"type": "object",
|
||||
"allOf": [
|
||||
{
|
||||
"$ref": "../../core/v1.1.0/on_rating.json#"
|
||||
},
|
||||
{
|
||||
"$ref": "./init.json#/allOf/1"
|
||||
}
|
||||
]
|
||||
}
|
||||
644
schemas/ondc_trv10/v2.0.0/on_search.json
Normal file
644
schemas/ondc_trv10/v2.0.0/on_search.json
Normal file
@@ -0,0 +1,644 @@
|
||||
{
|
||||
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
||||
"$id": "on_search",
|
||||
"type": "object",
|
||||
"allOf": [
|
||||
{
|
||||
"$ref": "../../core/v1.1.0/on_search.json#"
|
||||
},
|
||||
{
|
||||
"$ref": "./init.json#/allOf/1"
|
||||
},
|
||||
{
|
||||
"properties": {
|
||||
"message": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"catalog": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"descriptor": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"name": {
|
||||
"type": "string"
|
||||
},
|
||||
"images": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "string"
|
||||
},
|
||||
"minItems": 1
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"name"
|
||||
]
|
||||
},
|
||||
"providers": {
|
||||
"type": "array",
|
||||
"minItems": 1,
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"id": {
|
||||
"type": "string"
|
||||
},
|
||||
"descriptor": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"name": {
|
||||
"type": "string"
|
||||
},
|
||||
"images": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "string"
|
||||
},
|
||||
"minItems": 1
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"name"
|
||||
]
|
||||
},
|
||||
"fulfillments": {
|
||||
"type": "array",
|
||||
"minItems": 1,
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"vehicle": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"category": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"AUTO_RICKSHAW",
|
||||
"CAB"
|
||||
]
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"category"
|
||||
]
|
||||
},
|
||||
"type": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"DELIVERY"
|
||||
]
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"id",
|
||||
"vehicle",
|
||||
"type"
|
||||
]
|
||||
}
|
||||
},
|
||||
"items": {
|
||||
"type": "array",
|
||||
"minItems": 1,
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"descriptor": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"name": {
|
||||
"type": "string"
|
||||
},
|
||||
"code": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"RIDE"
|
||||
]
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"code"
|
||||
]
|
||||
},
|
||||
"price": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"value": {
|
||||
"type": "string",
|
||||
"pattern": "^-?\\d+(\\.\\d+)?$"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"value",
|
||||
"currency"
|
||||
]
|
||||
},
|
||||
"fulfillment_ids": {
|
||||
"type": "array",
|
||||
"minItems": 1
|
||||
},
|
||||
"payment_ids": {
|
||||
"type": "array",
|
||||
"minItems": 1
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"id",
|
||||
"descriptor",
|
||||
"price",
|
||||
"fulfillment_ids"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"id",
|
||||
"items",
|
||||
"fulfillments"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"providers"
|
||||
]
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"catalog"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"properties": {
|
||||
"message": {
|
||||
"properties": {
|
||||
"order": {
|
||||
"properties": {
|
||||
"payments": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"collected_by": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"BAP",
|
||||
"BPP"
|
||||
]
|
||||
},
|
||||
"tags": {
|
||||
"type": "array",
|
||||
"minItems": 2,
|
||||
"maxItems": 2,
|
||||
"uniqueItems": true,
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"descriptor": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"code": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"SETTLEMENT_TERMS",
|
||||
"BUYER_FINDER_FEES"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"descriptor"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"collected_by",
|
||||
"tags"
|
||||
],
|
||||
"allOf": [
|
||||
{
|
||||
"if": {
|
||||
"allOf": [
|
||||
{
|
||||
"properties": {
|
||||
"collected_by": {
|
||||
"const": "BAP"
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"then": {
|
||||
"properties": {
|
||||
"tags": {
|
||||
"items": {
|
||||
"if": {
|
||||
"properties": {
|
||||
"descriptor": {
|
||||
"properties": {
|
||||
"code": {
|
||||
"const": "SETTLEMENT_TERMS"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"then": {
|
||||
"properties": {
|
||||
"list": {
|
||||
"allOf": [
|
||||
{
|
||||
"contains": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"descriptor": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"code": {
|
||||
"const": "STATIC_TERMS"
|
||||
}
|
||||
}
|
||||
},
|
||||
"value": {
|
||||
"type": "string",
|
||||
"format": "uri"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"contains": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"descriptor": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"code": {
|
||||
"const": "SETTLEMENT_TYPE"
|
||||
}
|
||||
}
|
||||
},
|
||||
"value": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"upi",
|
||||
"neft",
|
||||
"rtgs",
|
||||
"UPI",
|
||||
"NEFT",
|
||||
"RTGS"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"contains": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"descriptor": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"code": {
|
||||
"const": "DELAY_INTEREST"
|
||||
}
|
||||
}
|
||||
},
|
||||
"value": {
|
||||
"type": "string",
|
||||
"pattern": "^\\d+(\\.\\d{1,2})?$"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"contains": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"descriptor": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"code": {
|
||||
"const": "MANDATORY_ARBITRATION"
|
||||
}
|
||||
}
|
||||
},
|
||||
"value": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"true",
|
||||
"false"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"contains": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"descriptor": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"code": {
|
||||
"const": "COURT_JURISDICTION"
|
||||
}
|
||||
}
|
||||
},
|
||||
"value": {
|
||||
"type": "string"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"if": {
|
||||
"allOf": [
|
||||
{
|
||||
"properties": {
|
||||
"collected_by": {
|
||||
"const": "BPP"
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"then": {
|
||||
"properties": {
|
||||
"tags": {
|
||||
"items": {
|
||||
"if": {
|
||||
"properties": {
|
||||
"descriptor": {
|
||||
"properties": {
|
||||
"code": {
|
||||
"const": "SETTLEMENT_TERMS"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"then": {
|
||||
"properties": {
|
||||
"list": {
|
||||
"allOf": [
|
||||
{
|
||||
"contains": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"descriptor": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"code": {
|
||||
"const": "STATIC_TERMS"
|
||||
}
|
||||
}
|
||||
},
|
||||
"value": {
|
||||
"type": "string",
|
||||
"format": "uri"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"contains": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"descriptor": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"code": {
|
||||
"const": "SETTLEMENT_TYPE"
|
||||
}
|
||||
}
|
||||
},
|
||||
"value": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"upi",
|
||||
"neft",
|
||||
"rtgs",
|
||||
"UPI",
|
||||
"NEFT",
|
||||
"RTGS"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"contains": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"descriptor": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"code": {
|
||||
"const": "DELAY_INTEREST"
|
||||
}
|
||||
}
|
||||
},
|
||||
"value": {
|
||||
"type": "string",
|
||||
"pattern": "^\\d+(\\.\\d{1,2})?$"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"contains": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"descriptor": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"code": {
|
||||
"const": "MANDATORY_ARBITRATION"
|
||||
}
|
||||
}
|
||||
},
|
||||
"value": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"true",
|
||||
"false"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"contains": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"descriptor": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"code": {
|
||||
"const": "COURT_JURISDICTION"
|
||||
}
|
||||
}
|
||||
},
|
||||
"value": {
|
||||
"type": "string"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"contains": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"descriptor": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"code": {
|
||||
"const": "SETTLEMENT_BASIS"
|
||||
}
|
||||
}
|
||||
},
|
||||
"value": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"DELIVERY"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"contains": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"descriptor": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"code": {
|
||||
"const": "SETTLEMENT_WINDOW"
|
||||
}
|
||||
}
|
||||
},
|
||||
"value": {
|
||||
"type": "string"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"payments"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"properties": {
|
||||
"message": {
|
||||
"properties": {
|
||||
"catalog": {
|
||||
"properties": {
|
||||
"providers": {
|
||||
"items": {
|
||||
"properties": {
|
||||
"fulfillments": {
|
||||
"items": {
|
||||
"properties": {
|
||||
"stops": {
|
||||
"allOf": [
|
||||
{
|
||||
"contains": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"location": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"gps": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"gps"
|
||||
]
|
||||
},
|
||||
"type": {
|
||||
"const": "START"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"location",
|
||||
"type"
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"contains": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"location": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"gps": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"gps"
|
||||
]
|
||||
},
|
||||
"type": {
|
||||
"const": "END"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"location",
|
||||
"type"
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"stops"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
227
schemas/ondc_trv10/v2.0.0/on_select.json
Normal file
227
schemas/ondc_trv10/v2.0.0/on_select.json
Normal file
@@ -0,0 +1,227 @@
|
||||
{
|
||||
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
||||
"$id": "on_select",
|
||||
"type": "object",
|
||||
"allOf": [
|
||||
{
|
||||
"$ref": "../../core/v1.1.0/on_select.json#"
|
||||
},
|
||||
{
|
||||
"$ref": "./init.json#/allOf/1"
|
||||
},
|
||||
{
|
||||
"$ref": "./on_init.json#/allOf/2"
|
||||
},
|
||||
{
|
||||
"$ref": "./on_init.json#/allOf/5"
|
||||
},
|
||||
{
|
||||
"allOf": [
|
||||
{
|
||||
"properties": {
|
||||
"message": {
|
||||
"properties": {
|
||||
"order": {
|
||||
"properties": {
|
||||
"fulfillments": {
|
||||
"type": "array",
|
||||
"minItems": 1,
|
||||
"items": {
|
||||
"required": ["id"]
|
||||
}
|
||||
}
|
||||
},
|
||||
"required": ["fulfillments"]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"properties": {
|
||||
"message": {
|
||||
"properties": {
|
||||
"order": {
|
||||
"properties": {
|
||||
"fulfillments": {
|
||||
"type": "array",
|
||||
"minItems": 1,
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"state": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"descriptor": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"code": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"RIDE_ASSIGNED",
|
||||
"RIDE_ENROUTE_PICKUP",
|
||||
"RIDE_ARRIVED_PICKUP",
|
||||
"RIDE_STARTED",
|
||||
"RIDE_ENDED",
|
||||
"RIDE_CANCELLED"
|
||||
]
|
||||
}
|
||||
},
|
||||
"required": ["code"]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"properties": {
|
||||
"message": {
|
||||
"properties": {
|
||||
"order": {
|
||||
"properties": {
|
||||
"fulfillments": {
|
||||
"type": "array",
|
||||
"minItems": 1,
|
||||
"items": {
|
||||
"properties": {
|
||||
"stops": {
|
||||
"items": {
|
||||
"properties": {
|
||||
"authorization": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"type": {
|
||||
"type": "string",
|
||||
"enum": ["OTP"]
|
||||
},
|
||||
"token": {
|
||||
"type": "string",
|
||||
"pattern": "^-?\\d+(\\.\\d+)?$"
|
||||
}
|
||||
},
|
||||
"required": ["type", "token"]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"properties": {
|
||||
"message": {
|
||||
"properties": {
|
||||
"order": {
|
||||
"properties": {
|
||||
"fulfillments": {
|
||||
"items": {
|
||||
"properties": {
|
||||
"stops": {
|
||||
"type": "array",
|
||||
"minItems": 2,
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"location": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"gps": { "type": "string" }
|
||||
},
|
||||
"required": ["gps"]
|
||||
},
|
||||
"type": {
|
||||
"enum": ["START", "END"]
|
||||
}
|
||||
},
|
||||
"required": ["location", "type"]
|
||||
}
|
||||
}
|
||||
},
|
||||
"required": ["stops"]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"properties": {
|
||||
"message": {
|
||||
"properties": {
|
||||
"order": {
|
||||
"properties": {
|
||||
"fulfillments": {
|
||||
"type": "array",
|
||||
"minItems": 1,
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"vehicle": {
|
||||
"properties": {
|
||||
"category": {
|
||||
"type": "string",
|
||||
"enum": ["AUTO_RICKSHAW", "CAB"]
|
||||
}
|
||||
},
|
||||
"required": ["category"]
|
||||
}
|
||||
},
|
||||
"required": ["vehicle"]
|
||||
}
|
||||
}
|
||||
},
|
||||
"required": ["fulfillments"]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"$ref": "./on_init.json#/allOf/7"
|
||||
},
|
||||
{
|
||||
"properties": {
|
||||
"message": {
|
||||
"properties": {
|
||||
"order": {
|
||||
"properties": {
|
||||
"fulfillments": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"allOf": [
|
||||
{
|
||||
"not": {
|
||||
"required": ["agent"]
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"$ref": "./on_init.json#/allOf/8"
|
||||
}
|
||||
]
|
||||
}
|
||||
13
schemas/ondc_trv10/v2.0.0/on_status.json
Normal file
13
schemas/ondc_trv10/v2.0.0/on_status.json
Normal file
@@ -0,0 +1,13 @@
|
||||
{
|
||||
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
||||
"$id": "on_status",
|
||||
"type": "object",
|
||||
"allOf": [
|
||||
{
|
||||
"$ref": "../../core/v1.1.0/on_status.json#"
|
||||
},
|
||||
{
|
||||
"$ref": "./init.json#/allOf/1"
|
||||
}
|
||||
]
|
||||
}
|
||||
13
schemas/ondc_trv10/v2.0.0/on_support.json
Normal file
13
schemas/ondc_trv10/v2.0.0/on_support.json
Normal file
@@ -0,0 +1,13 @@
|
||||
{
|
||||
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
||||
"$id": "on_support",
|
||||
"type": "object",
|
||||
"allOf": [
|
||||
{
|
||||
"$ref": "../../core/v1.1.0/on_support.json#"
|
||||
},
|
||||
{
|
||||
"$ref": "./init.json#/allOf/1"
|
||||
}
|
||||
]
|
||||
}
|
||||
13
schemas/ondc_trv10/v2.0.0/on_track.json
Normal file
13
schemas/ondc_trv10/v2.0.0/on_track.json
Normal file
@@ -0,0 +1,13 @@
|
||||
{
|
||||
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
||||
"$id": "on_track",
|
||||
"type": "object",
|
||||
"allOf": [
|
||||
{
|
||||
"$ref": "../../core/v1.1.0/on_track.json#"
|
||||
},
|
||||
{
|
||||
"$ref": "./init.json#/allOf/1"
|
||||
}
|
||||
]
|
||||
}
|
||||
13
schemas/ondc_trv10/v2.0.0/on_update.json
Normal file
13
schemas/ondc_trv10/v2.0.0/on_update.json
Normal file
@@ -0,0 +1,13 @@
|
||||
{
|
||||
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
||||
"$id": "on_update",
|
||||
"type": "object",
|
||||
"allOf": [
|
||||
{
|
||||
"$ref": "../../core/v1.1.0/on_update.json#"
|
||||
},
|
||||
{
|
||||
"$ref": "./init.json#/allOf/1"
|
||||
}
|
||||
]
|
||||
}
|
||||
13
schemas/ondc_trv10/v2.0.0/rating.json
Normal file
13
schemas/ondc_trv10/v2.0.0/rating.json
Normal file
@@ -0,0 +1,13 @@
|
||||
{
|
||||
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
||||
"$id": "rating",
|
||||
"type": "object",
|
||||
"allOf": [
|
||||
{
|
||||
"$ref": "../../core/v1.1.0/rating.json#"
|
||||
},
|
||||
{
|
||||
"$ref": "./init.json#/allOf/1"
|
||||
}
|
||||
]
|
||||
}
|
||||
146
schemas/ondc_trv10/v2.0.0/search.json
Normal file
146
schemas/ondc_trv10/v2.0.0/search.json
Normal file
@@ -0,0 +1,146 @@
|
||||
{
|
||||
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
||||
"$id": "search",
|
||||
"allOf": [
|
||||
{ "$ref": "../../core/v1.1.0/search.json#" }
|
||||
],
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"context": {
|
||||
"type": "object",
|
||||
"allOf": [
|
||||
{
|
||||
"properties": {
|
||||
"action": {
|
||||
"type": "string"
|
||||
},
|
||||
"location": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"city": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"code": { "type": "string" }
|
||||
},
|
||||
"required": ["code"]
|
||||
},
|
||||
"country": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"code": {
|
||||
"type": "string",
|
||||
"enum": ["IND"]
|
||||
}
|
||||
},
|
||||
"required": ["code"]
|
||||
}
|
||||
},
|
||||
"required": ["city", "country"]
|
||||
},
|
||||
"bap_id": {
|
||||
"type": "string"
|
||||
},
|
||||
"bpp_id": {
|
||||
"type": "string"
|
||||
},
|
||||
"ttl": {
|
||||
"type": "string",
|
||||
"format": "duration"
|
||||
},
|
||||
"timestamp": {
|
||||
"type": "string",
|
||||
"format": "date-time"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"location",
|
||||
"domain",
|
||||
"action",
|
||||
"message_id",
|
||||
"transaction_id",
|
||||
"timestamp",
|
||||
"bap_id",
|
||||
"bap_uri",
|
||||
"ttl"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"message": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"intent": {
|
||||
"allOf": [
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"payment": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"collected_by": {
|
||||
"type": "string",
|
||||
"enum": ["BPP", "BAP"]
|
||||
},
|
||||
"tags": {
|
||||
"type": "array",
|
||||
"minItems": 2,
|
||||
"maxItems": 2,
|
||||
"uniqueItems": true,
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"descriptor": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"code": {
|
||||
"type": "string",
|
||||
"enum": ["SETTLEMENT_TERMS", "BUYER_FINDER_FEES"]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"required": ["descriptor"]
|
||||
}
|
||||
}
|
||||
},
|
||||
"required": ["collected_by"]
|
||||
},
|
||||
"fulfillment": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"stops": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"location": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"gps": { "type": "string" }
|
||||
},
|
||||
"required": ["gps"]
|
||||
},
|
||||
"type": {
|
||||
"type": "string",
|
||||
"enum": ["START", "END"]
|
||||
}
|
||||
},
|
||||
"required": ["location", "type"]
|
||||
},
|
||||
"minItems": 2
|
||||
}
|
||||
},
|
||||
"required": ["stops"]
|
||||
}
|
||||
},
|
||||
"required": ["payment", "fulfillment"]
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"required": ["intent"]
|
||||
}
|
||||
},
|
||||
"required": ["context", "message"]
|
||||
}
|
||||
|
||||
16
schemas/ondc_trv10/v2.0.0/select.json
Normal file
16
schemas/ondc_trv10/v2.0.0/select.json
Normal file
@@ -0,0 +1,16 @@
|
||||
{
|
||||
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
||||
"$id": "select",
|
||||
"type": "object",
|
||||
"allOf": [
|
||||
{
|
||||
"$ref": "../../core/v1.1.0/select.json#"
|
||||
},
|
||||
{
|
||||
"$ref": "./init.json#/allOf/1"
|
||||
},
|
||||
{
|
||||
"$ref": "./init.json#/allOf/2"
|
||||
}
|
||||
]
|
||||
}
|
||||
26
schemas/ondc_trv10/v2.0.0/status.json
Normal file
26
schemas/ondc_trv10/v2.0.0/status.json
Normal file
@@ -0,0 +1,26 @@
|
||||
{
|
||||
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
||||
"$id": "status",
|
||||
"type": "object",
|
||||
"allOf": [
|
||||
{
|
||||
"$ref": "../../core/v1.1.0/status.json#"
|
||||
},
|
||||
{
|
||||
"$ref": "./init.json#/allOf/1"
|
||||
},
|
||||
{
|
||||
"properties": {
|
||||
"message": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"order_id": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"required": ["order_id"]
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
13
schemas/ondc_trv10/v2.0.0/support.json
Normal file
13
schemas/ondc_trv10/v2.0.0/support.json
Normal file
@@ -0,0 +1,13 @@
|
||||
{
|
||||
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
||||
"$id": "support",
|
||||
"type": "object",
|
||||
"allOf": [
|
||||
{
|
||||
"$ref": "../../core/v1.1.0/support.json#"
|
||||
},
|
||||
{
|
||||
"$ref": "./init.json#/allOf/1"
|
||||
}
|
||||
]
|
||||
}
|
||||
13
schemas/ondc_trv10/v2.0.0/track.json
Normal file
13
schemas/ondc_trv10/v2.0.0/track.json
Normal file
@@ -0,0 +1,13 @@
|
||||
{
|
||||
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
||||
"$id": "track",
|
||||
"type": "object",
|
||||
"allOf": [
|
||||
{
|
||||
"$ref": "../../core/v1.1.0/track.json#"
|
||||
},
|
||||
{
|
||||
"$ref": "./init.json#/allOf/1"
|
||||
}
|
||||
]
|
||||
}
|
||||
35
schemas/ondc_trv10/v2.0.0/update.json
Normal file
35
schemas/ondc_trv10/v2.0.0/update.json
Normal file
@@ -0,0 +1,35 @@
|
||||
{
|
||||
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
||||
"$id": "update",
|
||||
"type": "object",
|
||||
"allOf": [
|
||||
{
|
||||
"$ref": "../../core/v1.1.0/update.json#"
|
||||
},
|
||||
{
|
||||
"$ref": "./init.json#/allOf/1"
|
||||
},
|
||||
{
|
||||
"properties": {
|
||||
"message": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"order": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"id": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"required": ["id"]
|
||||
},
|
||||
"update_target": {
|
||||
"type": "string",
|
||||
"pattern": "^[^,]+(,[^,]+)*$"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
Reference in New Issue
Block a user