{
  "openapi": "3.0.4",
  "info": {
    "title": "DebusPay API v1",
    "version": "v1"
  },
  "paths": {
    "/api/v1/app/update": {
      "get": {
        "tags": [
          "App"
        ],
        "parameters": [
          {
            "name": "platform",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "version",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/AppUpdateDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AppUpdateDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/AppUpdateDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/billservice/active": {
      "get": {
        "tags": [
          "BillService"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/BillServiceDto"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/BillServiceDto"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/BillServiceDto"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/billservice/home-active": {
      "get": {
        "tags": [
          "BillService"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/BillServiceDto"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/BillServiceDto"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/BillServiceDto"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/busai/threads": {
      "get": {
        "tags": [
          "BusAI"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/busai/threads/{threadId}/messages": {
      "get": {
        "tags": [
          "BusAI"
        ],
        "parameters": [
          {
            "name": "threadId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/busai/settings/apikey": {
      "post": {
        "tags": [
          "BusAI"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "string"
              }
            },
            "text/json": {
              "schema": {
                "type": "string"
              }
            },
            "application/*+json": {
              "schema": {
                "type": "string"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/busai/chat/stream": {
      "post": {
        "tags": [
          "BusAI"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SendChatMessageRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SendChatMessageRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SendChatMessageRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/busai/upload": {
      "post": {
        "tags": [
          "BusAI"
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "file": {
                    "type": "string",
                    "format": "binary"
                  }
                }
              },
              "encoding": {
                "file": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/busai/suggestions": {
      "get": {
        "tags": [
          "BusAI"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/busai/addsuggestion": {
      "post": {
        "tags": [
          "BusAI"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "string"
              }
            },
            "text/json": {
              "schema": {
                "type": "string"
              }
            },
            "application/*+json": {
              "schema": {
                "type": "string"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/busai/removesuggestion": {
      "delete": {
        "tags": [
          "BusAI"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "string"
              }
            },
            "text/json": {
              "schema": {
                "type": "string"
              }
            },
            "application/*+json": {
              "schema": {
                "type": "string"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/busai/topics": {
      "get": {
        "tags": [
          "BusAI"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/busai/welcome-config": {
      "get": {
        "tags": [
          "BusAI"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/chat": {
      "post": {
        "tags": [
          "Chat"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Chat"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Chat"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Chat"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Chat"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Chat"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Chat"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      },
      "get": {
        "tags": [
          "Chat"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Chat"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Chat"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Chat"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/chat/{id}": {
      "delete": {
        "tags": [
          "Chat"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "Chat"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Chat"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Chat"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Chat"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "No Content"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      },
      "get": {
        "tags": [
          "Chat"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Chat"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Chat"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Chat"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/coralpay/biller-groups": {
      "get": {
        "tags": [
          "CoralPay"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/coralpay/billers/group/{groupId}": {
      "get": {
        "tags": [
          "CoralPay"
        ],
        "parameters": [
          {
            "name": "groupId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/coralpay/packages/biller/{billerId}": {
      "get": {
        "tags": [
          "CoralPay"
        ],
        "parameters": [
          {
            "name": "billerId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/coralpay/customer-lookup": {
      "post": {
        "tags": [
          "CoralPay"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CustomerLookupRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CustomerLookupRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CustomerLookupRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/coralpay/transactions/{reference}": {
      "get": {
        "tags": [
          "CoralPay"
        ],
        "parameters": [
          {
            "name": "reference",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "isTransactionId",
            "in": "query",
            "schema": {
              "type": "boolean",
              "default": false
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/coralpay/pay": {
      "post": {
        "tags": [
          "CoralPay"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/InitiateCoralPayPaymentCommand"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/InitiateCoralPayPaymentCommand"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/InitiateCoralPayPaymentCommand"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/crypto": {
      "post": {
        "tags": [
          "Crypto"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Crypto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Crypto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Crypto"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Crypto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Crypto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Crypto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      },
      "get": {
        "tags": [
          "Crypto"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Crypto"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Crypto"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Crypto"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/crypto/{id}": {
      "delete": {
        "tags": [
          "Crypto"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "Crypto"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Crypto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Crypto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Crypto"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "No Content"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      },
      "get": {
        "tags": [
          "Crypto"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Crypto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Crypto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Crypto"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/currency": {
      "post": {
        "tags": [
          "Currency"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Currency"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Currency"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Currency"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Currency"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Currency"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Currency"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      },
      "get": {
        "tags": [
          "Currency"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Currency"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Currency"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Currency"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/currency/{id}": {
      "delete": {
        "tags": [
          "Currency"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "Currency"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Currency"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Currency"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Currency"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "No Content"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      },
      "get": {
        "tags": [
          "Currency"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Currency"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Currency"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Currency"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/dashboard/get-dashboard/{userId}": {
      "get": {
        "tags": [
          "Dashboard"
        ],
        "parameters": [
          {
            "name": "userId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/DashboardDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DashboardDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/DashboardDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/dashboardbanner": {
      "post": {
        "tags": [
          "DashboardBanner"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/DashboardBanner"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/DashboardBanner"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/DashboardBanner"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/DashboardBanner"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DashboardBanner"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/DashboardBanner"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      },
      "get": {
        "tags": [
          "DashboardBanner"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/DashboardBanner"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/DashboardBanner"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/DashboardBanner"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/dashboardbanner/{id}": {
      "delete": {
        "tags": [
          "DashboardBanner"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "DashboardBanner"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/DashboardBanner"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/DashboardBanner"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/DashboardBanner"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "No Content"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      },
      "get": {
        "tags": [
          "DashboardBanner"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/DashboardBanner"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DashboardBanner"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/DashboardBanner"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/flutterwave/virtual-account": {
      "post": {
        "tags": [
          "Flutterwave"
        ],
        "parameters": [
          {
            "name": "userId",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "bvn",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/CreateVirtualAccountResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateVirtualAccountResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateVirtualAccountResult"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/flutterwave/transfer": {
      "post": {
        "tags": [
          "Flutterwave"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/InitiateTransferCommand"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/InitiateTransferCommand"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/InitiateTransferCommand"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": { }
              },
              "application/json": {
                "schema": { }
              },
              "text/json": {
                "schema": { }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/flutterwave/transfers/{transferId}": {
      "get": {
        "tags": [
          "Flutterwave"
        ],
        "parameters": [
          {
            "name": "transferId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/flutterwave/banks/{country}": {
      "get": {
        "tags": [
          "Flutterwave"
        ],
        "parameters": [
          {
            "name": "country",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": { }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": { }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": { }
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/flutterwave/resolve-account": {
      "post": {
        "tags": [
          "Flutterwave"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ResolveAccountRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/ResolveAccountRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/ResolveAccountRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": { }
              },
              "application/json": {
                "schema": { }
              },
              "text/json": {
                "schema": { }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/flutterwave/debus-transfer": {
      "post": {
        "tags": [
          "Flutterwave"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/InitiateWithdrawalRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/InitiateWithdrawalRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/InitiateWithdrawalRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": { }
              },
              "application/json": {
                "schema": { }
              },
              "text/json": {
                "schema": { }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/flutterwave/webhook": {
      "post": {
        "tags": [
          "FlutterwaveWebhook"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/graph/virtual-account": {
      "post": {
        "tags": [
          "Graph"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateVirtualAccountRequestDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateVirtualAccountRequestDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateVirtualAccountRequestDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/CreateGraphVirtualAccountResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateGraphVirtualAccountResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateGraphVirtualAccountResult"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/graph/card": {
      "post": {
        "tags": [
          "Graph"
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "UserId": {
                    "type": "string"
                  },
                  "Currency": {
                    "type": "string"
                  },
                  "Country": {
                    "type": "string"
                  },
                  "CardType": {
                    "type": "string"
                  },
                  "CardName": {
                    "type": "string"
                  },
                  "CardCreationFee": {
                    "type": "number",
                    "format": "double"
                  },
                  "SpendingLimit": {
                    "type": "number",
                    "format": "double"
                  },
                  "IdentityCard": {
                    "type": "string",
                    "format": "binary"
                  }
                }
              },
              "encoding": {
                "UserId": {
                  "style": "form"
                },
                "Currency": {
                  "style": "form"
                },
                "Country": {
                  "style": "form"
                },
                "CardType": {
                  "style": "form"
                },
                "CardName": {
                  "style": "form"
                },
                "CardCreationFee": {
                  "style": "form"
                },
                "SpendingLimit": {
                  "style": "form"
                },
                "IdentityCard": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/CreateGraphCardResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateGraphCardResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateGraphCardResult"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/graph/virtual-accounts/{userId}": {
      "get": {
        "tags": [
          "Graph"
        ],
        "parameters": [
          {
            "name": "userId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/graph/cards/{userId}": {
      "get": {
        "tags": [
          "Graph"
        ],
        "parameters": [
          {
            "name": "userId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/graph/rates": {
      "get": {
        "tags": [
          "Graph"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/GraphRatesResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GraphRatesResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/GraphRatesResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/graph/conversions": {
      "post": {
        "tags": [
          "Graph"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateGraphConversionRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateGraphConversionRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateGraphConversionRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/CreateGraphConversionDataGraphStandardResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateGraphConversionDataGraphStandardResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateGraphConversionDataGraphStandardResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/graph/conversions/{id}": {
      "get": {
        "tags": [
          "Graph"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/GraphConversionGraphStandardResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GraphConversionGraphStandardResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/GraphConversionGraphStandardResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/graph/payouts": {
      "post": {
        "tags": [
          "Graph"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateGraphPayoutRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateGraphPayoutRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateGraphPayoutRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/CreateGraphPayoutDataGraphStandardResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateGraphPayoutDataGraphStandardResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateGraphPayoutDataGraphStandardResponse"
                }
              }
            }
          }
        }
      },
      "get": {
        "tags": [
          "Graph"
        ],
        "parameters": [
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 1
            }
          },
          {
            "name": "perPage",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 20
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/GraphPayoutListGraphStandardResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GraphPayoutListGraphStandardResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/GraphPayoutListGraphStandardResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/graph/payouts/{id}": {
      "get": {
        "tags": [
          "Graph"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/GraphPayoutGraphStandardResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GraphPayoutGraphStandardResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/GraphPayoutGraphStandardResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/graph/webhook": {
      "post": {
        "tags": [
          "GraphWebhook"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/identity/ping": {
      "get": {
        "tags": [
          "Identity"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string"
                }
              },
              "text/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/identity/create-password": {
      "post": {
        "tags": [
          "Identity"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreatePasswordModel"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreatePasswordModel"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreatePasswordModel"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/identity/resendcode": {
      "post": {
        "tags": [
          "Identity"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ResendCodeModel"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/ResendCodeModel"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/ResendCodeModel"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/identity/login": {
      "post": {
        "tags": [
          "Identity"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/LoginModel"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/LoginModel"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/LoginModel"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/identity/refresh-token": {
      "post": {
        "tags": [
          "Identity"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RefreshTokenCommand"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/RefreshTokenCommand"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/RefreshTokenCommand"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/LoginResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LoginResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/LoginResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/LoginResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LoginResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/LoginResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/identity/register": {
      "post": {
        "tags": [
          "Identity"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RegisterModel"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/RegisterModel"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/RegisterModel"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/RegisterResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RegisterResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/RegisterResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/identity/verify-registration": {
      "post": {
        "tags": [
          "Identity"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/VerifyRegistrationModel"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/VerifyRegistrationModel"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/VerifyRegistrationModel"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/LoginResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LoginResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/LoginResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/identity/send-reset-password": {
      "post": {
        "tags": [
          "Identity"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ResetPasswordModel"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/ResetPasswordModel"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/ResetPasswordModel"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ResetPasswordResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ResetPasswordResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ResetPasswordResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/identity/token-login": {
      "post": {
        "tags": [
          "Identity"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/TokenLoginCommand"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/TokenLoginCommand"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/TokenLoginCommand"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/LoginResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LoginResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/LoginResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/identity/social-login": {
      "post": {
        "tags": [
          "Identity"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SocialLoginCommand"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SocialLoginCommand"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SocialLoginCommand"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/LoginResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LoginResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/LoginResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/identity/pin-login": {
      "post": {
        "tags": [
          "Identity"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/LoginWithPinCommand"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/LoginWithPinCommand"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/LoginWithPinCommand"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/LoginResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LoginResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/LoginResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/identity/register-device": {
      "post": {
        "tags": [
          "Identity"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RegisterNotificationCommand"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/RegisterNotificationCommand"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/RegisterNotificationCommand"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/identity/token-biometric-login": {
      "post": {
        "tags": [
          "Identity"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/TokenLoginBiometricCommand"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/TokenLoginBiometricCommand"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/TokenLoginBiometricCommand"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/LoginResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LoginResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/LoginResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/identity/update-user/{userId}": {
      "put": {
        "tags": [
          "Identity"
        ],
        "parameters": [
          {
            "name": "userId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateUserDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateUserDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateUserDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/identity/update-profile-image/{userId}": {
      "put": {
        "tags": [
          "Identity"
        ],
        "parameters": [
          {
            "name": "userId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "required": [
                  "ProfileImage"
                ],
                "type": "object",
                "properties": {
                  "ProfileImage": {
                    "type": "string",
                    "format": "binary"
                  }
                }
              },
              "encoding": {
                "ProfileImage": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/UploadResponseDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UploadResponseDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/UploadResponseDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/UploadResponseDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UploadResponseDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/UploadResponseDto"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/identity/upgrade-tier1/{userId}": {
      "put": {
        "tags": [
          "Identity"
        ],
        "parameters": [
          {
            "name": "userId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpgradeTier1Model"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpgradeTier1Model"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpgradeTier1Model"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/identity/upgrade-tier2/{userId}": {
      "put": {
        "tags": [
          "Identity"
        ],
        "parameters": [
          {
            "name": "userId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "required": [
                  "IdentityCard"
                ],
                "type": "object",
                "properties": {
                  "IdentityCard": {
                    "type": "string",
                    "format": "binary"
                  }
                }
              },
              "encoding": {
                "IdentityCard": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/identity/upgrade-tier3/{userId}": {
      "put": {
        "tags": [
          "Identity"
        ],
        "parameters": [
          {
            "name": "userId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "required": [
                  "SourceOfWealthDocument"
                ],
                "type": "object",
                "properties": {
                  "SourceOfWealthDocument": {
                    "type": "string",
                    "format": "binary"
                  }
                }
              },
              "encoding": {
                "SourceOfWealthDocument": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/identity/update-notificationid/{userId}": {
      "put": {
        "tags": [
          "Identity"
        ],
        "parameters": [
          {
            "name": "userId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateNotificationRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateNotificationRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateNotificationRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/identity/reset-password": {
      "post": {
        "tags": [
          "Identity"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ResetPasswordCommand"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/ResetPasswordCommand"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/ResetPasswordCommand"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/identity/verify-user": {
      "post": {
        "tags": [
          "Identity"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/VerifyUserCommand"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/VerifyUserCommand"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/VerifyUserCommand"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/identity/checkuser-verification": {
      "post": {
        "tags": [
          "Identity"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CheckUserVerificationCommand"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CheckUserVerificationCommand"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CheckUserVerificationCommand"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/identity/verify-reset-password-code": {
      "post": {
        "tags": [
          "Identity"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/VerifyResetPasswordCodeCommand"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/VerifyResetPasswordCodeCommand"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/VerifyResetPasswordCodeCommand"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/identity/all-users": {
      "get": {
        "tags": [
          "Identity"
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/identity/user-basic/{userId}": {
      "get": {
        "tags": [
          "Identity"
        ],
        "parameters": [
          {
            "name": "userId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BasicUserDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BasicUserDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BasicUserDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/identity/user/{userId}": {
      "get": {
        "tags": [
          "Identity"
        ],
        "parameters": [
          {
            "name": "userId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/UserDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UserDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/UserDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/identity/create-pin": {
      "post": {
        "tags": [
          "Identity"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SetPinCommand"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SetPinCommand"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SetPinCommand"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/identity/verify-pin": {
      "post": {
        "tags": [
          "Identity"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/VerifyPinCommand"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/VerifyPinCommand"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/VerifyPinCommand"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/identity/reset-pin": {
      "post": {
        "tags": [
          "Identity"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ResetPinCommand"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/ResetPinCommand"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/ResetPinCommand"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/identity/has-pin/{userId}": {
      "get": {
        "tags": [
          "Identity"
        ],
        "parameters": [
          {
            "name": "userId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/HasPinResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HasPinResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/HasPinResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/identity/reset-with-otp": {
      "post": {
        "tags": [
          "Identity"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ResetPinWithOtpCommand"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/ResetPinWithOtpCommand"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/ResetPinWithOtpCommand"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/identity/change-password": {
      "post": {
        "tags": [
          "Identity"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ChangePasswordCommand"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/ChangePasswordCommand"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/ChangePasswordCommand"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/identity/delete-account/{userId}": {
      "delete": {
        "tags": [
          "Identity"
        ],
        "parameters": [
          {
            "name": "userId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/DeleteAccountRequestDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/DeleteAccountRequestDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/DeleteAccountRequestDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/mobile-network-prefix": {
      "get": {
        "tags": [
          "MobileNetworkPrefix"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "post": {
        "tags": [
          "MobileNetworkPrefix"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/MobileNetworkPrefix"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/MobileNetworkPrefix"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/MobileNetworkPrefix"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/mobile-network-prefix/{id}": {
      "get": {
        "tags": [
          "MobileNetworkPrefix"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "put": {
        "tags": [
          "MobileNetworkPrefix"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/MobileNetworkPrefix"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/MobileNetworkPrefix"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/MobileNetworkPrefix"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "delete": {
        "tags": [
          "MobileNetworkPrefix"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/mobile-network-prefix/detect": {
      "get": {
        "tags": [
          "MobileNetworkPrefix"
        ],
        "parameters": [
          {
            "name": "phoneNumber",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/notification": {
      "post": {
        "tags": [
          "Notification"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Notification"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Notification"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Notification"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Notification"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Notification"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Notification"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          }
        }
      },
      "get": {
        "tags": [
          "Notification"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Notification"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Notification"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Notification"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/notification/{id}": {
      "delete": {
        "tags": [
          "Notification"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "Notification"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Notification"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Notification"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Notification"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "No Content"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          }
        }
      },
      "get": {
        "tags": [
          "Notification"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Notification"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Notification"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Notification"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/notification/send": {
      "post": {
        "tags": [
          "Notification"
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "Title": {
                    "type": "string"
                  },
                  "Message": {
                    "type": "string"
                  },
                  "UserId": {
                    "type": "string",
                    "format": "uuid"
                  },
                  "UserIds": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "format": "uuid"
                    }
                  },
                  "ForAll": {
                    "type": "boolean"
                  },
                  "Segments": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    }
                  },
                  "PageRoute": {
                    "type": "string"
                  },
                  "ReferenceId": {
                    "type": "string"
                  },
                  "ImageFile": {
                    "type": "string",
                    "format": "binary"
                  }
                }
              },
              "encoding": {
                "Title": {
                  "style": "form"
                },
                "Message": {
                  "style": "form"
                },
                "UserId": {
                  "style": "form"
                },
                "UserIds": {
                  "style": "form"
                },
                "ForAll": {
                  "style": "form"
                },
                "Segments": {
                  "style": "form"
                },
                "PageRoute": {
                  "style": "form"
                },
                "ReferenceId": {
                  "style": "form"
                },
                "ImageFile": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/SendNotificationResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SendNotificationResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/SendNotificationResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/notification/me": {
      "get": {
        "tags": [
          "Notification"
        ],
        "parameters": [
          {
            "name": "userId",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 1
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 20
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/NotificationResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotificationResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotificationResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/notification/{notificationId}/read": {
      "patch": {
        "tags": [
          "Notification"
        ],
        "parameters": [
          {
            "name": "userId",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "notificationId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          }
        }
      }
    },
    "/api/v1/nowpayment/np-api-status": {
      "get": {
        "tags": [
          "NowPayment"
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      }
    },
    "/api/v1/nowpayment/np-coins": {
      "post": {
        "tags": [
          "NowPayment"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/nowpayment/np-create-payment": {
      "post": {
        "tags": [
          "NowPayment"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NowPaymentRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/NowPaymentRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/NowPaymentRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/nowpayment/np-payment-status/{paymentId}": {
      "get": {
        "tags": [
          "NowPayment"
        ],
        "parameters": [
          {
            "name": "paymentId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/nowpayment/np-list-payments": {
      "get": {
        "tags": [
          "NowPayment"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/nowpayment/np-create-invoice": {
      "post": {
        "tags": [
          "NowPayment"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NowInvoiceRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/NowInvoiceRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/NowInvoiceRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/nowpayment/np-invoice-status/{invoiceId}": {
      "get": {
        "tags": [
          "NowPayment"
        ],
        "parameters": [
          {
            "name": "invoiceId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/nowpayment/np-list-invoices": {
      "get": {
        "tags": [
          "NowPayment"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/nowpayment/np-create-payout": {
      "post": {
        "tags": [
          "NowPayment"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NowPayoutRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/NowPayoutRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/NowPayoutRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/nowpayment/np-verify-payout/{batchWithdrawalId}/{verificationCode}": {
      "post": {
        "tags": [
          "NowPayment"
        ],
        "parameters": [
          {
            "name": "batchWithdrawalId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "verificationCode",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/nowpayment/np-payout-status/{payoutId}": {
      "get": {
        "tags": [
          "NowPayment"
        ],
        "parameters": [
          {
            "name": "payoutId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/nowpayment/np-list-payouts": {
      "get": {
        "tags": [
          "NowPayment"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/nowpayment/np-cancel-payout/{payoutId}": {
      "post": {
        "tags": [
          "NowPayment"
        ],
        "parameters": [
          {
            "name": "payoutId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/nowpayment/np-available-currencies": {
      "get": {
        "tags": [
          "NowPayment"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/nowpayment/np-minimum-payment-amount/{fromCurrency}/{toCurrency}": {
      "get": {
        "tags": [
          "NowPayment"
        ],
        "parameters": [
          {
            "name": "fromCurrency",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "toCurrency",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/nowpayment/np-estimated-price/{fromCurrency}/{toCurrency}/{amount}": {
      "get": {
        "tags": [
          "NowPayment"
        ],
        "parameters": [
          {
            "name": "fromCurrency",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "toCurrency",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "amount",
            "in": "path",
            "required": true,
            "schema": {
              "type": "number",
              "format": "double"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/nowpayment/np-validate-webhook": {
      "post": {
        "tags": [
          "NowPayment"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/HttpRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/HttpRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/HttpRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/nowpayment/np-create-recurring-payment": {
      "post": {
        "tags": [
          "NowPayment"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NowRecurringPaymentRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/NowRecurringPaymentRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/NowRecurringPaymentRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/nowpayment/np-recurring-payment-status/{paymentId}": {
      "get": {
        "tags": [
          "NowPayment"
        ],
        "parameters": [
          {
            "name": "paymentId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/webhook/nowpayment/webhook": {
      "post": {
        "tags": [
          "NowPaymentWebhook"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/p2p": {
      "post": {
        "tags": [
          "P2P"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/P2P"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/P2P"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/P2P"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "get": {
        "tags": [
          "P2P"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/p2p/{id}": {
      "delete": {
        "tags": [
          "P2P"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "put": {
        "tags": [
          "P2P"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/P2P"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/P2P"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/P2P"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "get": {
        "tags": [
          "P2P"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/p2porder": {
      "post": {
        "tags": [
          "P2pOrder"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/P2pOrder"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/P2pOrder"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/P2pOrder"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "get": {
        "tags": [
          "P2pOrder"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/p2porder/{id}": {
      "delete": {
        "tags": [
          "P2pOrder"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "put": {
        "tags": [
          "P2pOrder"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/P2pOrder"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/P2pOrder"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/P2pOrder"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "get": {
        "tags": [
          "P2pOrder"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/p2ppaymentmode": {
      "post": {
        "tags": [
          "P2pPaymentMode"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/P2pPaymentMode"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/P2pPaymentMode"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/P2pPaymentMode"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "get": {
        "tags": [
          "P2pPaymentMode"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/p2ppaymentmode/{id}": {
      "delete": {
        "tags": [
          "P2pPaymentMode"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "put": {
        "tags": [
          "P2pPaymentMode"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/P2pPaymentMode"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/P2pPaymentMode"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/P2pPaymentMode"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "get": {
        "tags": [
          "P2pPaymentMode"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/paystack/create-customer": {
      "post": {
        "tags": [
          "Paystack"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCustomerDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCustomerDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCustomerDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/paystack/create-dva": {
      "post": {
        "tags": [
          "Paystack"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateDedicatedAccountDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateDedicatedAccountDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateDedicatedAccountDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/paystack/verify-transaction/{reference}": {
      "get": {
        "tags": [
          "Paystack"
        ],
        "parameters": [
          {
            "name": "reference",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/webhook/paystack": {
      "post": {
        "tags": [
          "PaystackWebhook"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/permissions": {
      "post": {
        "tags": [
          "Permissions"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "string"
              }
            },
            "text/json": {
              "schema": {
                "type": "string"
              }
            },
            "application/*+json": {
              "schema": {
                "type": "string"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "get": {
        "tags": [
          "Permissions"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/permissions/{roleId}": {
      "delete": {
        "tags": [
          "Permissions"
        ],
        "parameters": [
          {
            "name": "roleId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/permissions/{id}": {
      "get": {
        "tags": [
          "Permissions"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "put": {
        "tags": [
          "Permissions"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "string"
              }
            },
            "text/json": {
              "schema": {
                "type": "string"
              }
            },
            "application/*+json": {
              "schema": {
                "type": "string"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/permissions/seed": {
      "post": {
        "tags": [
          "Permissions"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/reloadlygiftcard/giftcard-balance": {
      "get": {
        "tags": [
          "ReloadlyGiftCard"
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      }
    },
    "/api/v1/reloadlygiftcard/giftcard-product-categories": {
      "get": {
        "tags": [
          "ReloadlyGiftCard"
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      }
    },
    "/api/v1/reloadlygiftcard/country/{countryCode}": {
      "get": {
        "tags": [
          "ReloadlyGiftCard"
        ],
        "parameters": [
          {
            "name": "countryCode",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "404": {
            "description": "Not Found"
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      }
    },
    "/api/v1/reloadlygiftcard/giftcard-countries": {
      "get": {
        "tags": [
          "ReloadlyGiftCard"
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      }
    },
    "/api/v1/reloadlygiftcard/brand/{brandId}/redeem-instructions": {
      "get": {
        "tags": [
          "ReloadlyGiftCard"
        ],
        "parameters": [
          {
            "name": "brandId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "404": {
            "description": "Not Found"
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      }
    },
    "/api/v1/reloadlygiftcard/redeem-instructions": {
      "get": {
        "tags": [
          "ReloadlyGiftCard"
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "404": {
            "description": "Not Found"
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      }
    },
    "/api/v1/reloadlygiftcard/giftcard/order": {
      "post": {
        "tags": [
          "ReloadlyGiftCard"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/GiftCardOrderRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/GiftCardOrderRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/GiftCardOrderRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          },
          "400": {
            "description": "Bad Request"
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      }
    },
    "/api/v1/reloadlygiftcard/discounts": {
      "get": {
        "tags": [
          "ReloadlyGiftCard"
        ],
        "parameters": [
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "size",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      }
    },
    "/api/v1/reloadlygiftcard/fx-rate": {
      "get": {
        "tags": [
          "ReloadlyGiftCard"
        ],
        "parameters": [
          {
            "name": "currencyCode",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "amount",
            "in": "query",
            "schema": {
              "type": "number",
              "format": "double"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "404": {
            "description": "Not Found"
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      }
    },
    "/api/v1/reloadlygiftcard/giftcard-details": {
      "get": {
        "tags": [
          "ReloadlyGiftCard"
        ],
        "parameters": [
          {
            "name": "transactionId",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "404": {
            "description": "Not Found"
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      }
    },
    "/api/v1/reloadlygiftcard/products": {
      "get": {
        "tags": [
          "ReloadlyGiftCard"
        ],
        "parameters": [
          {
            "name": "productName",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "countryCode",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "productCategoryId",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "size",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 10
            }
          },
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 1
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "404": {
            "description": "Not Found"
          },
          "400": {
            "description": "Bad Request"
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      }
    },
    "/api/v1/reloadlygiftcard/products/country": {
      "get": {
        "tags": [
          "ReloadlyGiftCard"
        ],
        "parameters": [
          {
            "name": "countryCode",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "404": {
            "description": "Not Found"
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      }
    },
    "/api/v1/reloadlygiftcard/product-details": {
      "get": {
        "tags": [
          "ReloadlyGiftCard"
        ],
        "parameters": [
          {
            "name": "productId",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "404": {
            "description": "Not Found"
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      }
    },
    "/api/v1/reloadlygiftcard/product-discount": {
      "get": {
        "tags": [
          "ReloadlyGiftCard"
        ],
        "parameters": [
          {
            "name": "productId",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "404": {
            "description": "Not Found"
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      }
    },
    "/api/v1/reloadlygiftcard/transaction/{transactionId}": {
      "get": {
        "tags": [
          "ReloadlyGiftCard"
        ],
        "parameters": [
          {
            "name": "transactionId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "404": {
            "description": "Not Found"
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      }
    },
    "/api/v1/reloadlygiftcard/transaction/reports": {
      "get": {
        "tags": [
          "ReloadlyGiftCard"
        ],
        "parameters": [
          {
            "name": "customIdentifier",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "startDate",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "endDate",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "size",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 10
            }
          },
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 1
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "400": {
            "description": "Bad Request"
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      }
    },
    "/api/v1/remita/collections/categories": {
      "get": {
        "tags": [
          "RemitaCollection"
        ],
        "parameters": [
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "name": "size",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 20
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/remita/collections/billers": {
      "get": {
        "tags": [
          "RemitaCollection"
        ],
        "parameters": [
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "name": "size",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 20
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/remita/collections/categories/{categoryId}/billers": {
      "get": {
        "tags": [
          "RemitaCollection"
        ],
        "parameters": [
          {
            "name": "categoryId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/remita/collections/billers/{billerId}/products": {
      "get": {
        "tags": [
          "RemitaCollection"
        ],
        "parameters": [
          {
            "name": "billerId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/remita/collections/validate-customer": {
      "post": {
        "tags": [
          "RemitaCollection"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CustomerValidationRequestDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CustomerValidationRequestDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CustomerValidationRequestDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/remita/collections/initiate": {
      "post": {
        "tags": [
          "RemitaCollection"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/InitiateBillRequestDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/InitiateBillRequestDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/InitiateBillRequestDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/remita/collections/lookup/{rrr}": {
      "get": {
        "tags": [
          "RemitaCollection"
        ],
        "parameters": [
          {
            "name": "rrr",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/remita/collections/process": {
      "post": {
        "tags": [
          "RemitaCollection"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ProcessTransactionRequestDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/ProcessTransactionRequestDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/ProcessTransactionRequestDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/remita/collections/pay": {
      "post": {
        "tags": [
          "RemitaCollection"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/InitiateRemitaCollectionPaymentCommand"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/InitiateRemitaCollectionPaymentCommand"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/InitiateRemitaCollectionPaymentCommand"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/RemitaPaymentResultDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RemitaPaymentResultDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/RemitaPaymentResultDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/remita/vending/categories": {
      "get": {
        "tags": [
          "RemitaVending"
        ],
        "parameters": [
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "name": "size",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 20
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/remita/vending/providers/category/{categoryId}": {
      "get": {
        "tags": [
          "RemitaVending"
        ],
        "parameters": [
          {
            "name": "categoryId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/remita/vending/products": {
      "get": {
        "tags": [
          "RemitaVending"
        ],
        "parameters": [
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 20
            }
          },
          {
            "name": "countryCode",
            "in": "query",
            "schema": {
              "type": "string",
              "default": "NGA"
            }
          },
          {
            "name": "categoryCode",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "provider",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "productType",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/remita/vending/validate": {
      "post": {
        "tags": [
          "RemitaVending"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/VendingValidationRequestDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/VendingValidationRequestDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/VendingValidationRequestDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/remita/vending/transactions": {
      "post": {
        "tags": [
          "RemitaVending"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/VendingTransactionRequestDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/VendingTransactionRequestDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/VendingTransactionRequestDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/remita/vending/query-transaction/{vendReference}": {
      "get": {
        "tags": [
          "RemitaVending"
        ],
        "parameters": [
          {
            "name": "vendReference",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/remita/vending/pay": {
      "post": {
        "tags": [
          "RemitaVending"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/InitiateRemitaVendingPaymentCommand"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/InitiateRemitaVendingPaymentCommand"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/InitiateRemitaVendingPaymentCommand"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/RemitaPaymentResultDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RemitaPaymentResultDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/RemitaPaymentResultDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/settingcontoller": {
      "post": {
        "tags": [
          "SettingContoller"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Setting"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Setting"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Setting"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "get": {
        "tags": [
          "SettingContoller"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/settingcontoller/{id}": {
      "delete": {
        "tags": [
          "SettingContoller"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "put": {
        "tags": [
          "SettingContoller"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Setting"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Setting"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Setting"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/settingcontoller/current": {
      "get": {
        "tags": [
          "SettingContoller"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/settingcontoller/network-status": {
      "get": {
        "tags": [
          "SettingContoller"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/settingcontoller/contact-us": {
      "post": {
        "tags": [
          "SettingContoller"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SubmitContactUsMailCommand"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SubmitContactUsMailCommand"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SubmitContactUsMailCommand"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/squad/create-va-individual": {
      "post": {
        "tags": [
          "SquadPayment"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateVAIndividualRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateVAIndividualRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateVAIndividualRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/squad/create-va-business": {
      "post": {
        "tags": [
          "SquadPayment"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateVABusinessRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateVABusinessRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateVABusinessRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/squad/simulate-payment": {
      "post": {
        "tags": [
          "SquadPayment"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SimulatePaymentRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SimulatePaymentRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SimulatePaymentRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/squad/customer-transactions/{customerIdentifier}": {
      "get": {
        "tags": [
          "SquadPayment"
        ],
        "parameters": [
          {
            "name": "customerIdentifier",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/squad/merchant-transactions": {
      "get": {
        "tags": [
          "SquadPayment"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/squad/va-details/account/{virtualAccountNumber}": {
      "get": {
        "tags": [
          "SquadPayment"
        ],
        "parameters": [
          {
            "name": "virtualAccountNumber",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/squad/va-details/customer/{customerIdentifier}": {
      "get": {
        "tags": [
          "SquadPayment"
        ],
        "parameters": [
          {
            "name": "customerIdentifier",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/squad/webhook": {
      "post": {
        "tags": [
          "SquadPayment"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/WebhookNotification"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/WebhookNotification"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/WebhookNotification"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/webhooks/squad": {
      "post": {
        "tags": [
          "SquadWebhook"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/WebhookNotification"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/WebhookNotification"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/WebhookNotification"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/transaction": {
      "post": {
        "tags": [
          "Transaction"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateTransactionDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateTransactionDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateTransactionDto"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Transaction"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Transaction"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Transaction"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      },
      "get": {
        "tags": [
          "Transaction"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Transaction"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Transaction"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Transaction"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/transaction/{id}": {
      "delete": {
        "tags": [
          "Transaction"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "Transaction"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Transaction"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Transaction"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Transaction"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "No Content"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      },
      "get": {
        "tags": [
          "Transaction"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Transaction"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Transaction"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Transaction"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/transaction/user/{userId}/list": {
      "get": {
        "tags": [
          "Transaction"
        ],
        "parameters": [
          {
            "name": "userId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 1
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Transaction"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Transaction"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Transaction"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/transaction/user/{userId}/topup-list": {
      "get": {
        "tags": [
          "Transaction"
        ],
        "parameters": [
          {
            "name": "userId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 1
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Transaction"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Transaction"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Transaction"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/user-activity/track": {
      "post": {
        "tags": [
          "UserActivity"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/TrackUserActivityCommand"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/TrackUserActivityCommand"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/TrackUserActivityCommand"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/userbeneficiary": {
      "post": {
        "tags": [
          "UserBeneficiary"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UserBeneficiary"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UserBeneficiary"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UserBeneficiary"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/UserBeneficiary"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UserBeneficiary"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/UserBeneficiary"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/userbeneficiary/{id}": {
      "get": {
        "tags": [
          "UserBeneficiary"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/UserBeneficiary"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UserBeneficiary"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/UserBeneficiary"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "UserBeneficiary"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UserBeneficiary"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UserBeneficiary"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UserBeneficiary"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "No Content"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "UserBeneficiary"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/userbeneficiary/get-user-beneficiaries/{userId}": {
      "get": {
        "tags": [
          "UserBeneficiary"
        ],
        "parameters": [
          {
            "name": "userId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "pageNumber",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 1
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 10
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/UserBeneficiary"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/UserBeneficiary"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/UserBeneficiary"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/wallet": {
      "post": {
        "tags": [
          "Wallet"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Wallet"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Wallet"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Wallet"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "get": {
        "tags": [
          "Wallet"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/wallet/{id}": {
      "delete": {
        "tags": [
          "Wallet"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "put": {
        "tags": [
          "Wallet"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Wallet"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Wallet"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Wallet"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "get": {
        "tags": [
          "Wallet"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/wallet/byuserid/{userId}": {
      "get": {
        "tags": [
          "Wallet"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "userId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/wallet/byuseridwithlog/{userId}": {
      "get": {
        "tags": [
          "Wallet"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "userId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/webpage": {
      "post": {
        "tags": [
          "WebPage"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/WebPage"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/WebPage"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/WebPage"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "get": {
        "tags": [
          "WebPage"
        ],
        "parameters": [
          {
            "name": "isPublished",
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "search",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/webpage/{id}": {
      "delete": {
        "tags": [
          "WebPage"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "put": {
        "tags": [
          "WebPage"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/WebPage"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/WebPage"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/WebPage"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "get": {
        "tags": [
          "WebPage"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/webpage/webpage/{slug}": {
      "get": {
        "tags": [
          "WebPage"
        ],
        "parameters": [
          {
            "name": "slug",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "AccountStatus": {
        "enum": [
          0,
          1,
          2,
          3,
          4,
          5
        ],
        "type": "integer",
        "format": "int32"
      },
      "AddressFamily": {
        "enum": [
          0,
          1,
          2,
          3,
          4,
          5,
          6,
          7,
          8,
          9,
          10,
          11,
          12,
          13,
          14,
          15,
          16,
          17,
          18,
          19,
          21,
          22,
          23,
          24,
          25,
          26,
          28,
          29,
          65536,
          65537,
          -1
        ],
        "type": "integer",
        "format": "int32"
      },
      "AppUpdateDto": {
        "type": "object",
        "properties": {
          "platform": {
            "type": "string",
            "nullable": true
          },
          "minimumRequiredVersion": {
            "type": "string",
            "nullable": true
          },
          "latestVersion": {
            "type": "string",
            "nullable": true
          },
          "isUpdateRequired": {
            "type": "boolean"
          },
          "storeUrl": {
            "type": "string",
            "nullable": true
          },
          "changelog": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ApplicationUser": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "userName": {
            "type": "string",
            "nullable": true
          },
          "normalizedUserName": {
            "type": "string",
            "nullable": true
          },
          "email": {
            "type": "string",
            "nullable": true
          },
          "normalizedEmail": {
            "type": "string",
            "nullable": true
          },
          "emailConfirmed": {
            "type": "boolean"
          },
          "passwordHash": {
            "type": "string",
            "nullable": true
          },
          "securityStamp": {
            "type": "string",
            "nullable": true
          },
          "concurrencyStamp": {
            "type": "string",
            "nullable": true
          },
          "phoneNumber": {
            "type": "string",
            "nullable": true
          },
          "phoneNumberConfirmed": {
            "type": "boolean"
          },
          "twoFactorEnabled": {
            "type": "boolean"
          },
          "lockoutEnd": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "lockoutEnabled": {
            "type": "boolean"
          },
          "accessFailedCount": {
            "type": "integer",
            "format": "int32"
          },
          "surName": {
            "type": "string",
            "nullable": true
          },
          "firstName": {
            "type": "string",
            "nullable": true
          },
          "otherName": {
            "type": "string",
            "nullable": true
          },
          "idNumber": {
            "type": "string",
            "nullable": true
          },
          "tier": {
            "type": "string",
            "nullable": true
          },
          "address": {
            "type": "string",
            "nullable": true
          },
          "accountStatus": {
            "$ref": "#/components/schemas/AccountStatus"
          },
          "lastLoggedInAtUtc": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "creationUTC": {
            "type": "string",
            "format": "date-time"
          },
          "date": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "passportUrl": {
            "type": "string",
            "nullable": true
          },
          "passportKey": {
            "type": "string",
            "nullable": true
          },
          "hasDedicatedAccount": {
            "type": "boolean"
          },
          "accountNumber": {
            "type": "string",
            "nullable": true
          },
          "bankAccountName": {
            "type": "string",
            "nullable": true
          },
          "bankName": {
            "type": "string",
            "nullable": true
          },
          "flutterwaveCustomerId": {
            "type": "string",
            "nullable": true
          },
          "flutterwaveVirtualAccountId": {
            "type": "string",
            "nullable": true
          },
          "flutterwaveVirtualAccountReference": {
            "type": "string",
            "nullable": true
          },
          "verificationCode": {
            "type": "string",
            "nullable": true
          },
          "role": {
            "type": "string",
            "nullable": true
          },
          "isDeleted": {
            "type": "boolean"
          },
          "pinHash": {
            "type": "string",
            "nullable": true
          },
          "fullname": {
            "type": "string",
            "nullable": true,
            "readOnly": true
          },
          "reasons": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "otherReason": {
            "type": "string",
            "nullable": true
          },
          "notificationId": {
            "type": "string",
            "nullable": true
          },
          "notificationToken": {
            "type": "string",
            "nullable": true
          },
          "notificationPlatform": {
            "type": "string",
            "nullable": true
          },
          "lastDeviceId": {
            "type": "string",
            "nullable": true
          },
          "referralCode": {
            "type": "string",
            "nullable": true
          },
          "referralCodeChanged": {
            "type": "boolean"
          },
          "referralFrom": {
            "type": "string",
            "nullable": true
          },
          "refreshToken": {
            "type": "string",
            "nullable": true
          },
          "refreshTokenExpiry": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "bvn": {
            "type": "string",
            "nullable": true
          },
          "nin": {
            "type": "string",
            "nullable": true
          },
          "geminiApiKey": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "AsnEncodedData": {
        "type": "object",
        "properties": {
          "oid": {
            "$ref": "#/components/schemas/Oid"
          },
          "rawData": {
            "type": "string",
            "format": "byte",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Assembly": {
        "type": "object",
        "properties": {
          "definedTypes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TypeInfo"
            },
            "nullable": true,
            "readOnly": true
          },
          "exportedTypes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Type"
            },
            "nullable": true,
            "readOnly": true
          },
          "codeBase": {
            "type": "string",
            "nullable": true,
            "readOnly": true,
            "deprecated": true
          },
          "entryPoint": {
            "$ref": "#/components/schemas/MethodInfo"
          },
          "fullName": {
            "type": "string",
            "nullable": true,
            "readOnly": true
          },
          "imageRuntimeVersion": {
            "type": "string",
            "nullable": true,
            "readOnly": true
          },
          "isDynamic": {
            "type": "boolean",
            "readOnly": true
          },
          "location": {
            "type": "string",
            "nullable": true,
            "readOnly": true
          },
          "reflectionOnly": {
            "type": "boolean",
            "readOnly": true
          },
          "isCollectible": {
            "type": "boolean",
            "readOnly": true
          },
          "isFullyTrusted": {
            "type": "boolean",
            "readOnly": true
          },
          "customAttributes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CustomAttributeData"
            },
            "nullable": true,
            "readOnly": true
          },
          "escapedCodeBase": {
            "type": "string",
            "nullable": true,
            "readOnly": true,
            "deprecated": true
          },
          "manifestModule": {
            "$ref": "#/components/schemas/Module"
          },
          "modules": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Module"
            },
            "nullable": true,
            "readOnly": true
          },
          "globalAssemblyCache": {
            "type": "boolean",
            "readOnly": true,
            "deprecated": true
          },
          "hostContext": {
            "type": "integer",
            "format": "int64",
            "readOnly": true
          },
          "securityRuleSet": {
            "$ref": "#/components/schemas/SecurityRuleSet"
          }
        },
        "additionalProperties": false
      },
      "AsymmetricAlgorithm": {
        "type": "object",
        "properties": {
          "keySize": {
            "type": "integer",
            "format": "int32"
          },
          "legalKeySizes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/KeySizes"
            },
            "nullable": true,
            "readOnly": true
          },
          "signatureAlgorithm": {
            "type": "string",
            "nullable": true,
            "readOnly": true
          },
          "keyExchangeAlgorithm": {
            "type": "string",
            "nullable": true,
            "readOnly": true
          }
        },
        "additionalProperties": false
      },
      "BaseResponse": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "message": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "BasicUserDto": {
        "type": "object",
        "properties": {
          "surName": {
            "type": "string",
            "nullable": true
          },
          "firstName": {
            "type": "string",
            "nullable": true
          },
          "otherName": {
            "type": "string",
            "nullable": true
          },
          "idNumber": {
            "type": "string",
            "nullable": true
          },
          "accountStatus": {
            "$ref": "#/components/schemas/AccountStatus"
          },
          "lastLoggedInAtUtc": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "creationUTC": {
            "type": "string",
            "format": "date-time"
          },
          "date": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "passportUrl": {
            "type": "string",
            "nullable": true
          },
          "passportKey": {
            "type": "string",
            "nullable": true
          },
          "hasDedicatedAccount": {
            "type": "boolean"
          },
          "accountNumber": {
            "type": "string",
            "nullable": true
          },
          "bankAccountName": {
            "type": "string",
            "nullable": true
          },
          "bankName": {
            "type": "string",
            "nullable": true
          },
          "role": {
            "type": "string",
            "nullable": true
          },
          "fullname": {
            "type": "string",
            "nullable": true
          },
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "userName": {
            "type": "string",
            "nullable": true
          },
          "email": {
            "type": "string",
            "nullable": true
          },
          "emailConfirmed": {
            "type": "boolean"
          },
          "phoneNumber": {
            "type": "string",
            "nullable": true
          },
          "phoneNumberConfirmed": {
            "type": "boolean"
          },
          "twoFactorEnabled": {
            "type": "boolean"
          },
          "lockoutEnd": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "lockoutEnabled": {
            "type": "boolean"
          },
          "accessFailedCount": {
            "type": "integer",
            "format": "int32"
          },
          "walletNaira": {
            "type": "number",
            "format": "double"
          },
          "walletUsd": {
            "type": "number",
            "format": "double"
          },
          "notificationId": {
            "type": "string",
            "nullable": true
          },
          "address": {
            "type": "string",
            "nullable": true
          },
          "tier": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "BillCustomFieldDto": {
        "type": "object",
        "properties": {
          "variable_name": {
            "type": "string",
            "nullable": true
          },
          "value": {
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "BillMetadataDto": {
        "type": "object",
        "properties": {
          "customFields": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/BillCustomFieldDto"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "BillServiceDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "code": {
            "type": "string",
            "nullable": true
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "groupName": {
            "type": "string",
            "nullable": true
          },
          "iconGlyph": {
            "type": "string",
            "nullable": true
          },
          "iconColorHex": {
            "type": "string",
            "nullable": true
          },
          "billCategoryId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "sortOrder": {
            "type": "integer",
            "format": "int32"
          },
          "isOnHomePage": {
            "type": "boolean"
          },
          "homePageOrder": {
            "type": "integer",
            "format": "int32"
          },
          "isActive": {
            "type": "boolean"
          },
          "entryRoute": {
            "type": "string",
            "nullable": true
          },
          "providerType": {
            "type": "string",
            "nullable": true
          },
          "providerCategoryCode": {
            "type": "string",
            "nullable": true
          },
          "providerCode": {
            "type": "string",
            "nullable": true
          },
          "providerProductCode": {
            "type": "string",
            "nullable": true
          },
          "billServiceSectionId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "sectionName": {
            "type": "string",
            "nullable": true
          },
          "sectionCode": {
            "type": "string",
            "nullable": true
          },
          "sectionSortOrder": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ByteReadOnlyMemory": {
        "type": "object",
        "properties": {
          "length": {
            "type": "integer",
            "format": "int32",
            "readOnly": true
          },
          "isEmpty": {
            "type": "boolean",
            "readOnly": true
          },
          "span": {
            "$ref": "#/components/schemas/ByteReadOnlySpan"
          }
        },
        "additionalProperties": false
      },
      "ByteReadOnlySpan": {
        "type": "object",
        "properties": {
          "length": {
            "type": "integer",
            "format": "int32",
            "readOnly": true
          },
          "isEmpty": {
            "type": "boolean",
            "readOnly": true
          }
        },
        "additionalProperties": false
      },
      "CallingConventions": {
        "enum": [
          1,
          2,
          3,
          32,
          64
        ],
        "type": "integer",
        "format": "int32"
      },
      "CancellationToken": {
        "type": "object",
        "properties": {
          "isCancellationRequested": {
            "type": "boolean",
            "readOnly": true
          },
          "canBeCanceled": {
            "type": "boolean",
            "readOnly": true
          },
          "waitHandle": {
            "$ref": "#/components/schemas/WaitHandle"
          }
        },
        "additionalProperties": false
      },
      "ChangePasswordCommand": {
        "type": "object",
        "properties": {
          "userId": {
            "type": "string",
            "nullable": true
          },
          "currentPassword": {
            "type": "string",
            "nullable": true
          },
          "newPassword": {
            "type": "string",
            "nullable": true
          },
          "confirmNewPassword": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Chat": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "userId": {
            "type": "string",
            "format": "uuid"
          },
          "user": {
            "$ref": "#/components/schemas/ApplicationUser"
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "date": {
            "type": "string",
            "format": "date-time"
          },
          "fileUrl": {
            "type": "string",
            "nullable": true
          },
          "fileKey": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CheckUserVerificationCommand": {
        "type": "object",
        "properties": {
          "email": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Claim": {
        "type": "object",
        "properties": {
          "issuer": {
            "type": "string",
            "nullable": true,
            "readOnly": true
          },
          "originalIssuer": {
            "type": "string",
            "nullable": true,
            "readOnly": true
          },
          "properties": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "nullable": true,
            "readOnly": true
          },
          "subject": {
            "$ref": "#/components/schemas/ClaimsIdentity"
          },
          "type": {
            "type": "string",
            "nullable": true,
            "readOnly": true
          },
          "value": {
            "type": "string",
            "nullable": true,
            "readOnly": true
          },
          "valueType": {
            "type": "string",
            "nullable": true,
            "readOnly": true
          }
        },
        "additionalProperties": false
      },
      "ClaimsIdentity": {
        "type": "object",
        "properties": {
          "authenticationType": {
            "type": "string",
            "nullable": true,
            "readOnly": true
          },
          "isAuthenticated": {
            "type": "boolean",
            "readOnly": true
          },
          "actor": {
            "$ref": "#/components/schemas/ClaimsIdentity"
          },
          "bootstrapContext": {
            "nullable": true
          },
          "claims": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Claim"
            },
            "nullable": true,
            "readOnly": true
          },
          "label": {
            "type": "string",
            "nullable": true
          },
          "name": {
            "type": "string",
            "nullable": true,
            "readOnly": true
          },
          "nameClaimType": {
            "type": "string",
            "nullable": true,
            "readOnly": true
          },
          "roleClaimType": {
            "type": "string",
            "nullable": true,
            "readOnly": true
          }
        },
        "additionalProperties": false
      },
      "ClaimsPrincipal": {
        "type": "object",
        "properties": {
          "claims": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Claim"
            },
            "nullable": true,
            "readOnly": true
          },
          "identities": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ClaimsIdentity"
            },
            "nullable": true,
            "readOnly": true
          },
          "identity": {
            "$ref": "#/components/schemas/IIdentity"
          }
        },
        "additionalProperties": false
      },
      "ConnectionInfo": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "nullable": true
          },
          "remoteIpAddress": {
            "$ref": "#/components/schemas/IPAddress"
          },
          "remotePort": {
            "type": "integer",
            "format": "int32"
          },
          "localIpAddress": {
            "$ref": "#/components/schemas/IPAddress"
          },
          "localPort": {
            "type": "integer",
            "format": "int32"
          },
          "clientCertificate": {
            "$ref": "#/components/schemas/X509Certificate2"
          }
        },
        "additionalProperties": false
      },
      "ConstructorInfo": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "nullable": true,
            "readOnly": true
          },
          "declaringType": {
            "$ref": "#/components/schemas/Type"
          },
          "reflectedType": {
            "$ref": "#/components/schemas/Type"
          },
          "module": {
            "$ref": "#/components/schemas/Module"
          },
          "customAttributes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CustomAttributeData"
            },
            "nullable": true,
            "readOnly": true
          },
          "isCollectible": {
            "type": "boolean",
            "readOnly": true
          },
          "metadataToken": {
            "type": "integer",
            "format": "int32",
            "readOnly": true
          },
          "attributes": {
            "$ref": "#/components/schemas/MethodAttributes"
          },
          "methodImplementationFlags": {
            "$ref": "#/components/schemas/MethodImplAttributes"
          },
          "callingConvention": {
            "$ref": "#/components/schemas/CallingConventions"
          },
          "isAbstract": {
            "type": "boolean",
            "readOnly": true
          },
          "isConstructor": {
            "type": "boolean",
            "readOnly": true
          },
          "isFinal": {
            "type": "boolean",
            "readOnly": true
          },
          "isHideBySig": {
            "type": "boolean",
            "readOnly": true
          },
          "isSpecialName": {
            "type": "boolean",
            "readOnly": true
          },
          "isStatic": {
            "type": "boolean",
            "readOnly": true
          },
          "isVirtual": {
            "type": "boolean",
            "readOnly": true
          },
          "isAssembly": {
            "type": "boolean",
            "readOnly": true
          },
          "isFamily": {
            "type": "boolean",
            "readOnly": true
          },
          "isFamilyAndAssembly": {
            "type": "boolean",
            "readOnly": true
          },
          "isFamilyOrAssembly": {
            "type": "boolean",
            "readOnly": true
          },
          "isPrivate": {
            "type": "boolean",
            "readOnly": true
          },
          "isPublic": {
            "type": "boolean",
            "readOnly": true
          },
          "isConstructedGenericMethod": {
            "type": "boolean",
            "readOnly": true
          },
          "isGenericMethod": {
            "type": "boolean",
            "readOnly": true
          },
          "isGenericMethodDefinition": {
            "type": "boolean",
            "readOnly": true
          },
          "containsGenericParameters": {
            "type": "boolean",
            "readOnly": true
          },
          "methodHandle": {
            "$ref": "#/components/schemas/RuntimeMethodHandle"
          },
          "isSecurityCritical": {
            "type": "boolean",
            "readOnly": true
          },
          "isSecuritySafeCritical": {
            "type": "boolean",
            "readOnly": true
          },
          "isSecurityTransparent": {
            "type": "boolean",
            "readOnly": true
          },
          "memberType": {
            "$ref": "#/components/schemas/MemberTypes"
          }
        },
        "additionalProperties": false
      },
      "CreateCustomerDto": {
        "type": "object",
        "properties": {
          "email": {
            "type": "string",
            "nullable": true
          },
          "firstName": {
            "type": "string",
            "nullable": true
          },
          "lastName": {
            "type": "string",
            "nullable": true
          },
          "phone": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CreateDedicatedAccountDto": {
        "type": "object",
        "properties": {
          "customerId": {
            "type": "integer",
            "format": "int32"
          },
          "preferredBank": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CreateGraphCardResult": {
        "type": "object",
        "properties": {
          "graphCardId": {
            "type": "string",
            "nullable": true
          },
          "cardName": {
            "type": "string",
            "nullable": true
          },
          "brand": {
            "type": "string",
            "nullable": true
          },
          "last4": {
            "type": "string",
            "nullable": true
          },
          "currency": {
            "type": "string",
            "nullable": true
          },
          "country": {
            "type": "string",
            "nullable": true
          },
          "status": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CreateGraphConversionData": {
        "type": "object",
        "properties": {
          "conversion": {
            "$ref": "#/components/schemas/GraphConversion"
          },
          "transaction": {
            "$ref": "#/components/schemas/GraphTransaction"
          }
        },
        "additionalProperties": false
      },
      "CreateGraphConversionDataGraphStandardResponse": {
        "type": "object",
        "properties": {
          "status": {
            "type": "string",
            "nullable": true
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "data": {
            "$ref": "#/components/schemas/CreateGraphConversionData"
          }
        },
        "additionalProperties": false
      },
      "CreateGraphConversionRequest": {
        "type": "object",
        "properties": {
          "currency_source": {
            "type": "string",
            "nullable": true
          },
          "currency_destination": {
            "type": "string",
            "nullable": true
          },
          "amount_source": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "CreateGraphPayoutData": {
        "type": "object",
        "properties": {
          "payout": {
            "$ref": "#/components/schemas/GraphPayout"
          },
          "transaction": {
            "$ref": "#/components/schemas/GraphTransaction"
          }
        },
        "additionalProperties": false
      },
      "CreateGraphPayoutDataGraphStandardResponse": {
        "type": "object",
        "properties": {
          "status": {
            "type": "string",
            "nullable": true
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "data": {
            "$ref": "#/components/schemas/CreateGraphPayoutData"
          }
        },
        "additionalProperties": false
      },
      "CreateGraphPayoutRequest": {
        "type": "object",
        "properties": {
          "destination_id": {
            "type": "string",
            "nullable": true
          },
          "amount": {
            "type": "integer",
            "format": "int32"
          },
          "description": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CreateGraphVirtualAccountResult": {
        "type": "object",
        "properties": {
          "accountNumber": {
            "type": "string",
            "nullable": true
          },
          "accountName": {
            "type": "string",
            "nullable": true
          },
          "bankName": {
            "type": "string",
            "nullable": true
          },
          "currency": {
            "type": "string",
            "nullable": true
          },
          "country": {
            "type": "string",
            "nullable": true
          },
          "reference": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CreatePasswordModel": {
        "type": "object",
        "properties": {
          "email": {
            "type": "string",
            "nullable": true
          },
          "password": {
            "type": "string",
            "nullable": true
          },
          "confirmPassword": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CreateTransactionDto": {
        "type": "object",
        "properties": {
          "userId": {
            "type": "string",
            "format": "uuid"
          },
          "amount": {
            "type": "number",
            "format": "double"
          },
          "currency": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "optionalNote": {
            "type": "string",
            "nullable": true
          },
          "transactionReference": {
            "type": "string",
            "nullable": true
          },
          "externalReference": {
            "type": "string",
            "nullable": true
          },
          "vendorId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "beneficiaryAccount": {
            "type": "string",
            "nullable": true
          },
          "beneficiaryName": {
            "type": "string",
            "nullable": true
          },
          "transactionType": {
            "$ref": "#/components/schemas/TransactionTypeEnum"
          },
          "transactionCategoryEnum": {
            "$ref": "#/components/schemas/TransactionCategoryEnum"
          },
          "direction": {
            "$ref": "#/components/schemas/TransactionDirection"
          }
        },
        "additionalProperties": false
      },
      "CreateVABusinessRequest": {
        "type": "object",
        "properties": {
          "customer_identifier": {
            "type": "string",
            "nullable": true
          },
          "business_name": {
            "type": "string",
            "nullable": true
          },
          "mobile_num": {
            "type": "string",
            "nullable": true
          },
          "bvn": {
            "type": "string",
            "nullable": true
          },
          "email": {
            "type": "string",
            "nullable": true
          },
          "beneficiary_account": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CreateVAIndividualRequest": {
        "type": "object",
        "properties": {
          "customer_identifier": {
            "type": "string",
            "nullable": true
          },
          "first_name": {
            "type": "string",
            "nullable": true
          },
          "last_name": {
            "type": "string",
            "nullable": true
          },
          "middle_name": {
            "type": "string",
            "nullable": true
          },
          "mobile_num": {
            "type": "string",
            "nullable": true
          },
          "bvn": {
            "type": "string",
            "nullable": true
          },
          "dob": {
            "type": "string",
            "nullable": true
          },
          "gender": {
            "type": "string",
            "nullable": true
          },
          "address": {
            "type": "string",
            "nullable": true
          },
          "email": {
            "type": "string",
            "nullable": true
          },
          "beneficiary_account": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CreateVirtualAccountRequestDto": {
        "type": "object",
        "properties": {
          "userId": {
            "type": "string",
            "nullable": true
          },
          "bvn": {
            "type": "string",
            "nullable": true
          },
          "currency": {
            "type": "string",
            "nullable": true
          },
          "country": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CreateVirtualAccountResult": {
        "type": "object",
        "properties": {
          "accountNumber": {
            "type": "string",
            "nullable": true
          },
          "bankName": {
            "type": "string",
            "nullable": true
          },
          "reference": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Crypto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "fileUrl": {
            "type": "string",
            "nullable": true
          },
          "fileKey": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Currency": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "fileUrl": {
            "type": "string",
            "nullable": true
          },
          "fileKey": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CustomAttributeData": {
        "type": "object",
        "properties": {
          "attributeType": {
            "$ref": "#/components/schemas/Type"
          },
          "constructor": {
            "$ref": "#/components/schemas/ConstructorInfo"
          },
          "constructorArguments": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CustomAttributeTypedArgument"
            },
            "nullable": true,
            "readOnly": true
          },
          "namedArguments": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CustomAttributeNamedArgument"
            },
            "nullable": true,
            "readOnly": true
          }
        },
        "additionalProperties": false
      },
      "CustomAttributeNamedArgument": {
        "type": "object",
        "properties": {
          "memberInfo": {
            "$ref": "#/components/schemas/MemberInfo"
          },
          "typedValue": {
            "$ref": "#/components/schemas/CustomAttributeTypedArgument"
          },
          "memberName": {
            "type": "string",
            "nullable": true,
            "readOnly": true
          },
          "isField": {
            "type": "boolean",
            "readOnly": true
          }
        },
        "additionalProperties": false
      },
      "CustomAttributeTypedArgument": {
        "type": "object",
        "properties": {
          "argumentType": {
            "$ref": "#/components/schemas/Type"
          },
          "value": {
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CustomerLookupRequest": {
        "type": "object",
        "properties": {
          "customerId": {
            "type": "string",
            "nullable": true
          },
          "billerSlug": {
            "type": "string",
            "nullable": true
          },
          "productName": {
            "type": "string",
            "nullable": true
          },
          "orderId": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CustomerValidationRequestDto": {
        "type": "object",
        "properties": {
          "billPaymentProductId": {
            "type": "string",
            "nullable": true
          },
          "customerId": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "DashboardBanner": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "imageUrl": {
            "type": "string",
            "nullable": true
          },
          "imageKey": {
            "type": "string",
            "nullable": true
          },
          "pageRoute": {
            "type": "string",
            "nullable": true
          },
          "targetServiceId": {
            "type": "string",
            "nullable": true
          },
          "promoCode": {
            "type": "string",
            "nullable": true
          },
          "discountPercent": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "campaignId": {
            "type": "string",
            "nullable": true
          },
          "sortOrder": {
            "type": "integer",
            "format": "int32"
          },
          "isActive": {
            "type": "boolean"
          },
          "createdAtUtc": {
            "type": "string",
            "format": "date-time"
          },
          "startAtUtc": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "endAtUtc": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "DashboardBannerDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "imageUrl": {
            "type": "string",
            "nullable": true
          },
          "targetServiceId": {
            "type": "string",
            "nullable": true
          },
          "pageRoute": {
            "type": "string",
            "nullable": true
          },
          "promoCode": {
            "type": "string",
            "nullable": true
          },
          "discountPercent": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "campaignId": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "DashboardDto": {
        "type": "object",
        "properties": {
          "user": {
            "$ref": "#/components/schemas/BasicUserDto"
          },
          "wallet": {
            "$ref": "#/components/schemas/DashboardWalletDto"
          },
          "notificationCount": {
            "type": "integer",
            "format": "int32"
          },
          "banners": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/DashboardBannerDto"
            },
            "nullable": true
          },
          "services": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/DashboardServiceDto"
            },
            "nullable": true
          },
          "recentTransactions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/DashboardTransactionDto"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "DashboardServiceDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "code": {
            "type": "string",
            "nullable": true
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "groupName": {
            "type": "string",
            "nullable": true
          },
          "iconGlyph": {
            "type": "string",
            "nullable": true
          },
          "iconColorHex": {
            "type": "string",
            "nullable": true
          },
          "billCategoryId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "sortOrder": {
            "type": "integer",
            "format": "int32"
          },
          "isOnHomePage": {
            "type": "boolean"
          },
          "homePageOrder": {
            "type": "integer",
            "format": "int32"
          },
          "isActive": {
            "type": "boolean"
          },
          "entryRoute": {
            "type": "string",
            "nullable": true
          },
          "providerType": {
            "type": "string",
            "nullable": true
          },
          "providerCategoryCode": {
            "type": "string",
            "nullable": true
          },
          "providerCode": {
            "type": "string",
            "nullable": true
          },
          "providerProductCode": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "DashboardTransactionDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "amount": {
            "type": "number",
            "format": "double"
          },
          "direction": {
            "$ref": "#/components/schemas/TransactionDirection"
          },
          "transactionType": {
            "$ref": "#/components/schemas/TransactionTypeEnum"
          },
          "status": {
            "$ref": "#/components/schemas/EntityStatus"
          },
          "category": {
            "$ref": "#/components/schemas/TransactionCategoryEnum"
          },
          "createdAt": {
            "type": "string",
            "format": "date-time"
          },
          "reference": {
            "type": "string",
            "nullable": true
          },
          "keyNote": {
            "type": "string",
            "nullable": true
          },
          "keyImage": {
            "type": "string",
            "nullable": true
          },
          "beneficiaryAccount": {
            "type": "string",
            "nullable": true
          },
          "beneficiaryName": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "DashboardWalletDto": {
        "type": "object",
        "properties": {
          "balance": {
            "type": "number",
            "format": "double"
          },
          "currency": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "DeleteAccountRequestDto": {
        "type": "object",
        "properties": {
          "reasons": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "otherReason": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "EntityStatus": {
        "enum": [
          0,
          1,
          2,
          3,
          4
        ],
        "type": "integer",
        "format": "int32"
      },
      "EventAttributes": {
        "enum": [
          0,
          512,
          1024
        ],
        "type": "integer",
        "format": "int32"
      },
      "EventInfo": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "nullable": true,
            "readOnly": true
          },
          "declaringType": {
            "$ref": "#/components/schemas/Type"
          },
          "reflectedType": {
            "$ref": "#/components/schemas/Type"
          },
          "module": {
            "$ref": "#/components/schemas/Module"
          },
          "customAttributes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CustomAttributeData"
            },
            "nullable": true,
            "readOnly": true
          },
          "isCollectible": {
            "type": "boolean",
            "readOnly": true
          },
          "metadataToken": {
            "type": "integer",
            "format": "int32",
            "readOnly": true
          },
          "memberType": {
            "$ref": "#/components/schemas/MemberTypes"
          },
          "attributes": {
            "$ref": "#/components/schemas/EventAttributes"
          },
          "isSpecialName": {
            "type": "boolean",
            "readOnly": true
          },
          "addMethod": {
            "$ref": "#/components/schemas/MethodInfo"
          },
          "removeMethod": {
            "$ref": "#/components/schemas/MethodInfo"
          },
          "raiseMethod": {
            "$ref": "#/components/schemas/MethodInfo"
          },
          "isMulticast": {
            "type": "boolean",
            "readOnly": true
          },
          "eventHandlerType": {
            "$ref": "#/components/schemas/Type"
          }
        },
        "additionalProperties": false
      },
      "FieldAttributes": {
        "enum": [
          0,
          1,
          2,
          3,
          4,
          5,
          6,
          7,
          16,
          32,
          64,
          128,
          256,
          512,
          1024,
          4096,
          8192,
          32768,
          38144
        ],
        "type": "integer",
        "format": "int32"
      },
      "FieldInfo": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "nullable": true,
            "readOnly": true
          },
          "declaringType": {
            "$ref": "#/components/schemas/Type"
          },
          "reflectedType": {
            "$ref": "#/components/schemas/Type"
          },
          "module": {
            "$ref": "#/components/schemas/Module"
          },
          "customAttributes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CustomAttributeData"
            },
            "nullable": true,
            "readOnly": true
          },
          "isCollectible": {
            "type": "boolean",
            "readOnly": true
          },
          "metadataToken": {
            "type": "integer",
            "format": "int32",
            "readOnly": true
          },
          "memberType": {
            "$ref": "#/components/schemas/MemberTypes"
          },
          "attributes": {
            "$ref": "#/components/schemas/FieldAttributes"
          },
          "fieldType": {
            "$ref": "#/components/schemas/Type"
          },
          "isInitOnly": {
            "type": "boolean",
            "readOnly": true
          },
          "isLiteral": {
            "type": "boolean",
            "readOnly": true
          },
          "isNotSerialized": {
            "type": "boolean",
            "readOnly": true,
            "deprecated": true
          },
          "isPinvokeImpl": {
            "type": "boolean",
            "readOnly": true
          },
          "isSpecialName": {
            "type": "boolean",
            "readOnly": true
          },
          "isStatic": {
            "type": "boolean",
            "readOnly": true
          },
          "isAssembly": {
            "type": "boolean",
            "readOnly": true
          },
          "isFamily": {
            "type": "boolean",
            "readOnly": true
          },
          "isFamilyAndAssembly": {
            "type": "boolean",
            "readOnly": true
          },
          "isFamilyOrAssembly": {
            "type": "boolean",
            "readOnly": true
          },
          "isPrivate": {
            "type": "boolean",
            "readOnly": true
          },
          "isPublic": {
            "type": "boolean",
            "readOnly": true
          },
          "isSecurityCritical": {
            "type": "boolean",
            "readOnly": true
          },
          "isSecuritySafeCritical": {
            "type": "boolean",
            "readOnly": true
          },
          "isSecurityTransparent": {
            "type": "boolean",
            "readOnly": true
          },
          "fieldHandle": {
            "$ref": "#/components/schemas/RuntimeFieldHandle"
          }
        },
        "additionalProperties": false
      },
      "GenericParameterAttributes": {
        "enum": [
          0,
          1,
          2,
          3,
          4,
          8,
          16,
          28,
          32
        ],
        "type": "integer",
        "format": "int32"
      },
      "GiftCardOrderRequest": {
        "type": "object",
        "properties": {
          "productId": {
            "type": "string",
            "nullable": true
          },
          "quantity": {
            "type": "string",
            "nullable": true
          },
          "unitPrice": {
            "type": "number",
            "format": "double"
          },
          "customIdentifier": {
            "type": "string",
            "nullable": true
          },
          "senderName": {
            "type": "string",
            "nullable": true
          },
          "recipientEmail": {
            "type": "string",
            "nullable": true
          },
          "recipientPhoneDetails": {
            "$ref": "#/components/schemas/RecipientPhoneDetails"
          },
          "preOrder": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "GraphConversion": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "nullable": true
          },
          "source_account_id": {
            "type": "string",
            "nullable": true
          },
          "destination_account_id": {
            "type": "string",
            "nullable": true
          },
          "currency_source": {
            "type": "string",
            "nullable": true
          },
          "currency_destination": {
            "type": "string",
            "nullable": true
          },
          "amount_source": {
            "type": "integer",
            "format": "int32"
          },
          "amount_destination": {
            "type": "integer",
            "format": "int32"
          },
          "rate": {
            "type": "integer",
            "format": "int32"
          },
          "status": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "GraphConversionGraphStandardResponse": {
        "type": "object",
        "properties": {
          "status": {
            "type": "string",
            "nullable": true
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "data": {
            "$ref": "#/components/schemas/GraphConversion"
          }
        },
        "additionalProperties": false
      },
      "GraphPayout": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "nullable": true
          },
          "account_id": {
            "type": "string",
            "nullable": true
          },
          "destination_id": {
            "type": "string",
            "nullable": true
          },
          "type": {
            "type": "string",
            "nullable": true
          },
          "amount": {
            "type": "integer",
            "format": "int32"
          },
          "fee": {
            "type": "integer",
            "format": "int32"
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "status": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "GraphPayoutGraphStandardResponse": {
        "type": "object",
        "properties": {
          "status": {
            "type": "string",
            "nullable": true
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "data": {
            "$ref": "#/components/schemas/GraphPayout"
          }
        },
        "additionalProperties": false
      },
      "GraphPayoutListGraphStandardResponse": {
        "type": "object",
        "properties": {
          "status": {
            "type": "string",
            "nullable": true
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/GraphPayout"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "GraphRatesResponse": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "nullable": true
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "data": {
            "type": "object",
            "additionalProperties": {
              "type": "number",
              "format": "double"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "GraphTransaction": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "nullable": true
          },
          "account_id": {
            "type": "string",
            "nullable": true
          },
          "kind": {
            "type": "string",
            "nullable": true
          },
          "type": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "currency": {
            "type": "string",
            "nullable": true
          },
          "amount": {
            "type": "integer",
            "format": "int32"
          },
          "status": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "HasPinResponse": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "hasPin": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "HostString": {
        "type": "object",
        "properties": {
          "value": {
            "type": "string",
            "nullable": true
          },
          "hasValue": {
            "type": "boolean",
            "readOnly": true
          },
          "host": {
            "type": "string",
            "nullable": true,
            "readOnly": true
          },
          "port": {
            "type": "integer",
            "format": "int32",
            "nullable": true,
            "readOnly": true
          }
        },
        "additionalProperties": false
      },
      "HttpContext": {
        "type": "object",
        "properties": {
          "features": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TypeObjectKeyValuePair"
            },
            "nullable": true,
            "readOnly": true
          },
          "request": {
            "$ref": "#/components/schemas/HttpRequest"
          },
          "response": {
            "$ref": "#/components/schemas/HttpResponse"
          },
          "connection": {
            "$ref": "#/components/schemas/ConnectionInfo"
          },
          "webSockets": {
            "$ref": "#/components/schemas/WebSocketManager"
          },
          "user": {
            "$ref": "#/components/schemas/ClaimsPrincipal"
          },
          "items": {
            "type": "object",
            "additionalProperties": {
              "nullable": true
            },
            "nullable": true
          },
          "requestServices": {
            "$ref": "#/components/schemas/IServiceProvider"
          },
          "requestAborted": {
            "$ref": "#/components/schemas/CancellationToken"
          },
          "traceIdentifier": {
            "type": "string",
            "nullable": true
          },
          "session": {
            "$ref": "#/components/schemas/ISession"
          }
        },
        "additionalProperties": false
      },
      "HttpRequest": {
        "type": "object",
        "properties": {
          "httpContext": {
            "$ref": "#/components/schemas/HttpContext"
          },
          "method": {
            "type": "string",
            "nullable": true
          },
          "scheme": {
            "type": "string",
            "nullable": true
          },
          "isHttps": {
            "type": "boolean"
          },
          "host": {
            "$ref": "#/components/schemas/HostString"
          },
          "pathBase": {
            "$ref": "#/components/schemas/PathString"
          },
          "path": {
            "$ref": "#/components/schemas/PathString"
          },
          "queryString": {
            "$ref": "#/components/schemas/QueryString"
          },
          "query": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/StringStringValuesKeyValuePair"
            },
            "nullable": true
          },
          "protocol": {
            "type": "string",
            "nullable": true
          },
          "headers": {
            "type": "object",
            "additionalProperties": {
              "type": "array",
              "items": {
                "type": "string"
              }
            },
            "nullable": true,
            "readOnly": true
          },
          "cookies": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/StringStringKeyValuePair"
            },
            "nullable": true
          },
          "contentLength": {
            "type": "integer",
            "format": "int64",
            "nullable": true
          },
          "contentType": {
            "type": "string",
            "nullable": true
          },
          "body": {
            "type": "string",
            "format": "binary",
            "nullable": true
          },
          "bodyReader": {
            "type": "string",
            "format": "binary",
            "nullable": true,
            "readOnly": true
          },
          "hasFormContentType": {
            "type": "boolean",
            "readOnly": true
          },
          "form": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/StringStringValuesKeyValuePair"
            },
            "nullable": true
          },
          "routeValues": {
            "type": "object",
            "additionalProperties": { },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "HttpResponse": {
        "type": "object",
        "properties": {
          "httpContext": {
            "$ref": "#/components/schemas/HttpContext"
          },
          "statusCode": {
            "type": "integer",
            "format": "int32"
          },
          "headers": {
            "type": "object",
            "additionalProperties": {
              "type": "array",
              "items": {
                "type": "string"
              }
            },
            "nullable": true,
            "readOnly": true
          },
          "body": {
            "type": "string",
            "format": "binary",
            "nullable": true
          },
          "bodyWriter": {
            "$ref": "#/components/schemas/PipeWriter"
          },
          "contentLength": {
            "type": "integer",
            "format": "int64",
            "nullable": true
          },
          "contentType": {
            "type": "string",
            "nullable": true
          },
          "cookies": {
            "$ref": "#/components/schemas/IResponseCookies"
          },
          "hasStarted": {
            "type": "boolean",
            "readOnly": true
          }
        },
        "additionalProperties": false
      },
      "ICustomAttributeProvider": {
        "type": "object",
        "additionalProperties": false
      },
      "IIdentity": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "nullable": true,
            "readOnly": true
          },
          "authenticationType": {
            "type": "string",
            "nullable": true,
            "readOnly": true
          },
          "isAuthenticated": {
            "type": "boolean",
            "readOnly": true
          }
        },
        "additionalProperties": false
      },
      "IPAddress": {
        "type": "object",
        "properties": {
          "addressFamily": {
            "$ref": "#/components/schemas/AddressFamily"
          },
          "scopeId": {
            "type": "integer",
            "format": "int64"
          },
          "isIPv6Multicast": {
            "type": "boolean",
            "readOnly": true
          },
          "isIPv6LinkLocal": {
            "type": "boolean",
            "readOnly": true
          },
          "isIPv6SiteLocal": {
            "type": "boolean",
            "readOnly": true
          },
          "isIPv6Teredo": {
            "type": "boolean",
            "readOnly": true
          },
          "isIPv6UniqueLocal": {
            "type": "boolean",
            "readOnly": true
          },
          "isIPv4MappedToIPv6": {
            "type": "boolean",
            "readOnly": true
          },
          "address": {
            "type": "integer",
            "format": "int64",
            "deprecated": true
          }
        },
        "additionalProperties": false
      },
      "IResponseCookies": {
        "type": "object",
        "additionalProperties": false
      },
      "IServiceProvider": {
        "type": "object",
        "additionalProperties": false
      },
      "ISession": {
        "type": "object",
        "properties": {
          "isAvailable": {
            "type": "boolean",
            "readOnly": true
          },
          "id": {
            "type": "string",
            "nullable": true,
            "readOnly": true
          },
          "keys": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true,
            "readOnly": true
          }
        },
        "additionalProperties": false
      },
      "InitiateBillRequestDto": {
        "type": "object",
        "properties": {
          "billPaymentProductId": {
            "type": "string",
            "nullable": true
          },
          "amount": {
            "type": "number",
            "format": "double"
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "paymentIdentifier": {
            "type": "string",
            "nullable": true
          },
          "email": {
            "type": "string",
            "nullable": true
          },
          "phoneNumber": {
            "type": "string",
            "nullable": true
          },
          "customerId": {
            "type": "string",
            "nullable": true
          },
          "metadata": {
            "$ref": "#/components/schemas/BillMetadataDto"
          }
        },
        "additionalProperties": false
      },
      "InitiateCoralPayPaymentCommand": {
        "type": "object",
        "properties": {
          "userId": {
            "type": "string",
            "format": "uuid"
          },
          "clientReference": {
            "type": "string",
            "nullable": true
          },
          "amount": {
            "type": "number",
            "format": "double"
          },
          "requestData": {
            "$ref": "#/components/schemas/VendValueRequest"
          },
          "providerName": {
            "type": "string",
            "nullable": true
          },
          "productName": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "InitiateRemitaCollectionPaymentCommand": {
        "type": "object",
        "properties": {
          "userId": {
            "type": "string",
            "format": "uuid"
          },
          "billPaymentProductId": {
            "type": "string",
            "nullable": true
          },
          "amount": {
            "type": "number",
            "format": "double"
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "paymentIdentifier": {
            "type": "string",
            "nullable": true
          },
          "email": {
            "type": "string",
            "nullable": true
          },
          "phoneNumber": {
            "type": "string",
            "nullable": true
          },
          "customerId": {
            "type": "string",
            "nullable": true
          },
          "metadata": {
            "$ref": "#/components/schemas/BillMetadataDto"
          },
          "serviceName": {
            "type": "string",
            "nullable": true
          },
          "providerName": {
            "type": "string",
            "nullable": true
          },
          "productName": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "InitiateRemitaVendingPaymentCommand": {
        "type": "object",
        "properties": {
          "userId": {
            "type": "string",
            "format": "uuid"
          },
          "productCode": {
            "type": "string",
            "nullable": true
          },
          "clientReference": {
            "type": "string",
            "nullable": true
          },
          "amount": {
            "type": "number",
            "format": "double"
          },
          "data": {
            "$ref": "#/components/schemas/VendingTransactionDataDto"
          },
          "categoryCode": {
            "type": "string",
            "nullable": true
          },
          "providerCode": {
            "type": "string",
            "nullable": true
          },
          "providerName": {
            "type": "string",
            "nullable": true
          },
          "productName": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "InitiateTransferCommand": {
        "type": "object",
        "properties": {
          "request": {
            "$ref": "#/components/schemas/InitiateTransferRequest"
          }
        },
        "additionalProperties": false
      },
      "InitiateTransferRequest": {
        "type": "object",
        "properties": {
          "accountNumber": {
            "type": "string",
            "nullable": true
          },
          "bankCode": {
            "type": "string",
            "nullable": true
          },
          "amount": {
            "type": "number",
            "format": "double"
          },
          "narration": {
            "type": "string",
            "nullable": true
          },
          "currency": {
            "type": "string",
            "nullable": true
          },
          "reference": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "InitiateWithdrawalRequest": {
        "type": "object",
        "properties": {
          "userId": {
            "type": "string",
            "format": "uuid"
          },
          "amount": {
            "type": "number",
            "format": "double"
          },
          "accountNumber": {
            "type": "string",
            "nullable": true
          },
          "bankCode": {
            "type": "string",
            "nullable": true
          },
          "bankName": {
            "type": "string",
            "nullable": true
          },
          "accountName": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "isBeneficiary": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "IntPtr": {
        "type": "object",
        "additionalProperties": false
      },
      "KeySizes": {
        "type": "object",
        "properties": {
          "minSize": {
            "type": "integer",
            "format": "int32"
          },
          "maxSize": {
            "type": "integer",
            "format": "int32"
          },
          "skipSize": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "LayoutKind": {
        "enum": [
          0,
          2,
          3
        ],
        "type": "integer",
        "format": "int32"
      },
      "LoginModel": {
        "type": "object",
        "properties": {
          "email": {
            "type": "string",
            "nullable": true
          },
          "password": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "LoginResponse": {
        "type": "object",
        "properties": {
          "token": {
            "type": "string",
            "nullable": true
          },
          "userId": {
            "type": "string",
            "nullable": true
          },
          "email": {
            "type": "string",
            "nullable": true
          },
          "surname": {
            "type": "string",
            "nullable": true
          },
          "refreshToken": {
            "type": "string",
            "nullable": true
          },
          "hasPin": {
            "type": "boolean"
          },
          "verified": {
            "type": "boolean"
          },
          "accountStatus": {
            "$ref": "#/components/schemas/AccountStatus"
          },
          "success": {
            "type": "boolean"
          },
          "expireDate": {
            "type": "string",
            "format": "date-time"
          },
          "message": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "LoginWithPinCommand": {
        "type": "object",
        "properties": {
          "userId": {
            "type": "string",
            "nullable": true
          },
          "pin": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "MemberInfo": {
        "type": "object",
        "properties": {
          "memberType": {
            "$ref": "#/components/schemas/MemberTypes"
          },
          "name": {
            "type": "string",
            "nullable": true,
            "readOnly": true
          },
          "declaringType": {
            "$ref": "#/components/schemas/Type"
          },
          "reflectedType": {
            "$ref": "#/components/schemas/Type"
          },
          "module": {
            "$ref": "#/components/schemas/Module"
          },
          "customAttributes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CustomAttributeData"
            },
            "nullable": true,
            "readOnly": true
          },
          "isCollectible": {
            "type": "boolean",
            "readOnly": true
          },
          "metadataToken": {
            "type": "integer",
            "format": "int32",
            "readOnly": true
          }
        },
        "additionalProperties": false
      },
      "MemberTypes": {
        "enum": [
          1,
          2,
          4,
          8,
          16,
          32,
          64,
          128,
          191
        ],
        "type": "integer",
        "format": "int32"
      },
      "MethodAttributes": {
        "enum": [
          0,
          1,
          2,
          3,
          4,
          5,
          6,
          7,
          8,
          16,
          32,
          64,
          128,
          256,
          512,
          1024,
          2048,
          4096,
          8192,
          16384,
          32768,
          53248
        ],
        "type": "integer",
        "format": "int32"
      },
      "MethodBase": {
        "type": "object",
        "properties": {
          "memberType": {
            "$ref": "#/components/schemas/MemberTypes"
          },
          "name": {
            "type": "string",
            "nullable": true,
            "readOnly": true
          },
          "declaringType": {
            "$ref": "#/components/schemas/Type"
          },
          "reflectedType": {
            "$ref": "#/components/schemas/Type"
          },
          "module": {
            "$ref": "#/components/schemas/Module"
          },
          "customAttributes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CustomAttributeData"
            },
            "nullable": true,
            "readOnly": true
          },
          "isCollectible": {
            "type": "boolean",
            "readOnly": true
          },
          "metadataToken": {
            "type": "integer",
            "format": "int32",
            "readOnly": true
          },
          "attributes": {
            "$ref": "#/components/schemas/MethodAttributes"
          },
          "methodImplementationFlags": {
            "$ref": "#/components/schemas/MethodImplAttributes"
          },
          "callingConvention": {
            "$ref": "#/components/schemas/CallingConventions"
          },
          "isAbstract": {
            "type": "boolean",
            "readOnly": true
          },
          "isConstructor": {
            "type": "boolean",
            "readOnly": true
          },
          "isFinal": {
            "type": "boolean",
            "readOnly": true
          },
          "isHideBySig": {
            "type": "boolean",
            "readOnly": true
          },
          "isSpecialName": {
            "type": "boolean",
            "readOnly": true
          },
          "isStatic": {
            "type": "boolean",
            "readOnly": true
          },
          "isVirtual": {
            "type": "boolean",
            "readOnly": true
          },
          "isAssembly": {
            "type": "boolean",
            "readOnly": true
          },
          "isFamily": {
            "type": "boolean",
            "readOnly": true
          },
          "isFamilyAndAssembly": {
            "type": "boolean",
            "readOnly": true
          },
          "isFamilyOrAssembly": {
            "type": "boolean",
            "readOnly": true
          },
          "isPrivate": {
            "type": "boolean",
            "readOnly": true
          },
          "isPublic": {
            "type": "boolean",
            "readOnly": true
          },
          "isConstructedGenericMethod": {
            "type": "boolean",
            "readOnly": true
          },
          "isGenericMethod": {
            "type": "boolean",
            "readOnly": true
          },
          "isGenericMethodDefinition": {
            "type": "boolean",
            "readOnly": true
          },
          "containsGenericParameters": {
            "type": "boolean",
            "readOnly": true
          },
          "methodHandle": {
            "$ref": "#/components/schemas/RuntimeMethodHandle"
          },
          "isSecurityCritical": {
            "type": "boolean",
            "readOnly": true
          },
          "isSecuritySafeCritical": {
            "type": "boolean",
            "readOnly": true
          },
          "isSecurityTransparent": {
            "type": "boolean",
            "readOnly": true
          }
        },
        "additionalProperties": false
      },
      "MethodImplAttributes": {
        "enum": [
          0,
          1,
          2,
          3,
          4,
          8,
          16,
          32,
          64,
          128,
          256,
          512,
          4096,
          65535
        ],
        "type": "integer",
        "format": "int32"
      },
      "MethodInfo": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "nullable": true,
            "readOnly": true
          },
          "declaringType": {
            "$ref": "#/components/schemas/Type"
          },
          "reflectedType": {
            "$ref": "#/components/schemas/Type"
          },
          "module": {
            "$ref": "#/components/schemas/Module"
          },
          "customAttributes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CustomAttributeData"
            },
            "nullable": true,
            "readOnly": true
          },
          "isCollectible": {
            "type": "boolean",
            "readOnly": true
          },
          "metadataToken": {
            "type": "integer",
            "format": "int32",
            "readOnly": true
          },
          "attributes": {
            "$ref": "#/components/schemas/MethodAttributes"
          },
          "methodImplementationFlags": {
            "$ref": "#/components/schemas/MethodImplAttributes"
          },
          "callingConvention": {
            "$ref": "#/components/schemas/CallingConventions"
          },
          "isAbstract": {
            "type": "boolean",
            "readOnly": true
          },
          "isConstructor": {
            "type": "boolean",
            "readOnly": true
          },
          "isFinal": {
            "type": "boolean",
            "readOnly": true
          },
          "isHideBySig": {
            "type": "boolean",
            "readOnly": true
          },
          "isSpecialName": {
            "type": "boolean",
            "readOnly": true
          },
          "isStatic": {
            "type": "boolean",
            "readOnly": true
          },
          "isVirtual": {
            "type": "boolean",
            "readOnly": true
          },
          "isAssembly": {
            "type": "boolean",
            "readOnly": true
          },
          "isFamily": {
            "type": "boolean",
            "readOnly": true
          },
          "isFamilyAndAssembly": {
            "type": "boolean",
            "readOnly": true
          },
          "isFamilyOrAssembly": {
            "type": "boolean",
            "readOnly": true
          },
          "isPrivate": {
            "type": "boolean",
            "readOnly": true
          },
          "isPublic": {
            "type": "boolean",
            "readOnly": true
          },
          "isConstructedGenericMethod": {
            "type": "boolean",
            "readOnly": true
          },
          "isGenericMethod": {
            "type": "boolean",
            "readOnly": true
          },
          "isGenericMethodDefinition": {
            "type": "boolean",
            "readOnly": true
          },
          "containsGenericParameters": {
            "type": "boolean",
            "readOnly": true
          },
          "methodHandle": {
            "$ref": "#/components/schemas/RuntimeMethodHandle"
          },
          "isSecurityCritical": {
            "type": "boolean",
            "readOnly": true
          },
          "isSecuritySafeCritical": {
            "type": "boolean",
            "readOnly": true
          },
          "isSecurityTransparent": {
            "type": "boolean",
            "readOnly": true
          },
          "memberType": {
            "$ref": "#/components/schemas/MemberTypes"
          },
          "returnParameter": {
            "$ref": "#/components/schemas/ParameterInfo"
          },
          "returnType": {
            "$ref": "#/components/schemas/Type"
          },
          "returnTypeCustomAttributes": {
            "$ref": "#/components/schemas/ICustomAttributeProvider"
          }
        },
        "additionalProperties": false
      },
      "MobileNetworkPrefix": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "prefix": {
            "type": "string",
            "nullable": true
          },
          "networkCode": {
            "type": "string",
            "nullable": true
          },
          "networkName": {
            "type": "string",
            "nullable": true
          },
          "providerCode": {
            "type": "string",
            "nullable": true
          },
          "countryCode": {
            "type": "string",
            "nullable": true
          },
          "isActive": {
            "type": "boolean"
          },
          "sortOrder": {
            "type": "integer",
            "format": "int32"
          },
          "createdAtUtc": {
            "type": "string",
            "format": "date-time"
          },
          "updatedAtUtc": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Module": {
        "type": "object",
        "properties": {
          "assembly": {
            "$ref": "#/components/schemas/Assembly"
          },
          "fullyQualifiedName": {
            "type": "string",
            "nullable": true,
            "readOnly": true
          },
          "name": {
            "type": "string",
            "nullable": true,
            "readOnly": true
          },
          "mdStreamVersion": {
            "type": "integer",
            "format": "int32",
            "readOnly": true
          },
          "moduleVersionId": {
            "type": "string",
            "format": "uuid",
            "readOnly": true
          },
          "scopeName": {
            "type": "string",
            "nullable": true,
            "readOnly": true
          },
          "moduleHandle": {
            "$ref": "#/components/schemas/ModuleHandle"
          },
          "customAttributes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CustomAttributeData"
            },
            "nullable": true,
            "readOnly": true
          },
          "metadataToken": {
            "type": "integer",
            "format": "int32",
            "readOnly": true
          }
        },
        "additionalProperties": false
      },
      "ModuleHandle": {
        "type": "object",
        "properties": {
          "mdStreamVersion": {
            "type": "integer",
            "format": "int32",
            "readOnly": true
          }
        },
        "additionalProperties": false
      },
      "Notification": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "userId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "user": {
            "$ref": "#/components/schemas/ApplicationUser"
          },
          "userIds": {
            "type": "array",
            "items": {
              "type": "string",
              "format": "uuid"
            },
            "nullable": true
          },
          "forAll": {
            "type": "boolean"
          },
          "segments": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "targetAccountStatus": {
            "$ref": "#/components/schemas/AccountStatus"
          },
          "targetPlatform": {
            "type": "string",
            "nullable": true
          },
          "fileUrl": {
            "type": "string",
            "nullable": true
          },
          "fileKey": {
            "type": "string",
            "nullable": true
          },
          "pageRoute": {
            "type": "string",
            "nullable": true
          },
          "referenceId": {
            "type": "string",
            "nullable": true
          },
          "disable": {
            "type": "boolean"
          },
          "dateTime": {
            "type": "string",
            "format": "date-time"
          },
          "isRead": {
            "type": "boolean"
          },
          "readAtUtc": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "NotificationItemDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "isRead": {
            "type": "boolean"
          },
          "pageRoute": {
            "type": "string",
            "nullable": true
          },
          "referenceId": {
            "type": "string",
            "nullable": true
          },
          "fileUrl": {
            "type": "string",
            "nullable": true
          },
          "createdAt": {
            "type": "string",
            "format": "date-time"
          }
        },
        "additionalProperties": false
      },
      "NotificationResponse": {
        "type": "object",
        "properties": {
          "unreadCount": {
            "type": "integer",
            "format": "int32"
          },
          "notifications": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/NotificationItemDto"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "NowInvoiceRequest": {
        "type": "object",
        "properties": {
          "price_amount": {
            "type": "number",
            "format": "double"
          },
          "price_currency": {
            "type": "string",
            "nullable": true
          },
          "pay_currency": {
            "type": "string",
            "nullable": true
          },
          "order_id": {
            "type": "string",
            "nullable": true
          },
          "order_description": {
            "type": "string",
            "nullable": true
          },
          "success_url": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "NowPaymentRequest": {
        "type": "object",
        "properties": {
          "price_amount": {
            "type": "number",
            "format": "double"
          },
          "price_currency": {
            "type": "string",
            "nullable": true
          },
          "pay_currency": {
            "type": "string",
            "nullable": true
          },
          "order_id": {
            "type": "string",
            "nullable": true
          },
          "order_description": {
            "type": "string",
            "nullable": true
          },
          "ipn_callback_url": {
            "type": "string",
            "nullable": true
          },
          "is_fee_paid_by_user": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "NowPayoutRequest": {
        "type": "object",
        "properties": {
          "currency": {
            "type": "string",
            "nullable": true
          },
          "amount": {
            "type": "number",
            "format": "double"
          },
          "address": {
            "type": "string",
            "nullable": true
          },
          "ipn_callback_url": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "NowRecurringPaymentRequest": {
        "type": "object",
        "properties": {
          "price_amount": {
            "type": "number",
            "format": "double"
          },
          "price_currency": {
            "type": "string",
            "nullable": true
          },
          "pay_currency": {
            "type": "string",
            "nullable": true
          },
          "order_id": {
            "type": "string",
            "nullable": true
          },
          "order_description": {
            "type": "string",
            "nullable": true
          },
          "ipn_callback_url": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Oid": {
        "type": "object",
        "properties": {
          "value": {
            "type": "string",
            "nullable": true
          },
          "friendlyName": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "P2P": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "totalTradeBuyBase": {
            "type": "string",
            "nullable": true
          },
          "totalTradeSellBase": {
            "type": "string",
            "nullable": true
          },
          "ratePercentage": {
            "type": "integer",
            "format": "int32"
          },
          "completionPercentage": {
            "type": "integer",
            "format": "int32"
          },
          "durationOfTrade": {
            "type": "integer",
            "format": "int32"
          },
          "disable": {
            "type": "boolean"
          },
          "temporalDisable": {
            "type": "boolean"
          },
          "enableBuy": {
            "type": "boolean"
          },
          "enableSell": {
            "type": "boolean"
          },
          "online": {
            "type": "boolean"
          },
          "terms": {
            "type": "string",
            "nullable": true
          },
          "averageReleaseTime": {
            "type": "integer",
            "format": "int32"
          },
          "averagePayTime": {
            "type": "integer",
            "format": "int32"
          },
          "emailVerified": {
            "type": "boolean"
          },
          "smsVerified": {
            "type": "boolean"
          },
          "kycVerified": {
            "type": "boolean"
          },
          "addressVerified": {
            "type": "boolean"
          },
          "currencyId": {
            "type": "string",
            "format": "uuid"
          },
          "currency": {
            "$ref": "#/components/schemas/Currency"
          },
          "cryptoId": {
            "type": "string",
            "format": "uuid"
          },
          "crypto": {
            "$ref": "#/components/schemas/Crypto"
          },
          "p2pPaymentModes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/P2pPaymentMode"
            },
            "nullable": true
          },
          "dateRegistered": {
            "type": "string",
            "format": "date-time"
          },
          "firstTrade": {
            "type": "string",
            "format": "date-time"
          }
        },
        "additionalProperties": false
      },
      "P2pOrder": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "cryptoCurrencyId": {
            "type": "string",
            "format": "uuid"
          },
          "amount": {
            "type": "number",
            "format": "double"
          },
          "paymentModeId": {
            "type": "string",
            "format": "uuid"
          },
          "userId": {
            "type": "string",
            "format": "uuid"
          },
          "date": {
            "type": "string",
            "format": "date-time"
          }
        },
        "additionalProperties": false
      },
      "P2pPaymentMode": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "paymentModeId": {
            "type": "string",
            "format": "uuid"
          },
          "paymentMode": {
            "$ref": "#/components/schemas/PaymentMode"
          },
          "p2PId": {
            "type": "string",
            "format": "uuid"
          },
          "p2P": {
            "$ref": "#/components/schemas/P2P"
          }
        },
        "additionalProperties": false
      },
      "ParameterAttributes": {
        "enum": [
          0,
          1,
          2,
          4,
          8,
          16,
          4096,
          8192,
          16384,
          32768,
          61440
        ],
        "type": "integer",
        "format": "int32"
      },
      "ParameterInfo": {
        "type": "object",
        "properties": {
          "attributes": {
            "$ref": "#/components/schemas/ParameterAttributes"
          },
          "member": {
            "$ref": "#/components/schemas/MemberInfo"
          },
          "name": {
            "type": "string",
            "nullable": true,
            "readOnly": true
          },
          "parameterType": {
            "$ref": "#/components/schemas/Type"
          },
          "position": {
            "type": "integer",
            "format": "int32",
            "readOnly": true
          },
          "isIn": {
            "type": "boolean",
            "readOnly": true
          },
          "isLcid": {
            "type": "boolean",
            "readOnly": true
          },
          "isOptional": {
            "type": "boolean",
            "readOnly": true
          },
          "isOut": {
            "type": "boolean",
            "readOnly": true
          },
          "isRetval": {
            "type": "boolean",
            "readOnly": true
          },
          "defaultValue": {
            "nullable": true,
            "readOnly": true
          },
          "rawDefaultValue": {
            "nullable": true,
            "readOnly": true
          },
          "hasDefaultValue": {
            "type": "boolean",
            "readOnly": true
          },
          "customAttributes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CustomAttributeData"
            },
            "nullable": true,
            "readOnly": true
          },
          "metadataToken": {
            "type": "integer",
            "format": "int32",
            "readOnly": true
          }
        },
        "additionalProperties": false
      },
      "PathString": {
        "type": "object",
        "properties": {
          "value": {
            "type": "string",
            "nullable": true
          },
          "hasValue": {
            "type": "boolean",
            "readOnly": true
          }
        },
        "additionalProperties": false
      },
      "PaymentMode": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "accountNumber": {
            "type": "string",
            "nullable": true
          },
          "accountName": {
            "type": "string",
            "nullable": true
          },
          "bankName": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "PipeWriter": {
        "type": "object",
        "properties": {
          "canGetUnflushedBytes": {
            "type": "boolean",
            "readOnly": true
          },
          "unflushedBytes": {
            "type": "integer",
            "format": "int64",
            "readOnly": true
          }
        },
        "additionalProperties": false
      },
      "ProblemDetails": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "nullable": true
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "status": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "detail": {
            "type": "string",
            "nullable": true
          },
          "instance": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": { }
      },
      "ProcessTransactionRequestDto": {
        "type": "object",
        "properties": {
          "rrr": {
            "type": "string",
            "nullable": true
          },
          "paymentIdentifier": {
            "type": "string",
            "nullable": true
          },
          "amount": {
            "type": "number",
            "format": "double"
          }
        },
        "additionalProperties": false
      },
      "PropertyAttributes": {
        "enum": [
          0,
          512,
          1024,
          4096,
          8192,
          16384,
          32768,
          62464
        ],
        "type": "integer",
        "format": "int32"
      },
      "PropertyInfo": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "nullable": true,
            "readOnly": true
          },
          "declaringType": {
            "$ref": "#/components/schemas/Type"
          },
          "reflectedType": {
            "$ref": "#/components/schemas/Type"
          },
          "module": {
            "$ref": "#/components/schemas/Module"
          },
          "customAttributes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CustomAttributeData"
            },
            "nullable": true,
            "readOnly": true
          },
          "isCollectible": {
            "type": "boolean",
            "readOnly": true
          },
          "metadataToken": {
            "type": "integer",
            "format": "int32",
            "readOnly": true
          },
          "memberType": {
            "$ref": "#/components/schemas/MemberTypes"
          },
          "propertyType": {
            "$ref": "#/components/schemas/Type"
          },
          "attributes": {
            "$ref": "#/components/schemas/PropertyAttributes"
          },
          "isSpecialName": {
            "type": "boolean",
            "readOnly": true
          },
          "canRead": {
            "type": "boolean",
            "readOnly": true
          },
          "canWrite": {
            "type": "boolean",
            "readOnly": true
          },
          "getMethod": {
            "$ref": "#/components/schemas/MethodInfo"
          },
          "setMethod": {
            "$ref": "#/components/schemas/MethodInfo"
          }
        },
        "additionalProperties": false
      },
      "PublicKey": {
        "type": "object",
        "properties": {
          "encodedKeyValue": {
            "$ref": "#/components/schemas/AsnEncodedData"
          },
          "encodedParameters": {
            "$ref": "#/components/schemas/AsnEncodedData"
          },
          "key": {
            "$ref": "#/components/schemas/AsymmetricAlgorithm"
          },
          "oid": {
            "$ref": "#/components/schemas/Oid"
          }
        },
        "additionalProperties": false
      },
      "QueryString": {
        "type": "object",
        "properties": {
          "value": {
            "type": "string",
            "nullable": true
          },
          "hasValue": {
            "type": "boolean",
            "readOnly": true
          }
        },
        "additionalProperties": false
      },
      "RecipientPhoneDetails": {
        "type": "object",
        "properties": {
          "countryCode": {
            "type": "string",
            "nullable": true
          },
          "phoneNumber": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "RefreshTokenCommand": {
        "type": "object",
        "properties": {
          "refreshToken": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "RegisterModel": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "nullable": true
          },
          "email": {
            "type": "string",
            "nullable": true
          },
          "phoneNumber": {
            "type": "string",
            "nullable": true
          },
          "password": {
            "type": "string",
            "nullable": true
          },
          "referralFrom": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "RegisterNotificationCommand": {
        "type": "object",
        "properties": {
          "userId": {
            "type": "string",
            "nullable": true
          },
          "pushId": {
            "type": "string",
            "nullable": true
          },
          "pushToken": {
            "type": "string",
            "nullable": true
          },
          "platform": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "RegisterResponse": {
        "type": "object",
        "properties": {
          "token": {
            "type": "string",
            "nullable": true
          },
          "expireDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "userId": {
            "type": "string",
            "nullable": true
          },
          "email": {
            "type": "string",
            "nullable": true
          },
          "surname": {
            "type": "string",
            "nullable": true
          },
          "verification": {
            "type": "boolean"
          },
          "success": {
            "type": "boolean"
          },
          "message": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "RemitaPaymentResultDto": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "transactionId": {
            "type": "string",
            "format": "uuid"
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "reference": {
            "type": "string",
            "nullable": true
          },
          "providerReference": {
            "type": "string",
            "nullable": true
          },
          "status": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ResendCodeModel": {
        "type": "object",
        "properties": {
          "email": {
            "type": "string",
            "nullable": true
          },
          "subject": {
            "type": "string",
            "nullable": true
          },
          "message": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ResetPasswordCommand": {
        "type": "object",
        "properties": {
          "email": {
            "type": "string",
            "nullable": true
          },
          "newPassword": {
            "type": "string",
            "nullable": true
          },
          "confirmNewPassword": {
            "type": "string",
            "nullable": true
          },
          "code": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ResetPasswordModel": {
        "type": "object",
        "properties": {
          "email": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ResetPasswordResponse": {
        "type": "object",
        "properties": {
          "email": {
            "type": "string",
            "nullable": true
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "emailStatus": {
            "type": "string",
            "nullable": true
          },
          "success": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "ResetPinCommand": {
        "type": "object",
        "properties": {
          "userId": {
            "type": "string",
            "nullable": true
          },
          "oldPin": {
            "type": "string",
            "nullable": true
          },
          "newPin": {
            "type": "string",
            "nullable": true
          },
          "confirmNewPin": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ResetPinWithOtpCommand": {
        "type": "object",
        "properties": {
          "userId": {
            "type": "string",
            "nullable": true
          },
          "otp": {
            "type": "string",
            "nullable": true
          },
          "newPin": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ResolveAccountRequest": {
        "type": "object",
        "properties": {
          "accountNumber": {
            "type": "string",
            "nullable": true
          },
          "bankCode": {
            "type": "string",
            "nullable": true
          },
          "currency": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "RuntimeFieldHandle": {
        "type": "object",
        "properties": {
          "value": {
            "$ref": "#/components/schemas/IntPtr"
          }
        },
        "additionalProperties": false
      },
      "RuntimeMethodHandle": {
        "type": "object",
        "properties": {
          "value": {
            "$ref": "#/components/schemas/IntPtr"
          }
        },
        "additionalProperties": false
      },
      "RuntimeTypeHandle": {
        "type": "object",
        "properties": {
          "value": {
            "$ref": "#/components/schemas/IntPtr"
          }
        },
        "additionalProperties": false
      },
      "SafeWaitHandle": {
        "type": "object",
        "properties": {
          "isClosed": {
            "type": "boolean",
            "readOnly": true
          },
          "isInvalid": {
            "type": "boolean",
            "readOnly": true
          }
        },
        "additionalProperties": false
      },
      "SecurityRuleSet": {
        "enum": [
          0,
          1,
          2
        ],
        "type": "integer",
        "format": "int32"
      },
      "SendChatMessageRequest": {
        "type": "object",
        "properties": {
          "threadId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "topicId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "prompt": {
            "type": "string",
            "nullable": true
          },
          "searchOnline": {
            "type": "boolean"
          },
          "attachedFileUrls": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SendNotificationResponse": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "notificationId": {
            "type": "string",
            "format": "uuid"
          }
        },
        "additionalProperties": false
      },
      "SetPinCommand": {
        "type": "object",
        "properties": {
          "userId": {
            "type": "string",
            "nullable": true
          },
          "pin": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Setting": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "supportEmail": {
            "type": "string",
            "nullable": true
          },
          "supportPhone": {
            "type": "string",
            "nullable": true
          },
          "receiptFooterNote": {
            "type": "string",
            "nullable": true
          },
          "liveChatApiKey": {
            "type": "string",
            "nullable": true
          },
          "appName": {
            "type": "string",
            "nullable": true
          },
          "appVersion": {
            "type": "string",
            "nullable": true
          },
          "maintenanceMode": {
            "type": "boolean"
          },
          "createdAt": {
            "type": "string",
            "format": "date-time"
          },
          "updatedAt": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SimulatePaymentRequest": {
        "type": "object",
        "properties": {
          "virtual_account_number": {
            "type": "string",
            "nullable": true
          },
          "amount": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SocialLoginCommand": {
        "type": "object",
        "properties": {
          "provider": {
            "type": "string",
            "nullable": true
          },
          "idToken": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "StringStringKeyValuePair": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string",
            "nullable": true
          },
          "value": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "StringStringValuesKeyValuePair": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string",
            "nullable": true
          },
          "value": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        },
        "additionalProperties": false
      },
      "StructLayoutAttribute": {
        "type": "object",
        "properties": {
          "typeId": {
            "nullable": true,
            "readOnly": true
          },
          "value": {
            "$ref": "#/components/schemas/LayoutKind"
          }
        },
        "additionalProperties": false
      },
      "SubmitContactUsMailCommand": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "nullable": true
          },
          "email": {
            "type": "string",
            "nullable": true
          },
          "phoneNumber": {
            "type": "string",
            "nullable": true
          },
          "subject": {
            "type": "string",
            "nullable": true
          },
          "message": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "TokenLoginBiometricCommand": {
        "type": "object",
        "properties": {
          "email": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "TokenLoginCommand": {
        "type": "object",
        "properties": {
          "email": {
            "type": "string",
            "nullable": true
          },
          "password": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "TrackUserActivityCommand": {
        "type": "object",
        "properties": {
          "page": {
            "type": "string",
            "nullable": true
          },
          "deviceId": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Transaction": {
        "required": [
          "transactionReference"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "userId": {
            "type": "string",
            "format": "uuid"
          },
          "user": {
            "$ref": "#/components/schemas/ApplicationUser"
          },
          "uniqueReference": {
            "type": "string",
            "nullable": true
          },
          "optionalNote": {
            "type": "string",
            "nullable": true
          },
          "amount": {
            "type": "number",
            "format": "double"
          },
          "createdAtUtc": {
            "type": "string",
            "format": "date-time"
          },
          "transactionType": {
            "$ref": "#/components/schemas/TransactionTypeEnum"
          },
          "status": {
            "$ref": "#/components/schemas/EntityStatus"
          },
          "transactionReference": {
            "minLength": 1,
            "type": "string"
          },
          "transactionCategoryEnum": {
            "$ref": "#/components/schemas/TransactionCategoryEnum"
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "trackCode": {
            "type": "string",
            "nullable": true
          },
          "transactionVerificationId": {
            "type": "string",
            "nullable": true
          },
          "keyNote": {
            "type": "string",
            "nullable": true
          },
          "keyImage": {
            "type": "string",
            "nullable": true
          },
          "grossAmount": {
            "type": "number",
            "format": "double"
          },
          "feeAmount": {
            "type": "number",
            "format": "double"
          },
          "netAmount": {
            "type": "number",
            "format": "double"
          },
          "currency": {
            "type": "string",
            "nullable": true
          },
          "exchangeRate": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "walletBalanceBefore": {
            "type": "number",
            "format": "double"
          },
          "walletBalanceAfter": {
            "type": "number",
            "format": "double"
          },
          "vendorId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "externalReference": {
            "type": "string",
            "nullable": true
          },
          "relatedTransactionId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "completedAt": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "direction": {
            "$ref": "#/components/schemas/TransactionDirection"
          },
          "benficiaryAccount": {
            "type": "string",
            "nullable": true
          },
          "benficiaryName": {
            "type": "string",
            "nullable": true
          },
          "billServiceCode": {
            "type": "string",
            "nullable": true
          },
          "providerStatus": {
            "type": "string",
            "nullable": true
          },
          "providerMessage": {
            "type": "string",
            "nullable": true
          },
          "providerResponse": {
            "type": "string",
            "nullable": true
          },
          "providerVerifiedAtUtc": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "TransactionCategoryEnum": {
        "enum": [
          1,
          2,
          3
        ],
        "type": "integer",
        "format": "int32"
      },
      "TransactionDirection": {
        "enum": [
          0,
          1
        ],
        "type": "integer",
        "format": "int32"
      },
      "TransactionTypeEnum": {
        "enum": [
          0,
          1,
          2,
          3,
          4,
          5,
          6,
          7,
          8
        ],
        "type": "integer",
        "format": "int32"
      },
      "Type": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "nullable": true,
            "readOnly": true
          },
          "customAttributes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CustomAttributeData"
            },
            "nullable": true,
            "readOnly": true
          },
          "isCollectible": {
            "type": "boolean",
            "readOnly": true
          },
          "metadataToken": {
            "type": "integer",
            "format": "int32",
            "readOnly": true
          },
          "memberType": {
            "$ref": "#/components/schemas/MemberTypes"
          },
          "namespace": {
            "type": "string",
            "nullable": true,
            "readOnly": true
          },
          "assemblyQualifiedName": {
            "type": "string",
            "nullable": true,
            "readOnly": true
          },
          "fullName": {
            "type": "string",
            "nullable": true,
            "readOnly": true
          },
          "assembly": {
            "$ref": "#/components/schemas/Assembly"
          },
          "module": {
            "$ref": "#/components/schemas/Module"
          },
          "isInterface": {
            "type": "boolean",
            "readOnly": true
          },
          "isNested": {
            "type": "boolean",
            "readOnly": true
          },
          "declaringType": {
            "$ref": "#/components/schemas/Type"
          },
          "declaringMethod": {
            "$ref": "#/components/schemas/MethodBase"
          },
          "reflectedType": {
            "$ref": "#/components/schemas/Type"
          },
          "underlyingSystemType": {
            "$ref": "#/components/schemas/Type"
          },
          "isTypeDefinition": {
            "type": "boolean",
            "readOnly": true
          },
          "isArray": {
            "type": "boolean",
            "readOnly": true
          },
          "isByRef": {
            "type": "boolean",
            "readOnly": true
          },
          "isPointer": {
            "type": "boolean",
            "readOnly": true
          },
          "isConstructedGenericType": {
            "type": "boolean",
            "readOnly": true
          },
          "isGenericParameter": {
            "type": "boolean",
            "readOnly": true
          },
          "isGenericTypeParameter": {
            "type": "boolean",
            "readOnly": true
          },
          "isGenericMethodParameter": {
            "type": "boolean",
            "readOnly": true
          },
          "isGenericType": {
            "type": "boolean",
            "readOnly": true
          },
          "isGenericTypeDefinition": {
            "type": "boolean",
            "readOnly": true
          },
          "isSZArray": {
            "type": "boolean",
            "readOnly": true
          },
          "isVariableBoundArray": {
            "type": "boolean",
            "readOnly": true
          },
          "isByRefLike": {
            "type": "boolean",
            "readOnly": true
          },
          "isFunctionPointer": {
            "type": "boolean",
            "readOnly": true
          },
          "isUnmanagedFunctionPointer": {
            "type": "boolean",
            "readOnly": true
          },
          "hasElementType": {
            "type": "boolean",
            "readOnly": true
          },
          "genericTypeArguments": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Type"
            },
            "nullable": true,
            "readOnly": true
          },
          "genericParameterPosition": {
            "type": "integer",
            "format": "int32",
            "readOnly": true
          },
          "genericParameterAttributes": {
            "$ref": "#/components/schemas/GenericParameterAttributes"
          },
          "attributes": {
            "$ref": "#/components/schemas/TypeAttributes"
          },
          "isAbstract": {
            "type": "boolean",
            "readOnly": true
          },
          "isImport": {
            "type": "boolean",
            "readOnly": true
          },
          "isSealed": {
            "type": "boolean",
            "readOnly": true
          },
          "isSpecialName": {
            "type": "boolean",
            "readOnly": true
          },
          "isClass": {
            "type": "boolean",
            "readOnly": true
          },
          "isNestedAssembly": {
            "type": "boolean",
            "readOnly": true
          },
          "isNestedFamANDAssem": {
            "type": "boolean",
            "readOnly": true
          },
          "isNestedFamily": {
            "type": "boolean",
            "readOnly": true
          },
          "isNestedFamORAssem": {
            "type": "boolean",
            "readOnly": true
          },
          "isNestedPrivate": {
            "type": "boolean",
            "readOnly": true
          },
          "isNestedPublic": {
            "type": "boolean",
            "readOnly": true
          },
          "isNotPublic": {
            "type": "boolean",
            "readOnly": true
          },
          "isPublic": {
            "type": "boolean",
            "readOnly": true
          },
          "isAutoLayout": {
            "type": "boolean",
            "readOnly": true
          },
          "isExplicitLayout": {
            "type": "boolean",
            "readOnly": true
          },
          "isLayoutSequential": {
            "type": "boolean",
            "readOnly": true
          },
          "isAnsiClass": {
            "type": "boolean",
            "readOnly": true
          },
          "isAutoClass": {
            "type": "boolean",
            "readOnly": true
          },
          "isUnicodeClass": {
            "type": "boolean",
            "readOnly": true
          },
          "isCOMObject": {
            "type": "boolean",
            "readOnly": true
          },
          "isContextful": {
            "type": "boolean",
            "readOnly": true
          },
          "isEnum": {
            "type": "boolean",
            "readOnly": true
          },
          "isMarshalByRef": {
            "type": "boolean",
            "readOnly": true
          },
          "isPrimitive": {
            "type": "boolean",
            "readOnly": true
          },
          "isValueType": {
            "type": "boolean",
            "readOnly": true
          },
          "isSignatureType": {
            "type": "boolean",
            "readOnly": true
          },
          "isSecurityCritical": {
            "type": "boolean",
            "readOnly": true
          },
          "isSecuritySafeCritical": {
            "type": "boolean",
            "readOnly": true
          },
          "isSecurityTransparent": {
            "type": "boolean",
            "readOnly": true
          },
          "structLayoutAttribute": {
            "$ref": "#/components/schemas/StructLayoutAttribute"
          },
          "typeInitializer": {
            "$ref": "#/components/schemas/ConstructorInfo"
          },
          "typeHandle": {
            "$ref": "#/components/schemas/RuntimeTypeHandle"
          },
          "guid": {
            "type": "string",
            "format": "uuid",
            "readOnly": true
          },
          "baseType": {
            "$ref": "#/components/schemas/Type"
          },
          "isSerializable": {
            "type": "boolean",
            "readOnly": true,
            "deprecated": true
          },
          "containsGenericParameters": {
            "type": "boolean",
            "readOnly": true
          },
          "isVisible": {
            "type": "boolean",
            "readOnly": true
          }
        },
        "additionalProperties": false
      },
      "TypeAttributes": {
        "enum": [
          0,
          1,
          2,
          3,
          4,
          5,
          6,
          7,
          8,
          16,
          24,
          32,
          128,
          256,
          1024,
          2048,
          4096,
          8192,
          16384,
          65536,
          131072,
          196608,
          262144,
          264192,
          1048576,
          12582912
        ],
        "type": "integer",
        "format": "int32"
      },
      "TypeInfo": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "nullable": true,
            "readOnly": true
          },
          "customAttributes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CustomAttributeData"
            },
            "nullable": true,
            "readOnly": true
          },
          "isCollectible": {
            "type": "boolean",
            "readOnly": true
          },
          "metadataToken": {
            "type": "integer",
            "format": "int32",
            "readOnly": true
          },
          "memberType": {
            "$ref": "#/components/schemas/MemberTypes"
          },
          "namespace": {
            "type": "string",
            "nullable": true,
            "readOnly": true
          },
          "assemblyQualifiedName": {
            "type": "string",
            "nullable": true,
            "readOnly": true
          },
          "fullName": {
            "type": "string",
            "nullable": true,
            "readOnly": true
          },
          "assembly": {
            "$ref": "#/components/schemas/Assembly"
          },
          "module": {
            "$ref": "#/components/schemas/Module"
          },
          "isInterface": {
            "type": "boolean",
            "readOnly": true
          },
          "isNested": {
            "type": "boolean",
            "readOnly": true
          },
          "declaringType": {
            "$ref": "#/components/schemas/Type"
          },
          "declaringMethod": {
            "$ref": "#/components/schemas/MethodBase"
          },
          "reflectedType": {
            "$ref": "#/components/schemas/Type"
          },
          "underlyingSystemType": {
            "$ref": "#/components/schemas/Type"
          },
          "isTypeDefinition": {
            "type": "boolean",
            "readOnly": true
          },
          "isArray": {
            "type": "boolean",
            "readOnly": true
          },
          "isByRef": {
            "type": "boolean",
            "readOnly": true
          },
          "isPointer": {
            "type": "boolean",
            "readOnly": true
          },
          "isConstructedGenericType": {
            "type": "boolean",
            "readOnly": true
          },
          "isGenericParameter": {
            "type": "boolean",
            "readOnly": true
          },
          "isGenericTypeParameter": {
            "type": "boolean",
            "readOnly": true
          },
          "isGenericMethodParameter": {
            "type": "boolean",
            "readOnly": true
          },
          "isGenericType": {
            "type": "boolean",
            "readOnly": true
          },
          "isGenericTypeDefinition": {
            "type": "boolean",
            "readOnly": true
          },
          "isSZArray": {
            "type": "boolean",
            "readOnly": true
          },
          "isVariableBoundArray": {
            "type": "boolean",
            "readOnly": true
          },
          "isByRefLike": {
            "type": "boolean",
            "readOnly": true
          },
          "isFunctionPointer": {
            "type": "boolean",
            "readOnly": true
          },
          "isUnmanagedFunctionPointer": {
            "type": "boolean",
            "readOnly": true
          },
          "hasElementType": {
            "type": "boolean",
            "readOnly": true
          },
          "genericTypeArguments": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Type"
            },
            "nullable": true,
            "readOnly": true
          },
          "genericParameterPosition": {
            "type": "integer",
            "format": "int32",
            "readOnly": true
          },
          "genericParameterAttributes": {
            "$ref": "#/components/schemas/GenericParameterAttributes"
          },
          "attributes": {
            "$ref": "#/components/schemas/TypeAttributes"
          },
          "isAbstract": {
            "type": "boolean",
            "readOnly": true
          },
          "isImport": {
            "type": "boolean",
            "readOnly": true
          },
          "isSealed": {
            "type": "boolean",
            "readOnly": true
          },
          "isSpecialName": {
            "type": "boolean",
            "readOnly": true
          },
          "isClass": {
            "type": "boolean",
            "readOnly": true
          },
          "isNestedAssembly": {
            "type": "boolean",
            "readOnly": true
          },
          "isNestedFamANDAssem": {
            "type": "boolean",
            "readOnly": true
          },
          "isNestedFamily": {
            "type": "boolean",
            "readOnly": true
          },
          "isNestedFamORAssem": {
            "type": "boolean",
            "readOnly": true
          },
          "isNestedPrivate": {
            "type": "boolean",
            "readOnly": true
          },
          "isNestedPublic": {
            "type": "boolean",
            "readOnly": true
          },
          "isNotPublic": {
            "type": "boolean",
            "readOnly": true
          },
          "isPublic": {
            "type": "boolean",
            "readOnly": true
          },
          "isAutoLayout": {
            "type": "boolean",
            "readOnly": true
          },
          "isExplicitLayout": {
            "type": "boolean",
            "readOnly": true
          },
          "isLayoutSequential": {
            "type": "boolean",
            "readOnly": true
          },
          "isAnsiClass": {
            "type": "boolean",
            "readOnly": true
          },
          "isAutoClass": {
            "type": "boolean",
            "readOnly": true
          },
          "isUnicodeClass": {
            "type": "boolean",
            "readOnly": true
          },
          "isCOMObject": {
            "type": "boolean",
            "readOnly": true
          },
          "isContextful": {
            "type": "boolean",
            "readOnly": true
          },
          "isEnum": {
            "type": "boolean",
            "readOnly": true
          },
          "isMarshalByRef": {
            "type": "boolean",
            "readOnly": true
          },
          "isPrimitive": {
            "type": "boolean",
            "readOnly": true
          },
          "isValueType": {
            "type": "boolean",
            "readOnly": true
          },
          "isSignatureType": {
            "type": "boolean",
            "readOnly": true
          },
          "isSecurityCritical": {
            "type": "boolean",
            "readOnly": true
          },
          "isSecuritySafeCritical": {
            "type": "boolean",
            "readOnly": true
          },
          "isSecurityTransparent": {
            "type": "boolean",
            "readOnly": true
          },
          "structLayoutAttribute": {
            "$ref": "#/components/schemas/StructLayoutAttribute"
          },
          "typeInitializer": {
            "$ref": "#/components/schemas/ConstructorInfo"
          },
          "typeHandle": {
            "$ref": "#/components/schemas/RuntimeTypeHandle"
          },
          "guid": {
            "type": "string",
            "format": "uuid",
            "readOnly": true
          },
          "baseType": {
            "$ref": "#/components/schemas/Type"
          },
          "isSerializable": {
            "type": "boolean",
            "readOnly": true,
            "deprecated": true
          },
          "containsGenericParameters": {
            "type": "boolean",
            "readOnly": true
          },
          "isVisible": {
            "type": "boolean",
            "readOnly": true
          },
          "genericTypeParameters": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Type"
            },
            "nullable": true,
            "readOnly": true
          },
          "declaredConstructors": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ConstructorInfo"
            },
            "nullable": true,
            "readOnly": true
          },
          "declaredEvents": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/EventInfo"
            },
            "nullable": true,
            "readOnly": true
          },
          "declaredFields": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/FieldInfo"
            },
            "nullable": true,
            "readOnly": true
          },
          "declaredMembers": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MemberInfo"
            },
            "nullable": true,
            "readOnly": true
          },
          "declaredMethods": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MethodInfo"
            },
            "nullable": true,
            "readOnly": true
          },
          "declaredNestedTypes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TypeInfo"
            },
            "nullable": true,
            "readOnly": true
          },
          "declaredProperties": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PropertyInfo"
            },
            "nullable": true,
            "readOnly": true
          },
          "implementedInterfaces": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Type"
            },
            "nullable": true,
            "readOnly": true
          }
        },
        "additionalProperties": false
      },
      "TypeObjectKeyValuePair": {
        "type": "object",
        "properties": {
          "key": {
            "$ref": "#/components/schemas/Type"
          },
          "value": {
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateNotificationRequest": {
        "type": "object",
        "properties": {
          "notificationId": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateUserDto": {
        "type": "object",
        "properties": {
          "firstName": {
            "type": "string",
            "nullable": true
          },
          "surName": {
            "type": "string",
            "nullable": true
          },
          "otherName": {
            "type": "string",
            "nullable": true
          },
          "phoneNumber": {
            "type": "string",
            "nullable": true
          },
          "accountStatus": {
            "$ref": "#/components/schemas/AccountStatus"
          },
          "address": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpgradeTier1Model": {
        "required": [
          "bvn",
          "dob",
          "nin"
        ],
        "type": "object",
        "properties": {
          "bvn": {
            "minLength": 1,
            "type": "string"
          },
          "nin": {
            "minLength": 1,
            "type": "string"
          },
          "dob": {
            "type": "string",
            "format": "date-time"
          }
        },
        "additionalProperties": false
      },
      "UploadResponseDto": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "image": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UserBeneficiary": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "userId": {
            "type": "string",
            "format": "uuid"
          },
          "user": {
            "$ref": "#/components/schemas/ApplicationUser"
          },
          "accountNumber": {
            "type": "string",
            "nullable": true
          },
          "bankCode": {
            "type": "string",
            "nullable": true
          },
          "bankName": {
            "type": "string",
            "nullable": true
          },
          "accountName": {
            "type": "string",
            "nullable": true
          },
          "date": {
            "type": "string",
            "format": "date-time"
          }
        },
        "additionalProperties": false
      },
      "UserDto": {
        "type": "object",
        "properties": {
          "surName": {
            "type": "string",
            "nullable": true
          },
          "firstName": {
            "type": "string",
            "nullable": true
          },
          "otherName": {
            "type": "string",
            "nullable": true
          },
          "idNumber": {
            "type": "string",
            "nullable": true
          },
          "accountStatus": {
            "$ref": "#/components/schemas/AccountStatus"
          },
          "lastLoggedInAtUtc": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "creationUTC": {
            "type": "string",
            "format": "date-time"
          },
          "date": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "passportUrl": {
            "type": "string",
            "nullable": true
          },
          "passportKey": {
            "type": "string",
            "nullable": true
          },
          "hasDedicatedAccount": {
            "type": "boolean"
          },
          "accountNumber": {
            "type": "string",
            "nullable": true
          },
          "bankAccountName": {
            "type": "string",
            "nullable": true
          },
          "bankName": {
            "type": "string",
            "nullable": true
          },
          "role": {
            "type": "string",
            "nullable": true
          },
          "fullname": {
            "type": "string",
            "nullable": true
          },
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "userName": {
            "type": "string",
            "nullable": true
          },
          "email": {
            "type": "string",
            "nullable": true
          },
          "emailConfirmed": {
            "type": "boolean"
          },
          "phoneNumber": {
            "type": "string",
            "nullable": true
          },
          "phoneNumberConfirmed": {
            "type": "boolean"
          },
          "twoFactorEnabled": {
            "type": "boolean"
          },
          "lockoutEnd": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "lockoutEnabled": {
            "type": "boolean"
          },
          "accessFailedCount": {
            "type": "integer",
            "format": "int32"
          },
          "nairaAmount": {
            "type": "number",
            "format": "double"
          },
          "usdAmount": {
            "type": "number",
            "format": "double"
          },
          "eurAmount": {
            "type": "number",
            "format": "double"
          },
          "gbpAmount": {
            "type": "number",
            "format": "double"
          },
          "cadAmount": {
            "type": "number",
            "format": "double"
          },
          "kesAmount": {
            "type": "number",
            "format": "double"
          },
          "zarAmount": {
            "type": "number",
            "format": "double"
          },
          "ghsAmount": {
            "type": "number",
            "format": "double"
          },
          "aedAmount": {
            "type": "number",
            "format": "double"
          },
          "sarAmount": {
            "type": "number",
            "format": "double"
          },
          "notificationId": {
            "type": "string",
            "nullable": true
          },
          "address": {
            "type": "string",
            "nullable": true
          },
          "tier": {
            "type": "string",
            "nullable": true
          },
          "bvn": {
            "type": "string",
            "nullable": true
          },
          "nin": {
            "type": "string",
            "nullable": true
          },
          "geminiApiKey": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "VendValueRequest": {
        "type": "object",
        "properties": {
          "paymentReference": {
            "type": "string",
            "nullable": true
          },
          "customerId": {
            "type": "string",
            "nullable": true
          },
          "orderId": {
            "type": "string",
            "nullable": true
          },
          "packageSlug": {
            "type": "string",
            "nullable": true
          },
          "channel": {
            "type": "string",
            "nullable": true
          },
          "amount": {
            "type": "number",
            "format": "double"
          },
          "customerName": {
            "type": "string",
            "nullable": true
          },
          "phoneNumber": {
            "type": "string",
            "nullable": true
          },
          "email": {
            "type": "string",
            "nullable": true
          },
          "accountNumber": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "VendingTransactionDataDto": {
        "type": "object",
        "properties": {
          "accountNumber": {
            "type": "string",
            "nullable": true
          },
          "phoneNumber": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "VendingTransactionRequestDto": {
        "type": "object",
        "properties": {
          "productCode": {
            "type": "string",
            "nullable": true
          },
          "clientReference": {
            "type": "string",
            "nullable": true
          },
          "amount": {
            "type": "number",
            "format": "double"
          },
          "data": {
            "$ref": "#/components/schemas/VendingTransactionDataDto"
          }
        },
        "additionalProperties": false
      },
      "VendingValidationRequestDto": {
        "type": "object",
        "properties": {
          "productCode": {
            "type": "string",
            "nullable": true
          },
          "accountNumber": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "VerifyPinCommand": {
        "type": "object",
        "properties": {
          "userId": {
            "type": "string",
            "nullable": true
          },
          "pin": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "VerifyRegistrationModel": {
        "type": "object",
        "properties": {
          "verificationCode": {
            "type": "string",
            "nullable": true
          },
          "email": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "VerifyResetPasswordCodeCommand": {
        "type": "object",
        "properties": {
          "email": {
            "type": "string",
            "nullable": true
          },
          "code": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "VerifyUserCommand": {
        "type": "object",
        "properties": {
          "email": {
            "type": "string",
            "nullable": true
          },
          "code": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "WaitHandle": {
        "type": "object",
        "properties": {
          "handle": {
            "$ref": "#/components/schemas/IntPtr"
          },
          "safeWaitHandle": {
            "$ref": "#/components/schemas/SafeWaitHandle"
          }
        },
        "additionalProperties": false
      },
      "Wallet": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "userId": {
            "type": "string",
            "format": "uuid"
          },
          "user": {
            "$ref": "#/components/schemas/ApplicationUser"
          },
          "note": {
            "type": "string",
            "nullable": true
          },
          "log": {
            "type": "string",
            "nullable": true
          },
          "nairaAmount": {
            "type": "number",
            "format": "double"
          },
          "kesAmount": {
            "type": "number",
            "format": "double"
          },
          "zarAmount": {
            "type": "number",
            "format": "double"
          },
          "ghsAmount": {
            "type": "number",
            "format": "double"
          },
          "usdAmount": {
            "type": "number",
            "format": "double"
          },
          "eurAmount": {
            "type": "number",
            "format": "double"
          },
          "gbpAmount": {
            "type": "number",
            "format": "double"
          },
          "cadAmount": {
            "type": "number",
            "format": "double"
          },
          "aedAmount": {
            "type": "number",
            "format": "double"
          },
          "sarAmount": {
            "type": "number",
            "format": "double"
          },
          "createdAtUtc": {
            "type": "string",
            "format": "date-time"
          },
          "lastUpdateAtUtc": {
            "type": "string",
            "format": "date-time"
          },
          "isFrozen": {
            "type": "boolean"
          },
          "lastReconciledAt": {
            "type": "string",
            "format": "date-time"
          },
          "rowVersion": {
            "type": "string",
            "format": "byte",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "WebPage": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "content": {
            "type": "string",
            "nullable": true
          },
          "slug": {
            "type": "string",
            "nullable": true
          },
          "summary": {
            "type": "string",
            "nullable": true
          },
          "isPublished": {
            "type": "boolean"
          },
          "sortOrder": {
            "type": "integer",
            "format": "int32"
          },
          "createdAt": {
            "type": "string",
            "format": "date-time"
          },
          "updatedAt": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "WebSocketManager": {
        "type": "object",
        "properties": {
          "isWebSocketRequest": {
            "type": "boolean",
            "readOnly": true
          },
          "webSocketRequestedProtocols": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true,
            "readOnly": true
          }
        },
        "additionalProperties": false
      },
      "WebhookNotification": {
        "type": "object",
        "properties": {
          "transaction_reference": {
            "type": "string",
            "nullable": true
          },
          "amount_received": {
            "type": "string",
            "nullable": true
          },
          "merchant_reference": {
            "type": "string",
            "nullable": true
          },
          "transaction_status": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "X500DistinguishedName": {
        "type": "object",
        "properties": {
          "oid": {
            "$ref": "#/components/schemas/Oid"
          },
          "rawData": {
            "type": "string",
            "format": "byte",
            "nullable": true
          },
          "name": {
            "type": "string",
            "nullable": true,
            "readOnly": true
          }
        },
        "additionalProperties": false
      },
      "X509Certificate2": {
        "type": "object",
        "properties": {
          "handle": {
            "$ref": "#/components/schemas/IntPtr"
          },
          "issuer": {
            "type": "string",
            "nullable": true,
            "readOnly": true
          },
          "subject": {
            "type": "string",
            "nullable": true,
            "readOnly": true
          },
          "serialNumberBytes": {
            "$ref": "#/components/schemas/ByteReadOnlyMemory"
          },
          "archived": {
            "type": "boolean"
          },
          "extensions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/X509Extension"
            },
            "nullable": true,
            "readOnly": true
          },
          "friendlyName": {
            "type": "string",
            "nullable": true
          },
          "hasPrivateKey": {
            "type": "boolean",
            "readOnly": true
          },
          "privateKey": {
            "$ref": "#/components/schemas/AsymmetricAlgorithm"
          },
          "issuerName": {
            "$ref": "#/components/schemas/X500DistinguishedName"
          },
          "notAfter": {
            "type": "string",
            "format": "date-time",
            "readOnly": true
          },
          "notBefore": {
            "type": "string",
            "format": "date-time",
            "readOnly": true
          },
          "publicKey": {
            "$ref": "#/components/schemas/PublicKey"
          },
          "rawData": {
            "type": "string",
            "format": "byte",
            "nullable": true,
            "readOnly": true
          },
          "rawDataMemory": {
            "$ref": "#/components/schemas/ByteReadOnlyMemory"
          },
          "serialNumber": {
            "type": "string",
            "nullable": true,
            "readOnly": true
          },
          "signatureAlgorithm": {
            "$ref": "#/components/schemas/Oid"
          },
          "subjectName": {
            "$ref": "#/components/schemas/X500DistinguishedName"
          },
          "thumbprint": {
            "type": "string",
            "nullable": true,
            "readOnly": true
          },
          "version": {
            "type": "integer",
            "format": "int32",
            "readOnly": true
          }
        },
        "additionalProperties": false
      },
      "X509Extension": {
        "type": "object",
        "properties": {
          "oid": {
            "$ref": "#/components/schemas/Oid"
          },
          "rawData": {
            "type": "string",
            "format": "byte",
            "nullable": true
          },
          "critical": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      }
    },
    "securitySchemes": {
      "Bearer": {
        "type": "http",
        "description": "Enter your JWT token directly below. The 'Bearer ' prefix will be added automatically.",
        "scheme": "Bearer",
        "bearerFormat": "JWT"
      }
    }
  },
  "security": [
    {
      "Bearer": [ ]
    }
  ]
}