{"openapi":"3.1.0","info":{"title":"SWIFTarius API","description":"Track SWIFT payments by UETR from your own systems: check a payment, read its status history,\nopen a follow-up case and give a counterparty a read-only status card.\n\n## Authentication\nSend your API key in the `X-API-Key` header. Create a key in the SWIFTarius Telegram bot\n([@swiftarius_bot](https://t.me/swiftarius_bot)) with `/apikey`. The key is shown once.\n\n## Credits\nA check (`POST /v1/track`) costs `check_cost` service credits, see `GET /v1/account`.\nIt is charged only when the check returns an answer: the payment was found (`check_result: found`) or a bank\nreliably reported that it has no such payment yet (`not_found_yet`). When no answer could be obtained\n(`check_failed`), the response is `503` with the check report, `\"error\": \"sources_unavailable\"` and\n`\"charged_credits\": 0`: nothing is charged.\n\n## Idempotency\n`POST /v1/track` and invoice creation require an `Idempotency-Key` header, 8 to 128 characters.\nRepeating a request with the same key returns the original response with `Idempotent-Replayed: true`\nand is never charged twice. This includes a `503` answer: to check the payment again, send the request\nwith a new key. The same key with a different body returns `409 idempotency_conflict`.\n\n## Errors\nErrors are JSON objects: `{\"detail\": \"<code>\"}`. The exception is `503 sources_unavailable` from\n`POST /v1/track`: its body is the check report with the code in `error`.\n\n| Status | Codes |\n|---|---|\n| 401 | `invalid_api_key` |\n| 402 | `insufficient_balance` |\n| 403 | `account_blocked` |\n| 400 | `unknown_pack` |\n| 404 | `payment_not_found`, `share_not_found`, `invoice_not_found` |\n| 409 | `idempotency_conflict`, `request_in_progress` |\n| 429 | `rate_limit`, `daily_limit` (with `Retry-After`) |\n| 503 | `sources_unavailable`, `tracking_failed_balance_restored` |\n\n## Languages\nHuman-readable fields follow `Accept-Language`: `en`, `zh`, `he`, `hi`, `ar`, `ru`.\n\nStatuses are what banks have reported for the UETR. They are not a confirmation that funds were credited.\nSWIFTarius is an independent service and is not affiliated with SWIFT.","termsOfService":"https://swiftarius.com/terms","contact":{"name":"SWIFTarius support","url":"https://swiftarius.com/"},"version":"2.0.0","x-logo":{"url":"https://swiftarius.com/icon-512.png","altText":"SWIFTarius"}},"servers":[{"url":"https://api.swiftarius.com"}],"paths":{"/v1/account":{"get":{"tags":["Account"],"summary":"Account and balance","operationId":"get_account_v1_account_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Account"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"security":[{"ApiKey":[]}]}},"/v1/ledger":{"get":{"tags":["Account"],"summary":"Credit history","description":"Newest first.","operationId":"ledger_v1_ledger_get","security":[{"ApiKey":[]}],"parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"default":100,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/LedgerEntry"},"title":"Response 200 Ledger V1 Ledger Get"}}}},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Forbidden"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Too Many Requests"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/track":{"post":{"tags":["Tracking"],"summary":"Check a payment","description":"Checks the current status of a SWIFT payment by UETR and saves the payment to your register. A check usually takes 10 to 40 seconds. Credits are charged only for an answered check.","operationId":"track_v1_track_post","security":[{"ApiKey":[]}],"parameters":[{"name":"Idempotency-Key","in":"header","required":true,"schema":{"type":"string","minLength":8,"maxLength":128,"description":"Your unique key for this operation, 8 to 128 characters.","title":"Idempotency-Key"},"description":"Your unique key for this operation, 8 to 128 characters."}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TrackInput"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TrackReport"}}}},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Unauthorized"},"402":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Payment Required"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Forbidden"},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Conflict"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Too Many Requests"},"503":{"description":"No answer could be obtained: the check report with error sources_unavailable and charged_credits 0. Nothing is charged. A repeat with the same Idempotency-Key returns this answer again; to check again, use a new key. An internal failure returns {\"detail\": \"tracking_failed_balance_restored\"}.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TrackReport"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/payments":{"get":{"tags":["Payments"],"summary":"List payments","description":"Newest first.","operationId":"list_payments_v1_payments_get","security":[{"ApiKey":[]}],"parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":1000,"minimum":1,"default":100,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Payment"},"title":"Response 200 List Payments V1 Payments Get"}}}},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Forbidden"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Too Many Requests"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/payments/{uetr}":{"get":{"tags":["Payments"],"summary":"Payment with status history","operationId":"get_payment_v1_payments__uetr__get","security":[{"ApiKey":[]}],"parameters":[{"name":"uetr","in":"path","required":true,"schema":{"type":"string","format":"uuid4","title":"Uetr"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PaymentDetail"}}}},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Not Found"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Too Many Requests"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/export":{"get":{"tags":["Payments"],"summary":"Export payments to Excel","description":"Up to 1,000 payments with statuses, as an .xlsx file.","operationId":"export_v1_export_get","responses":{"200":{"description":"Excel workbook.","content":{"application/json":{"schema":{}},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":{}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"security":[{"ApiKey":[]}]}},"/v1/corridors":{"get":{"tags":["Payments"],"summary":"Delivery times by destination","description":"How long your own payments took, grouped by destination.","operationId":"get_corridors_v1_corridors_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/Corridor"},"type":"array","title":"Response 200 Get Corridors V1 Corridors Get"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"security":[{"ApiKey":[]}]}},"/v1/payments/{uetr}/passport":{"get":{"tags":["Payments"],"summary":"Payment passport","description":"Everything known about the payment in one document, what remains unknown, and a ready status request to send to your bank.","operationId":"passport_v1_payments__uetr__passport_get","security":[{"ApiKey":[]}],"parameters":[{"name":"uetr","in":"path","required":true,"schema":{"type":"string","format":"uuid4","title":"Uetr"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Passport"}}}},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Not Found"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Too Many Requests"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/payments/{uetr}/case":{"put":{"tags":["Cases"],"summary":"Open or update a case","operationId":"set_case_v1_payments__uetr__case_put","security":[{"ApiKey":[]}],"parameters":[{"name":"uetr","in":"path","required":true,"schema":{"type":"string","format":"uuid4","title":"Uetr"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CaseInput"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Case"}}}},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Not Found"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Too Many Requests"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/cases":{"get":{"tags":["Cases"],"summary":"List cases","description":"Overdue first, closed last.","operationId":"list_cases_v1_cases_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/Case"},"type":"array","title":"Response 200 List Cases V1 Cases Get"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"security":[{"ApiKey":[]}]}},"/v1/payments/{uetr}/shares":{"post":{"tags":["Sharing"],"summary":"Create a status card link","description":"A read-only page for your counterparty in their language. It shows the status, never amounts or your account.","operationId":"share_v1_payments__uetr__shares_post","security":[{"ApiKey":[]}],"parameters":[{"name":"uetr","in":"path","required":true,"schema":{"type":"string","format":"uuid4","title":"Uetr"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ShareInput"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Share"}}}},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Not Found"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Too Many Requests"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/shares/{token}":{"delete":{"tags":["Sharing"],"summary":"Revoke a status card link","operationId":"revoke_share_v1_shares__token__delete","security":[{"ApiKey":[]}],"parameters":[{"name":"token","in":"path","required":true,"schema":{"type":"string","maxLength":128,"title":"Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Revoked"}}}},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Not Found"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Too Many Requests"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}},"components":{"schemas":{"Account":{"properties":{"client_code":{"type":"string","title":"Client Code","description":"Your client code. Quote it when you contact support.","examples":["SW-7Q4K-M2XA"]},"balance":{"type":"integer","title":"Balance","description":"Service credits available."},"unit":{"type":"string","const":"service_credits","title":"Unit"},"check_cost":{"type":"integer","title":"Check Cost","description":"Credits charged for one answered check."},"subscription_until":{"type":"number","title":"Subscription Until","description":"End of the Telegram subscription, Unix time; 0 if none."},"lang":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Lang","description":"Account language, used when the request has no Accept-Language."},"languages":{"items":{"type":"string"},"type":"array","title":"Languages","examples":[["ar","en","he","hi","ru","zh"]]}},"additionalProperties":true,"type":"object","required":["client_code","balance","unit","check_cost","subscription_until","lang","languages"],"title":"Account"},"Case":{"properties":{"uetr":{"type":"string","title":"Uetr"},"owner":{"type":"string","title":"Owner"},"status":{"type":"string","enum":["open","waiting_bank","waiting_documents","waiting_recipient","closed"],"title":"Status"},"next_action_at":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Next Action At","description":"Unix time."},"reference":{"type":"string","title":"Reference","description":"Your or the bank's case reference."},"note":{"type":"string","title":"Note"},"closed_reason":{"type":"string","title":"Closed Reason"},"created_at":{"type":"number","title":"Created At"},"updated_at":{"type":"number","title":"Updated At"},"overdue":{"type":"boolean","title":"Overdue"}},"additionalProperties":true,"type":"object","required":["uetr","owner","status","next_action_at","reference","note","closed_reason","created_at","updated_at","overdue"],"title":"Case"},"CaseInput":{"properties":{"owner":{"type":"string","maxLength":120,"title":"Owner","description":"Who handles the case.","default":""},"status":{"type":"string","enum":["open","waiting_bank","waiting_documents","waiting_recipient","closed"],"title":"Status","default":"open"},"next_action_at":{"anyOf":[{"type":"number","minimum":0.0},{"type":"null"}],"title":"Next Action At","description":"Next follow-up, Unix time."},"reference":{"type":"string","maxLength":160,"title":"Reference","description":"Your or the bank's case reference.","default":""},"note":{"type":"string","maxLength":4000,"title":"Note","default":""},"closed_reason":{"type":"string","maxLength":1000,"title":"Closed Reason","description":"Required when status is closed.","default":""}},"type":"object","title":"CaseInput"},"CheckResult":{"properties":{"source":{"type":"string","title":"Source","description":"Reporting channel."},"outcome":{"type":"string","enum":["found","not_found","error","skipped"],"title":"Outcome"},"events":{"items":{"$ref":"#/components/schemas/Event"},"type":"array","title":"Events"}},"additionalProperties":true,"type":"object","required":["source","outcome","events"],"title":"CheckResult"},"Corridor":{"properties":{"key":{"type":"string","title":"Key"},"label":{"type":"string","title":"Label","description":"Destination of the payments in this group."},"n":{"type":"integer","title":"N","description":"Payments found."},"completed":{"type":"integer","title":"Completed"},"rejected":{"type":"integer","title":"Rejected"},"in_flight":{"type":"integer","title":"In Flight"},"stuck":{"type":"integer","title":"Stuck","description":"Payments without a status change for too long."},"timed":{"type":"integer","title":"Timed","description":"Payments with a known duration."},"p50_s":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"P50 S","description":"Median duration, seconds."},"p90_s":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"P90 S"},"min_s":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Min S"},"max_s":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Max S"}},"additionalProperties":true,"type":"object","required":["key","label","n","completed","rejected","in_flight","stuck","timed","p50_s","p90_s","min_s","max_s"],"title":"Corridor"},"Error":{"properties":{"detail":{"type":"string","title":"Detail","description":"Machine-readable error code.","examples":["invalid_api_key"]}},"type":"object","required":["detail"],"title":"Error"},"Event":{"properties":{"source":{"type":"string","title":"Source","description":"Reporting channel."},"status_raw":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status Raw"},"gpi_code":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Gpi Code","description":"ISO 20022 status code (ACCC, ACSC, ACSP, ACTC, ACWC, ACWP, PDNG, RJCT, CANC). Null when the bank's status has no ISO code; the status text is in status_raw.","examples":["ACSP"]},"reason_code":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Reason Code","examples":["G000"]},"reporting_bank":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Reporting Bank","description":"BIC of the reporting bank, only when the bank's reply names it."},"bank_time":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Bank Time","description":"Time reported by the bank, ISO 8601."},"amount":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Amount"},"currency":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Currency"},"first_seen_at":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"First Seen At","description":"When SWIFTarius first saw the event, Unix time."}},"additionalProperties":true,"type":"object","required":["source"],"title":"Event"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"LedgerEntry":{"properties":{"amount":{"type":"integer","title":"Amount","description":"Positive for top-ups and returned reservations, negative for reservations."},"kind":{"type":"string","title":"Kind","description":"reserve, charge, release, credit or external_credit.","examples":["reserve"]},"reference":{"type":"string","title":"Reference","description":"Unique reference of the operation."},"balance_after":{"type":"integer","title":"Balance After"},"created_at":{"type":"number","title":"Created At","description":"Unix time."}},"additionalProperties":true,"type":"object","required":["amount","kind","reference","balance_after","created_at"],"title":"LedgerEntry"},"Passport":{"properties":{"uetr":{"type":"string","title":"Uetr"},"status_code":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status Code"},"status_human":{"type":"string","title":"Status Human"},"state":{"anyOf":[{"type":"string","enum":["credited","in_progress","in_progress_untracked","pending","rejected","returning","cancelled","status_unknown","not_found_yet","check_failed"]},{"type":"null"}],"title":"State","description":"Payment state from all bank reports: credited (the beneficiary bank confirmed the credit); in_progress; in_progress_untracked (in progress, onward tracking unavailable); pending (held for processing at one of the banks); rejected (a return is not confirmed by this status); returning (funds are being returned to the sender); cancelled; status_unknown (a bank reported the payment with a status that is not recognised); not_found_yet (no bank reports this UETR yet; this does not mean the payment does not exist); check_failed (no reliable answer was obtained)."},"user_reported":{"additionalProperties":true,"type":"object","title":"User Reported","description":"Details you provided: amount, currency, value date."},"tracker_metadata":{"additionalProperties":true,"type":"object","title":"Tracker Metadata","description":"Details reported by a bank."},"unverified_metadata":{"additionalProperties":true,"type":"object","title":"Unverified Metadata"},"chronology":{"items":{"additionalProperties":true,"type":"object"},"type":"array","title":"Chronology","description":"Bank reports and checks in time order."},"unknowns":{"items":{"type":"string"},"type":"array","title":"Unknowns","description":"What the reports do not establish."},"markdown":{"type":"string","title":"Markdown","description":"The whole passport as Markdown."},"letters":{"additionalProperties":{"type":"string"},"type":"object","title":"Letters","description":"Ready status request to the bank: in the language of the request and in English."},"letters_en":{"type":"string","title":"Letters En"},"disclaimer":{"type":"string","title":"Disclaimer"},"lang":{"type":"string","title":"Lang"}},"additionalProperties":true,"type":"object","required":["uetr","status_code","status_human","user_reported","tracker_metadata","unverified_metadata","chronology","unknowns","markdown","letters","letters_en","disclaimer","lang"],"title":"Passport"},"Payment":{"properties":{"uetr":{"type":"string","title":"Uetr","examples":["cf935c67-a3ac-4d58-b2fc-bf2267a14ecd"]},"amount":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Amount"},"currency":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Currency"},"value_date":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Value Date"},"created_at":{"type":"number","title":"Created At","description":"Unix time."},"last_checked_at":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Last Checked At"},"summary":{"$ref":"#/components/schemas/Summary"}},"additionalProperties":true,"type":"object","required":["uetr","created_at","summary"],"title":"Payment"},"PaymentDetail":{"properties":{"payment":{"$ref":"#/components/schemas/Payment"},"events":{"items":{"$ref":"#/components/schemas/Event"},"type":"array","title":"Events"}},"additionalProperties":true,"type":"object","required":["payment","events"],"title":"PaymentDetail"},"Revoked":{"properties":{"revoked":{"type":"boolean","const":true,"title":"Revoked"}},"type":"object","required":["revoked"],"title":"Revoked"},"Share":{"properties":{"token":{"type":"string","title":"Token","description":"Needed to revoke the link."},"expires_at":{"type":"number","title":"Expires At","description":"Unix time."},"url":{"type":"string","title":"Url","description":"Status card for your counterparty. Opens without login and shows no amounts."}},"additionalProperties":true,"type":"object","required":["token","expires_at","url"],"title":"Share"},"ShareInput":{"properties":{"ttl_seconds":{"type":"integer","maximum":2592000.0,"minimum":60.0,"title":"Ttl Seconds","description":"Link lifetime: 60 seconds to 30 days.","default":86400}},"type":"object","title":"ShareInput"},"Summary":{"properties":{"status_code":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status Code","description":"ISO 20022 status reported by a bank: ACCC, ACSC, ACSP, ACTC, ACWC, ACWP, PDNG, RJCT, CANC. Null if not found or if no bank reported a code.","examples":["ACSP"]},"state":{"type":"string","enum":["credited","in_progress","in_progress_untracked","pending","rejected","returning","cancelled","status_unknown","not_found_yet","check_failed"],"title":"State","description":"Payment state from all bank reports: credited (the beneficiary bank confirmed the credit); in_progress; in_progress_untracked (in progress, onward tracking unavailable); pending (held for processing at one of the banks); rejected (a return is not confirmed by this status); returning (funds are being returned to the sender); cancelled; status_unknown (a bank reported the payment with a status that is not recognised); not_found_yet (no bank reports this UETR yet; this does not mean the payment does not exist); check_failed (no reliable answer was obtained).","examples":["in_progress"]},"check_result":{"type":"string","enum":["found","not_found_yet","check_failed"],"title":"Check Result","description":"Result of the latest check: found, not_found_yet or check_failed. Only found and not_found_yet are charged.","examples":["found"]},"status_human":{"type":"string","title":"Status Human","description":"Status in plain words, in the language of the request.","examples":["in transit: accepted for processing"]},"status_raw":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status Raw","description":"Status text as reported by the bank."},"last_bank":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Last Bank","description":"BIC of the bank that reported the latest status, only when the bank's reply names it; usually null. Deprecated.","deprecated":true},"last_bank_time":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Last Bank Time","description":"Time of the latest status, ISO 8601."},"initiated_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Initiated At","description":"When the payment was initiated, ISO 8601, when known."},"last_move_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Last Move At","description":"Latest change of status, ISO 8601."},"duration_s":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Duration S","description":"Seconds from initiation to the final status, or until now."},"stale_s":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Stale S","description":"Seconds without a status change while not final."},"final":{"type":"boolean","title":"Final","description":"True when the status will not change: credited, rejected, returning or cancelled."},"events_total":{"type":"integer","title":"Events Total"}},"additionalProperties":true,"type":"object","required":["status_code","state","check_result","status_human","final","events_total"],"title":"Summary"},"TrackInput":{"properties":{"uetr":{"type":"string","format":"uuid4","title":"Uetr","description":"Unique end-to-end transaction reference: MT103 field 121 or pacs.008 PmtId/UETR.","examples":["cf935c67-a3ac-4d58-b2fc-bf2267a14ecd"]},"amount":{"anyOf":[{"type":"number","exclusiveMinimum":0.0},{"type":"string","pattern":"^(?!^[-+.]*$)[+-]?0*(?:\\d{0,14}|(?=[\\d.]{1,21}0*$)\\d{0,14}\\.\\d{0,6}0*$)"},{"type":"null"}],"title":"Amount","description":"Payment amount. Optional; amount and value date help locate the payment.","examples":["12500.00"]},"currency":{"anyOf":[{"type":"string","pattern":"^[A-Z]{3}$"},{"type":"null"}],"title":"Currency","description":"ISO 4217 code.","examples":["USD"]},"value_date":{"anyOf":[{"type":"string","format":"date"},{"type":"null"}],"title":"Value Date","description":"Value date or payment date.","examples":["2026-10-27"]}},"type":"object","required":["uetr"],"title":"TrackInput"},"TrackReport":{"properties":{"uetr":{"type":"string","title":"Uetr","examples":["cf935c67-a3ac-4d58-b2fc-bf2267a14ecd"]},"summary":{"$ref":"#/components/schemas/Summary"},"elapsed_s":{"type":"number","title":"Elapsed S"},"results":{"items":{"$ref":"#/components/schemas/CheckResult"},"type":"array","title":"Results"},"new_events":{"items":{"$ref":"#/components/schemas/Event"},"type":"array","title":"New Events","description":"Events not seen in earlier checks of this payment."},"charged_credits":{"type":"integer","title":"Charged Credits"},"error":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Error","description":"sources_unavailable when no answer was obtained (check_failed)."}},"additionalProperties":true,"type":"object","required":["uetr","summary","elapsed_s","results","new_events","charged_credits"],"title":"TrackReport"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}},"securitySchemes":{"ApiKey":{"type":"apiKey","description":"API key from the SWIFTarius Telegram bot (/apikey).","in":"header","name":"X-API-Key"}}},"tags":[{"name":"Account","description":"Balance, price of a check and credit history."},{"name":"Tracking","description":"Check a payment by UETR."},{"name":"Payments","description":"Your payment register: statuses, history, passport and export."},{"name":"Cases","description":"Follow-up work on a payment: owner, bank reference, next action."},{"name":"Sharing","description":"Read-only status cards for counterparties."}],"externalDocs":{"description":"SWIFTarius API documentation on swiftarius.com.","url":"https://swiftarius.com/docs/api"}}