@ingenx-io/valets-schema-mcp-server 0.1.10 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/data/docs/collections/firestore-paths.md +20 -0
- package/data/docs/enums/attention-status.md +1 -1
- package/data/docs/enums/booking-status.md +1 -1
- package/data/docs/enums/customer-payment-status.md +1 -1
- package/data/docs/enums/customer-payment-target-type.md +1 -1
- package/data/docs/enums/delivery-type.md +1 -1
- package/data/docs/enums/deployment-link-type.md +1 -1
- package/data/docs/enums/event-status.md +1 -1
- package/data/docs/enums/fulfillment-status.md +1 -1
- package/data/docs/enums/loyalty-transaction-type.md +1 -1
- package/data/docs/enums/order-status.md +1 -1
- package/data/docs/enums/outbound-message-format.md +22 -0
- package/data/docs/enums/outbound-message-purpose.md +24 -0
- package/data/docs/enums/outbound-message-status.md +4 -4
- package/data/docs/enums/payment-method.md +2 -2
- package/data/docs/enums/payment-proof-status.md +2 -2
- package/data/docs/enums/payment-status.md +2 -2
- package/data/docs/enums/pending-issue.md +2 -2
- package/data/docs/enums/return-status.md +2 -2
- package/data/docs/enums/session-status.md +2 -2
- package/data/docs/enums/site-status.md +2 -2
- package/data/docs/enums/stocktake-frequency.md +2 -2
- package/data/docs/enums/stocktake-item-status.md +2 -2
- package/data/docs/enums/stocktake-status.md +2 -2
- package/data/docs/enums/ticket-status.md +2 -2
- package/data/docs/enums/waba-label.md +2 -2
- package/data/docs/enums/whatsapp-template-status.md +26 -0
- package/data/docs/index.md +9 -5
- package/data/docs/models/allowed-user.md +1 -1
- package/data/docs/models/analytics-backfill.md +1 -1
- package/data/docs/models/analytics-daily.md +1 -1
- package/data/docs/models/analytics-event.md +1 -1
- package/data/docs/models/analytics-hourly.md +1 -1
- package/data/docs/models/booking-version.md +1 -1
- package/data/docs/models/booking.md +1 -1
- package/data/docs/models/customer-payment-allocation.md +1 -1
- package/data/docs/models/customer-payment.md +1 -1
- package/data/docs/models/customer.md +1 -1
- package/data/docs/models/event.md +1 -1
- package/data/docs/models/loyalty-config.md +1 -1
- package/data/docs/models/loyalty-reward.md +1 -1
- package/data/docs/models/loyalty-status.md +1 -1
- package/data/docs/models/loyalty-transaction.md +1 -1
- package/data/docs/models/magic-link-request.md +1 -1
- package/data/docs/models/metrics-current.md +1 -1
- package/data/docs/models/metrics-daily.md +1 -1
- package/data/docs/models/metrics-monthly.md +1 -1
- package/data/docs/models/order-item.md +1 -1
- package/data/docs/models/order.md +1 -1
- package/data/docs/models/sale.md +1 -1
- package/data/docs/models/site-payment.md +1 -1
- package/data/docs/models/site.md +1 -1
- package/data/docs/models/stocktake-item.md +1 -1
- package/data/docs/models/stocktake.md +1 -1
- package/data/docs/models/ticket.md +1 -1
- package/data/docs/models/whatsapp-inbound-message.md +1 -1
- package/data/docs/models/whatsapp-outbound-lifecycle-event.md +310 -0
- package/data/docs/models/whatsapp-outbound-message.md +395 -172
- package/data/docs/models/whatsapp-template.md +177 -0
- package/data/static/llms.txt +110 -32
- package/data/static/openapi.yaml +274 -66
- package/data/static/schemas.json +354 -69
- package/package.json +1 -1
- package/data/docs/enums/outbound-message-kind.md +0 -23
package/data/static/schemas.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
3
3
|
"description": "@valets/schema \u2014 consolidated schema bundle",
|
|
4
|
-
"generated": "2026-05-
|
|
4
|
+
"generated": "2026-05-27T01:15:18.169259+00:00",
|
|
5
5
|
"schemas": {
|
|
6
6
|
"allowed-user": {
|
|
7
7
|
"type": "object",
|
|
@@ -4394,25 +4394,34 @@
|
|
|
4394
4394
|
]
|
|
4395
4395
|
}
|
|
4396
4396
|
},
|
|
4397
|
-
"outbound-message-
|
|
4397
|
+
"outbound-message-format": {
|
|
4398
|
+
"type": "string",
|
|
4399
|
+
"enum": [
|
|
4400
|
+
"text",
|
|
4401
|
+
"template"
|
|
4402
|
+
],
|
|
4403
|
+
"description": "Outbound WhatsApp message format. `text` is a free-form body (only valid inside the 24h customer-care window); `template` is a pre-approved WhatsApp template send. The backend is the authority on which is allowed (GH#43)."
|
|
4404
|
+
},
|
|
4405
|
+
"outbound-message-purpose": {
|
|
4398
4406
|
"type": "string",
|
|
4399
4407
|
"enum": [
|
|
4400
4408
|
"otp",
|
|
4401
4409
|
"review_request",
|
|
4402
|
-
"adhoc"
|
|
4410
|
+
"adhoc",
|
|
4411
|
+
"conversational"
|
|
4403
4412
|
],
|
|
4404
|
-
"description": "
|
|
4413
|
+
"description": "Business purpose of an outbound WhatsApp message \u2014 orthogonal to its format (see OutboundMessageFormat). `otp`/`review_request`/`adhoc` are system-originated; `conversational` is a human agent reply from the dashboard inbox. Optional signal carried for analytics/triggers (GH#43; supersedes the GH#38 OutboundMessageKind)."
|
|
4405
4414
|
},
|
|
4406
4415
|
"outbound-message-status": {
|
|
4407
4416
|
"type": "string",
|
|
4408
4417
|
"enum": [
|
|
4409
|
-
"
|
|
4418
|
+
"queued",
|
|
4410
4419
|
"sent",
|
|
4411
4420
|
"delivered",
|
|
4412
4421
|
"read",
|
|
4413
4422
|
"failed"
|
|
4414
4423
|
],
|
|
4415
|
-
"description": "Outbound WhatsApp message delivery status. Lifecycle:
|
|
4424
|
+
"description": "Outbound WhatsApp message delivery status. Lifecycle: queued \u2192 sent \u2192 delivered \u2192 read, or queued \u2192 failed. The dashboard creates the message with status `queued`; the whatsapp-server backend owns every transition after, updating in place from Meta delivery callbacks (GH#43)."
|
|
4416
4425
|
},
|
|
4417
4426
|
"payment-method": {
|
|
4418
4427
|
"type": "string",
|
|
@@ -5704,30 +5713,138 @@
|
|
|
5704
5713
|
"context": null
|
|
5705
5714
|
}
|
|
5706
5715
|
},
|
|
5707
|
-
"whatsapp-outbound-
|
|
5716
|
+
"whatsapp-outbound-lifecycle-event": {
|
|
5708
5717
|
"type": "object",
|
|
5709
5718
|
"properties": {
|
|
5710
5719
|
"id": {
|
|
5711
5720
|
"readOnly": true,
|
|
5712
|
-
"description": "(Read-only) Firestore document ID
|
|
5721
|
+
"description": "(Read-only) Firestore document ID, auto-generated.",
|
|
5713
5722
|
"type": [
|
|
5714
5723
|
"string",
|
|
5715
5724
|
"null"
|
|
5716
5725
|
]
|
|
5717
5726
|
},
|
|
5718
|
-
"
|
|
5719
|
-
"
|
|
5720
|
-
|
|
5721
|
-
|
|
5727
|
+
"type": {
|
|
5728
|
+
"anyOf": [
|
|
5729
|
+
{
|
|
5730
|
+
"type": "string",
|
|
5731
|
+
"enum": [
|
|
5732
|
+
"send_attempt",
|
|
5733
|
+
"status_callback",
|
|
5734
|
+
"error"
|
|
5735
|
+
]
|
|
5736
|
+
},
|
|
5737
|
+
{
|
|
5738
|
+
"type": "string"
|
|
5739
|
+
}
|
|
5740
|
+
],
|
|
5741
|
+
"description": "(Read-only) Event type \u2014 send_attempt | status_callback | error | future string.",
|
|
5742
|
+
"readOnly": true
|
|
5743
|
+
},
|
|
5744
|
+
"at": {
|
|
5745
|
+
"$ref": "#/definitions/firestore-timestamp",
|
|
5746
|
+
"description": "(Read-only) When the event was recorded server-side.",
|
|
5747
|
+
"readOnly": true
|
|
5748
|
+
},
|
|
5749
|
+
"status": {
|
|
5750
|
+
"anyOf": [
|
|
5751
|
+
{
|
|
5752
|
+
"$ref": "#/definitions/outbound-message-status"
|
|
5753
|
+
},
|
|
5754
|
+
{
|
|
5755
|
+
"type": "null"
|
|
5756
|
+
}
|
|
5757
|
+
],
|
|
5758
|
+
"readOnly": true,
|
|
5759
|
+
"description": "(Read-only) Resulting/observed status, when this event implies one."
|
|
5760
|
+
},
|
|
5761
|
+
"wamid": {
|
|
5762
|
+
"readOnly": true,
|
|
5763
|
+
"description": "(Read-only) WhatsApp message ID, if known at this point in the lifecycle.",
|
|
5764
|
+
"type": [
|
|
5765
|
+
"string",
|
|
5766
|
+
"null"
|
|
5767
|
+
]
|
|
5768
|
+
},
|
|
5769
|
+
"phoneNumberId": {
|
|
5770
|
+
"readOnly": true,
|
|
5771
|
+
"description": "(Read-only) Meta phone number ID (the specific line within the WABA) used for the attempt.",
|
|
5772
|
+
"type": [
|
|
5773
|
+
"string",
|
|
5774
|
+
"null"
|
|
5775
|
+
]
|
|
5776
|
+
},
|
|
5777
|
+
"contactWaId": {
|
|
5778
|
+
"readOnly": true,
|
|
5779
|
+
"description": "(Read-only) Normalized wa_id returned by Meta. May differ from the recipient `to`.",
|
|
5780
|
+
"type": [
|
|
5781
|
+
"string",
|
|
5782
|
+
"null"
|
|
5783
|
+
]
|
|
5784
|
+
},
|
|
5785
|
+
"metaRequest": {
|
|
5786
|
+
"readOnly": true,
|
|
5787
|
+
"description": "(Read-only) Raw outbound payload sent to the Meta Graph API."
|
|
5788
|
+
},
|
|
5789
|
+
"metaResponse": {
|
|
5790
|
+
"readOnly": true,
|
|
5791
|
+
"description": "(Read-only) Raw Meta Graph API response."
|
|
5792
|
+
},
|
|
5793
|
+
"errorCode": {
|
|
5794
|
+
"readOnly": true,
|
|
5795
|
+
"description": "(Read-only) Meta error code. Present on failed attempts.",
|
|
5796
|
+
"type": [
|
|
5797
|
+
"integer",
|
|
5798
|
+
"null"
|
|
5799
|
+
],
|
|
5800
|
+
"minimum": -9007199254740991,
|
|
5801
|
+
"maximum": 9007199254740991
|
|
5802
|
+
},
|
|
5803
|
+
"errorDetail": {
|
|
5804
|
+
"readOnly": true,
|
|
5805
|
+
"description": "(Read-only) Raw Meta error object(s)."
|
|
5806
|
+
}
|
|
5807
|
+
},
|
|
5808
|
+
"required": [
|
|
5809
|
+
"type",
|
|
5810
|
+
"at"
|
|
5811
|
+
],
|
|
5812
|
+
"additionalProperties": false,
|
|
5813
|
+
"x-internal": true,
|
|
5814
|
+
"description": "\u26a0\ufe0f BACKEND-INTERNAL \u2014 not a consumer contract. WhatsappOutboundLifecycleEvent: append-only backend log for reconstituting an outbound message lifecycle (GH#43). Collection: whatsapp_outbound_messages/{messageId}/lifecycle_events/{eventId}. Written/read only by the whatsapp-server backend.",
|
|
5815
|
+
"example": {
|
|
5816
|
+
"id": null,
|
|
5817
|
+
"type": "phone",
|
|
5818
|
+
"at": "at",
|
|
5819
|
+
"status": "status",
|
|
5820
|
+
"wamid": null,
|
|
5821
|
+
"phoneNumberId": null,
|
|
5822
|
+
"contactWaId": null,
|
|
5823
|
+
"metaRequest": "metaRequest",
|
|
5824
|
+
"metaResponse": "metaResponse",
|
|
5825
|
+
"errorCode": null,
|
|
5826
|
+
"errorDetail": "errorDetail"
|
|
5827
|
+
}
|
|
5828
|
+
},
|
|
5829
|
+
"whatsapp-outbound-message": {
|
|
5830
|
+
"type": "object",
|
|
5831
|
+
"properties": {
|
|
5832
|
+
"id": {
|
|
5833
|
+
"readOnly": true,
|
|
5834
|
+
"description": "(Read-only) Firestore document ID \u2014 auto-generated at enqueue time.",
|
|
5835
|
+
"type": [
|
|
5836
|
+
"string",
|
|
5837
|
+
"null"
|
|
5838
|
+
]
|
|
5722
5839
|
},
|
|
5723
5840
|
"to": {
|
|
5724
5841
|
"type": "string",
|
|
5725
5842
|
"x-immutable": true,
|
|
5726
|
-
"description": "(Immutable) Recipient phone number in E.164 format.
|
|
5843
|
+
"description": "(Immutable) Recipient phone number in E.164 format. Must match the inbound `from` for the same conversation."
|
|
5727
5844
|
},
|
|
5728
5845
|
"waba": {
|
|
5729
5846
|
"$ref": "#/definitions/waba-label",
|
|
5730
|
-
"description": "(Immutable) WABA that
|
|
5847
|
+
"description": "(Immutable) WABA that will send the message. Mirrors inbound `waba`.",
|
|
5731
5848
|
"x-immutable": true
|
|
5732
5849
|
},
|
|
5733
5850
|
"wabaId": {
|
|
@@ -5735,52 +5852,119 @@
|
|
|
5735
5852
|
"x-immutable": true,
|
|
5736
5853
|
"description": "(Immutable) Meta WABA ID. Mirrors inbound `wabaId`."
|
|
5737
5854
|
},
|
|
5738
|
-
"sentAt": {
|
|
5739
|
-
"$ref": "#/definitions/firestore-timestamp",
|
|
5740
|
-
"description": "(Read-only) Server-side send timestamp. Mirrors inbound `receivedAt`.",
|
|
5741
|
-
"readOnly": true
|
|
5742
|
-
},
|
|
5743
|
-
"phoneNumberId": {
|
|
5744
|
-
"type": "string",
|
|
5745
|
-
"x-immutable": true,
|
|
5746
|
-
"description": "(Immutable) Meta phone number ID used for the send (specific line within the WABA)."
|
|
5747
|
-
},
|
|
5748
5855
|
"kind": {
|
|
5749
|
-
"$ref": "#/definitions/outbound-message-
|
|
5750
|
-
"description": "(Immutable) Message
|
|
5856
|
+
"$ref": "#/definitions/outbound-message-format",
|
|
5857
|
+
"description": "(Immutable) Message format: `text` or `template`. Set `text` xor `template` to match.",
|
|
5751
5858
|
"x-immutable": true
|
|
5752
5859
|
},
|
|
5753
|
-
"
|
|
5754
|
-
"
|
|
5755
|
-
"
|
|
5756
|
-
"
|
|
5860
|
+
"text": {
|
|
5861
|
+
"x-when": "Set only when kind === \"text\" \u2014 the free-form message body.",
|
|
5862
|
+
"description": "Free-form message body. Present only when kind=text.",
|
|
5863
|
+
"type": [
|
|
5864
|
+
"string",
|
|
5865
|
+
"null"
|
|
5866
|
+
]
|
|
5757
5867
|
},
|
|
5758
|
-
"
|
|
5759
|
-
"
|
|
5760
|
-
"description": "
|
|
5868
|
+
"template": {
|
|
5869
|
+
"x-when": "Set only when kind === \"template\".",
|
|
5870
|
+
"description": "Template send payload. Present only when kind=template.",
|
|
5871
|
+
"type": [
|
|
5872
|
+
"object",
|
|
5873
|
+
"null"
|
|
5874
|
+
],
|
|
5875
|
+
"properties": {
|
|
5876
|
+
"name": {
|
|
5877
|
+
"type": "string",
|
|
5878
|
+
"description": "WhatsApp template name (must exist and be APPROVED in whatsapp_templates)."
|
|
5879
|
+
},
|
|
5880
|
+
"language": {
|
|
5881
|
+
"type": "string",
|
|
5882
|
+
"description": "Template language/locale code (e.g. \"en\", \"fr\")."
|
|
5883
|
+
},
|
|
5884
|
+
"variables": {
|
|
5885
|
+
"description": "Template variable values, keyed by the variable name declared on the template.",
|
|
5886
|
+
"type": "object",
|
|
5887
|
+
"propertyNames": {
|
|
5888
|
+
"type": "string"
|
|
5889
|
+
},
|
|
5890
|
+
"additionalProperties": {
|
|
5891
|
+
"type": "string"
|
|
5892
|
+
}
|
|
5893
|
+
}
|
|
5894
|
+
},
|
|
5895
|
+
"required": [
|
|
5896
|
+
"name",
|
|
5897
|
+
"language"
|
|
5898
|
+
],
|
|
5899
|
+
"additionalProperties": false
|
|
5761
5900
|
},
|
|
5762
|
-
"
|
|
5763
|
-
"
|
|
5901
|
+
"purpose": {
|
|
5902
|
+
"anyOf": [
|
|
5903
|
+
{
|
|
5904
|
+
"$ref": "#/definitions/outbound-message-purpose"
|
|
5905
|
+
},
|
|
5906
|
+
{
|
|
5907
|
+
"type": "null"
|
|
5908
|
+
}
|
|
5909
|
+
],
|
|
5910
|
+
"x-immutable": true,
|
|
5911
|
+
"x-note": "Business purpose, orthogonal to `kind`. Carried for analytics/triggers; defaults to conversational for dashboard agent replies.",
|
|
5912
|
+
"description": "Business purpose (otp | review_request | adhoc | conversational). Optional."
|
|
5913
|
+
},
|
|
5914
|
+
"orderUuid": {
|
|
5915
|
+
"x-immutable": true,
|
|
5916
|
+
"description": "Order reference. Present on review_request messages.",
|
|
5764
5917
|
"type": [
|
|
5765
5918
|
"string",
|
|
5766
5919
|
"null"
|
|
5767
5920
|
]
|
|
5768
5921
|
},
|
|
5769
|
-
"
|
|
5770
|
-
"
|
|
5922
|
+
"sentBy": {
|
|
5923
|
+
"type": "object",
|
|
5924
|
+
"properties": {
|
|
5925
|
+
"uid": {
|
|
5926
|
+
"type": "string",
|
|
5927
|
+
"description": "Firebase Auth UID of the dashboard user who enqueued the message."
|
|
5928
|
+
},
|
|
5929
|
+
"email": {
|
|
5930
|
+
"description": "Email of the sender, if available.",
|
|
5931
|
+
"type": "string"
|
|
5932
|
+
}
|
|
5933
|
+
},
|
|
5934
|
+
"required": [
|
|
5935
|
+
"uid"
|
|
5936
|
+
],
|
|
5937
|
+
"additionalProperties": false,
|
|
5938
|
+
"x-immutable": true,
|
|
5939
|
+
"description": "(Immutable) Dashboard actor who enqueued the message."
|
|
5940
|
+
},
|
|
5941
|
+
"createdAt": {
|
|
5942
|
+
"$ref": "#/definitions/firestore-timestamp",
|
|
5943
|
+
"description": "(Immutable) Enqueue timestamp, set by the dashboard at create.",
|
|
5944
|
+
"x-immutable": true
|
|
5945
|
+
},
|
|
5946
|
+
"status": {
|
|
5947
|
+
"$ref": "#/definitions/outbound-message-status",
|
|
5948
|
+
"description": "Delivery status. Created as `queued` by the dashboard; updated in place by the backend.",
|
|
5949
|
+
"x-note": "Dashboard must create with `queued`. The backend owns every transition after (sent \u2192 delivered \u2192 read, or failed)."
|
|
5950
|
+
},
|
|
5951
|
+
"wamid": {
|
|
5952
|
+
"readOnly": true,
|
|
5953
|
+
"description": "(Read-only) WhatsApp message ID returned by Meta once the backend sends. Absent while queued or on failure.",
|
|
5771
5954
|
"type": [
|
|
5772
5955
|
"string",
|
|
5773
5956
|
"null"
|
|
5774
5957
|
]
|
|
5775
5958
|
},
|
|
5776
|
-
"
|
|
5777
|
-
"
|
|
5959
|
+
"error": {
|
|
5960
|
+
"readOnly": true,
|
|
5961
|
+
"description": "(Read-only) Human-readable failure reason. Present on status=failed. Raw Meta error detail lives in the lifecycle_events subcollection.",
|
|
5778
5962
|
"type": [
|
|
5779
5963
|
"string",
|
|
5780
5964
|
"null"
|
|
5781
5965
|
]
|
|
5782
5966
|
},
|
|
5783
|
-
"
|
|
5967
|
+
"sentAt": {
|
|
5784
5968
|
"anyOf": [
|
|
5785
5969
|
{
|
|
5786
5970
|
"$ref": "#/definitions/firestore-timestamp"
|
|
@@ -5789,58 +5973,159 @@
|
|
|
5789
5973
|
"type": "null"
|
|
5790
5974
|
}
|
|
5791
5975
|
],
|
|
5792
|
-
"
|
|
5976
|
+
"readOnly": true,
|
|
5977
|
+
"description": "(Read-only) When the backend sent the message to Meta."
|
|
5793
5978
|
},
|
|
5794
|
-
"
|
|
5795
|
-
"
|
|
5796
|
-
|
|
5797
|
-
|
|
5798
|
-
|
|
5979
|
+
"deliveredAt": {
|
|
5980
|
+
"anyOf": [
|
|
5981
|
+
{
|
|
5982
|
+
"$ref": "#/definitions/firestore-timestamp"
|
|
5983
|
+
},
|
|
5984
|
+
{
|
|
5985
|
+
"type": "null"
|
|
5986
|
+
}
|
|
5799
5987
|
],
|
|
5800
|
-
"
|
|
5801
|
-
"
|
|
5988
|
+
"readOnly": true,
|
|
5989
|
+
"description": "(Read-only) When Meta reported delivery."
|
|
5802
5990
|
},
|
|
5803
|
-
"
|
|
5804
|
-
"
|
|
5805
|
-
|
|
5806
|
-
|
|
5807
|
-
|
|
5991
|
+
"readAt": {
|
|
5992
|
+
"anyOf": [
|
|
5993
|
+
{
|
|
5994
|
+
"$ref": "#/definitions/firestore-timestamp"
|
|
5995
|
+
},
|
|
5996
|
+
{
|
|
5997
|
+
"type": "null"
|
|
5998
|
+
}
|
|
5808
5999
|
],
|
|
5809
|
-
"
|
|
6000
|
+
"readOnly": true,
|
|
6001
|
+
"description": "(Read-only) When Meta reported the recipient read the message."
|
|
6002
|
+
},
|
|
6003
|
+
"failedAt": {
|
|
6004
|
+
"anyOf": [
|
|
6005
|
+
{
|
|
6006
|
+
"$ref": "#/definitions/firestore-timestamp"
|
|
6007
|
+
},
|
|
6008
|
+
{
|
|
6009
|
+
"type": "null"
|
|
6010
|
+
}
|
|
6011
|
+
],
|
|
6012
|
+
"readOnly": true,
|
|
6013
|
+
"description": "(Read-only) When the send failed."
|
|
5810
6014
|
}
|
|
5811
6015
|
},
|
|
5812
6016
|
"required": [
|
|
5813
|
-
"messageId",
|
|
5814
6017
|
"to",
|
|
5815
6018
|
"waba",
|
|
5816
6019
|
"wabaId",
|
|
5817
|
-
"sentAt",
|
|
5818
|
-
"phoneNumberId",
|
|
5819
6020
|
"kind",
|
|
5820
|
-
"
|
|
6021
|
+
"sentBy",
|
|
6022
|
+
"createdAt",
|
|
5821
6023
|
"status"
|
|
5822
6024
|
],
|
|
5823
6025
|
"additionalProperties": false,
|
|
5824
|
-
"description": "WhatsappOutboundMessage \u2014
|
|
6026
|
+
"description": "WhatsappOutboundMessage \u2014 Firestore-as-the-bus outbox doc (GH#43). Collection: whatsapp_outbound_messages/{docId}. Top-level scope; mirrors WhatsappInboundMessage. Dashboard enqueues `queued`; backend sends and owns the lifecycle.",
|
|
5825
6027
|
"example": {
|
|
5826
6028
|
"id": null,
|
|
5827
|
-
"messageId": "mes_ref123",
|
|
5828
6029
|
"to": "to",
|
|
5829
6030
|
"waba": "waba",
|
|
5830
6031
|
"wabaId": "wab_ref123",
|
|
5831
|
-
"sentAt": "sentAt",
|
|
5832
|
-
"phoneNumberId": "pho_ref123",
|
|
5833
6032
|
"kind": "kind",
|
|
5834
|
-
"
|
|
5835
|
-
"
|
|
5836
|
-
"
|
|
5837
|
-
"appId": null,
|
|
6033
|
+
"text": null,
|
|
6034
|
+
"template": null,
|
|
6035
|
+
"purpose": "purpose",
|
|
5838
6036
|
"orderUuid": null,
|
|
5839
|
-
"
|
|
5840
|
-
|
|
5841
|
-
|
|
6037
|
+
"sentBy": {
|
|
6038
|
+
"uid": "user_u8x92kqm"
|
|
6039
|
+
},
|
|
6040
|
+
"createdAt": "createdAt",
|
|
6041
|
+
"status": "status",
|
|
6042
|
+
"wamid": null,
|
|
6043
|
+
"error": null,
|
|
6044
|
+
"sentAt": "sentAt",
|
|
6045
|
+
"deliveredAt": "deliveredAt",
|
|
6046
|
+
"readAt": "readAt",
|
|
6047
|
+
"failedAt": "failedAt"
|
|
6048
|
+
}
|
|
6049
|
+
},
|
|
6050
|
+
"whatsapp-template": {
|
|
6051
|
+
"type": "object",
|
|
6052
|
+
"properties": {
|
|
6053
|
+
"id": {
|
|
6054
|
+
"readOnly": true,
|
|
6055
|
+
"description": "(Read-only) Firestore document ID \u2014 composite `{name}__{language}`.",
|
|
6056
|
+
"type": [
|
|
6057
|
+
"string",
|
|
6058
|
+
"null"
|
|
6059
|
+
]
|
|
6060
|
+
},
|
|
6061
|
+
"name": {
|
|
6062
|
+
"type": "string",
|
|
6063
|
+
"readOnly": true,
|
|
6064
|
+
"description": "(Read-only) Template name as registered with Meta."
|
|
6065
|
+
},
|
|
6066
|
+
"language": {
|
|
6067
|
+
"type": "string",
|
|
6068
|
+
"readOnly": true,
|
|
6069
|
+
"description": "(Read-only) Template language/locale code (e.g. \"en\", \"fr\")."
|
|
6070
|
+
},
|
|
6071
|
+
"category": {
|
|
6072
|
+
"type": "string",
|
|
6073
|
+
"readOnly": true,
|
|
6074
|
+
"description": "(Read-only) Meta template category (e.g. MARKETING, UTILITY, AUTHENTICATION)."
|
|
6075
|
+
},
|
|
6076
|
+
"status": {
|
|
6077
|
+
"$ref": "#/definitions/whatsapp-template-status",
|
|
6078
|
+
"description": "(Read-only) Meta review status. Only APPROVED templates can be sent.",
|
|
6079
|
+
"readOnly": true
|
|
6080
|
+
},
|
|
6081
|
+
"variables": {
|
|
6082
|
+
"type": "array",
|
|
6083
|
+
"items": {
|
|
6084
|
+
"type": "string"
|
|
6085
|
+
},
|
|
6086
|
+
"readOnly": true,
|
|
6087
|
+
"description": "(Read-only) Declared variable names/placeholders. A message supplies values keyed by these names via WhatsappOutboundMessage.template.variables."
|
|
6088
|
+
},
|
|
6089
|
+
"preview": {
|
|
6090
|
+
"type": "string",
|
|
6091
|
+
"readOnly": true,
|
|
6092
|
+
"description": "(Read-only) Rendered preview text for display in the dashboard picker."
|
|
6093
|
+
}
|
|
6094
|
+
},
|
|
6095
|
+
"required": [
|
|
6096
|
+
"name",
|
|
6097
|
+
"language",
|
|
6098
|
+
"category",
|
|
6099
|
+
"status",
|
|
6100
|
+
"variables",
|
|
6101
|
+
"preview"
|
|
6102
|
+
],
|
|
6103
|
+
"additionalProperties": false,
|
|
6104
|
+
"description": "WhatsappTemplate \u2014 Meta-approved template synced from the WhatsApp Business API (GH#43). Collection: whatsapp_templates/{docId}. Backend-synced; dashboard reads only.",
|
|
6105
|
+
"example": {
|
|
6106
|
+
"id": null,
|
|
6107
|
+
"name": "Amadou Diallo",
|
|
6108
|
+
"language": "language",
|
|
6109
|
+
"category": "category",
|
|
6110
|
+
"status": "status",
|
|
6111
|
+
"variables": [
|
|
6112
|
+
"example"
|
|
6113
|
+
],
|
|
6114
|
+
"preview": "preview"
|
|
5842
6115
|
}
|
|
5843
6116
|
},
|
|
6117
|
+
"whatsapp-template-status": {
|
|
6118
|
+
"type": "string",
|
|
6119
|
+
"enum": [
|
|
6120
|
+
"APPROVED",
|
|
6121
|
+
"PENDING",
|
|
6122
|
+
"REJECTED",
|
|
6123
|
+
"PAUSED",
|
|
6124
|
+
"DISABLED",
|
|
6125
|
+
"IN_APPEAL"
|
|
6126
|
+
],
|
|
6127
|
+
"description": "Meta review status of a WhatsApp message template, synced from the WhatsApp Business API. Only APPROVED templates can be sent. The fuller Meta status set is used deliberately (vs just APPROVED/PENDING/REJECTED) so this enum has a distinct value signature from PaymentProofStatus in the JSON-Schema $ref matcher (GH#43)."
|
|
6128
|
+
},
|
|
5844
6129
|
"payment-summary": {
|
|
5845
6130
|
"type": "object",
|
|
5846
6131
|
"properties": {
|
package/package.json
CHANGED
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
title: "OutboundMessageKind"
|
|
3
|
-
sidebar_label: "OutboundMessageKind"
|
|
4
|
-
sidebar_position: 11
|
|
5
|
-
---
|
|
6
|
-
|
|
7
|
-
# OutboundMessageKind
|
|
8
|
-
|
|
9
|
-
| | |
|
|
10
|
-
| -------------- | ----------------------------------- |
|
|
11
|
-
| **Type** | `enum (of string)` |
|
|
12
|
-
| **Required** | No |
|
|
13
|
-
| **Defined in** | #/definitions/outbound-message-kind |
|
|
14
|
-
|
|
15
|
-
**Description:** Outbound WhatsApp message kind. Strict enum — new kinds require a schema version bump (GH#38).
|
|
16
|
-
|
|
17
|
-
Must be one of:
|
|
18
|
-
* "otp"
|
|
19
|
-
* "review_request"
|
|
20
|
-
* "adhoc"
|
|
21
|
-
|
|
22
|
-
----------------------------------------------------------------------------------------------------------------------------
|
|
23
|
-
Generated using [json-schema-for-humans](https://github.com/coveooss/json-schema-for-humans) on 2026-05-16 at 00:20:07 +0000
|