From 27596e171bea5dea2edd22681070db82b0da852e Mon Sep 17 00:00:00 2001 From: Masaharu Hattori <112887632+Masa8106@users.noreply.github.com> Date: Mon, 15 Jun 2026 13:01:20 +0100 Subject: [PATCH] Add HowtoUseAPI.md file --- .../SupportingDocuments/HowtoUseAPI.md | 56 +++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 documentation/SupportingDocuments/HowtoUseAPI.md diff --git a/documentation/SupportingDocuments/HowtoUseAPI.md b/documentation/SupportingDocuments/HowtoUseAPI.md new file mode 100644 index 0000000..6c0face --- /dev/null +++ b/documentation/SupportingDocuments/HowtoUseAPI.md @@ -0,0 +1,56 @@ +# How to Use the Number Recycling API + +## Introduction + +This supporting document presents the flow diagram on how to use the Number Recycling API from API consumers perspective. + +## Flow Diagram + + +```mermaid + flowchart TD + A["t0
API Consumer onboards the user and verifies the phone number
(e.g. SMS OTP / Number Verification / equivalent trust step)"] + A2["API Consumer establishes a Trusted Reference Date
(e.g. t0) and MAY store it according to its own policy"] + + B["tn
A sensitive action or hygiene check requires a phone-number trust assessment"] + C["API Consumer calls Number Recycling
with specifiedDate = Trusted Reference Date selected by consumer policy"] + + D{"API response"} + + E["200 OK
phoneNumberRecycled = false"] + F["200 OK
phoneNumberRecycled = true"] + G["400 OUT_OF_RANGE
specifiedDate is not processable for this provider/period"] + H["Other API errors
(e.g. INVALID_ARGUMENT, SERVICE_NOT_APPLICABLE, auth errors)"] + + E1["No recycling detected since specifiedDate"] + E2["API Consumer applies its own policy
(e.g. proceed, or combine with other signals if needed)"] + E3["If the consumer establishes a new trusted point,
it MAY define and/or store a new Trusted Reference Date"] + + F1["Recycling / ownership change detected after specifiedDate"] + F2["Do not assume the same user still controls the number"] + F3["Apply mitigation according to business policy:
block, step-up, re-verify identity, ask for updated phone number"] + F4["If a new or re-confirmed number is verified,
the consumer MAY define and/or store a new Trusted Reference Date"] + + G1["No business conclusion can be drawn from Number Recycling alone"] + G2["Use fallback path according to API consumer's policy:
alternative factor, fresh verification, or re-enrolment flow"] + G3["If trust is re-established,
the consumer MAY define and/or store a new Trusted Reference Date"] + + H1["Handle according to generic API error policy"] + + Z1["Note 1:
This diagram is illustrative consumer guidance,
not normative API semantics"] + Z2["Note 2:
The Trusted Reference Date is not mandatory to store;
it is chosen according to the API consumer's policy"] + Z3["Note 3:
Examples may include original onboarding date,
last successful reverification date, or another trusted timestamp"] + Z4["Note 4:
false means 'no recycling detected since specifiedDate';
it does not by itself prove current possession/control"] + + A --> A2 --> B --> C --> D + D --> E --> E1 --> E2 --> E3 --> B + D --> F --> F1 --> F2 --> F3 --> F4 --> B + D --> G --> G1 --> G2 --> G3 --> B + D --> H --> H1 --> B + + Z1 -.-> D + Z2 -.-> A2 + Z2 -.-> C + Z3 -.-> A2 + Z4 -.-> E1 +``` \ No newline at end of file