The requests menu view allows users to view their various requests in their different states.

Accessing the Requests View

Make a GET request to /requests
  curl --request GET \
    --url https://api.staging.pipevest.com/v1/ussd/requests?customerId=123456
    --header 'Authorization: Bearer 123456' \
    --header 'Signature: sig1=:OTEyMjY4...A5NTNDMEQ=:' \
    --header 'Signature-Input: sig1=("Authorization" "X-Client-Id" "@method" "@target-uri" "@path" "@query");keyid="staging-pipevest-ed25519";created=1732893484;expires=1732893584' \
    --header 'X-Client-Id: 123456' \

Get requests by status

For the pending requests view, the status must be set to PENDING.

  curl --request GET \
    --url https://api.staging.pipevest.com/v1/ussd/requests?customerId=123456?status=PENDING
    ...

Example Response

{
  "data": {
    "ussdMessage": "Pending requests:\n Select a request to view more details about the investment 1.APPL Purchase 200ZK 21/08/24\n 2.APPL Sale 100ZK 21/08/24\n 3.APPL Purchase 200ZK 15/08/24\n 4. View More Pending Requests 5.Back",
    "ussdOptions": [
      {
        "option": 1,
        "requestUrl": "https://api.staging.pipevest.com/v1/ussd/requests?customerId=123456&requestId=123456",
        "requestType": "GET"
      },
      ...
      {
        "option": 4,
        "requestUrl": "https://api.staging.pipevest.com/v1/ussd/requests?customerId=123456&status=PENDING&page=2",
        "requestType": "GET"
      },
      {
        "option": 5,
        "requestUrl": "https://api.staging.pipevest.com/v1/ussd/portfolio?customerId=123456",
        "requestType": "GET"
      }
    ]
  },
  "code": 200,
  "message": "Success"
}

Paging requests view

  curl --request GET \
    --url https://api.staging.pipevest.com/v1/ussd/requests?customerId=123456&status=PENDING&page=2
    ...

The response will be similar to the request by status view

Individual request view

  curl --request GET \
    --url https://api.staging.pipevest.com/v1/ussd/requests?customerId=123456&requestId=123456
    ...

Example Response

{
  "data": {
    "ussdMessage": "Request details:\n APPL Purchase 200ZK 21/08/24\n 1. Cancel request\n 2. Back",
    "ussdOptions": [
      {
        "option": 1,
        "requestUrl": "https://api.staging.pipevest.com/v1/ussd/requests?customerId=123456&requestId=123456&cancelMode=true",
        "requestType": "GET"
      },
      {
        "option": 2,
        "requestUrl": "https://api.staging.pipevest.com/v1/ussd/requests?customerId=123456&status=PENDING",
        "requestType": "GET"
      }
    ]
  },
  "code": 200,
  "message": "Success"
}

Enabling cancel mode

  curl --request GET \
    --url https://api.staging.pipevest.com/v1/ussd/requests?customerId=123456&requestId=123456&cancelMode=true
    ...

Example Response

{
  "data": {
    "ussdMessage": "Cancel request:\n APPL Purchase 200ZK 21/08/24\n…(pipevest.com/terms)\n 1. Confirm \n 2. Back",
    "ussdOptions": [
      {
        "option": 1,
        "requestUrl": "https://api.staging.pipevest.com/v1/ussd/requests?customerId=123456&requestId=123456&cancelMode=true",
        "requestType": "PUT"
      },
      {
        "option": 2,
        "requestUrl": "https://api.staging.pipevest.com/v1/ussd/stocks?customerId=123456&symbol=AAPL",
        "requestType": "GET"
      }
    ]
  },
  "code": 200,
  "message": "Success"
}

Confirming order cancel request

Query parameters

queryDefinitionRequired
customerIdThe unique customer identiferYes
pageThe current set of viewable requests. Default 1No
cancelModeReturns a view that prompts the user to cancel a request. Default falseNo
requestIdThe unique request identiferNo
statusThe current request statusNo

Requests View Example

USSD Requests View

Check out an example of the ussd requests view