core-lightning/doc/schemas/createinvoice.schema.json
Rusty Russell d25a8ca0fd lightningd: expose created_index and updated_index fields.
If you miss a wait event, you can catch up by doing listinvoices and
getting the max of these fields.  It's also a good debugging clue.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2023-07-23 13:48:37 +09:30

84 lines
2.3 KiB
JSON

{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"additionalProperties": false,
"required": [
"label",
"created_index",
"payment_hash",
"status",
"description",
"expires_at"
],
"properties": {
"label": {
"type": "string",
"description": "the label for the invoice"
},
"bolt11": {
"type": "string",
"description": "the bolt11 string (always present unless **bolt12** is)"
},
"bolt12": {
"type": "string",
"description": "the bolt12 string instead of **bolt11** (**experimental-offers** only)"
},
"payment_hash": {
"type": "hash",
"description": "the hash of the *payment_preimage* which will prove payment"
},
"amount_msat": {
"type": "msat",
"description": "The amount of the invoice (if it has one)"
},
"status": {
"type": "string",
"enum": [
"paid",
"expired",
"unpaid"
],
"description": "Whether it has been paid, or can no longer be paid"
},
"description": {
"type": "string",
"description": "Description extracted from **bolt11** or **bolt12**"
},
"expires_at": {
"type": "u64",
"description": "UNIX timestamp of when invoice expires (or expired)"
},
"created_index": {
"type": "u64",
"added": "v23.08",
"description": "1-based index indicating order this invoice was created in"
},
"pay_index": {
"type": "u64",
"description": "Incrementing id for when this was paid (**status** *paid* only)"
},
"amount_received_msat": {
"type": "msat",
"description": "Amount actually received (**status** *paid* only)"
},
"paid_at": {
"type": "u64",
"description": "UNIX timestamp of when invoice was paid (**status** *paid* only)"
},
"payment_preimage": {
"type": "secret",
"description": "the proof of payment: SHA256 of this **payment_hash**"
},
"local_offer_id": {
"type": "hex",
"description": "the *id* of our offer which created this invoice (**experimental-offers** only).",
"maxLength": 64,
"minLength": 64
},
"invreq_payer_note": {
"type": "string",
"description": "the optional *invreq_payer_note* from invoice_request which created this invoice (**experimental-offers** only)."
}
}
}