GET
/
portfolio
curl --request GET \
  --url https://api.pipevest.com/v1/ussd/portfolio \
  --header 'Authorization: Bearer <token>' \
  --header 'Signature: <signature>' \
  --header 'Signature-Input: <signature-input>' \
  --header 'X-Client-Id: <x-client-id>'
{
  "data": {
    "ussdMessage": "My portfolio:\\n 1.View my assets\\n 2.Pending requests (TSLA)\\n 3.Transaction history\\n 4.Back",
    "ussdOptions": [
      {
        "option": 1,
        "requestUrl": "https://api.staging.pipevest.com/v1/ussd/assets?customerId=123456",
        "requestType": "GET"
      },
      {
        "option": 2,
        "requestUrl": "https://api.staging.pipevest.com/v1/ussd/requests?customerId=123456&status=PENDING",
        "requestType": "GET"
      },
      {
        "option": 3,
        "requestUrl": "https://api.staging.pipevest.com/v1/ussd/transactions?customerId=123456",
        "requestType": "GET"
      },
      {
        "option": 4,
        "requestUrl": "https://api.staging.pipevest.com/v1/ussd/home?customerId=123456",
        "requestType": "GET"
      }
    ]
  },
  "code": 200,
  "message": "Success"
}

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Headers

Signature
string
required

Base64 encoded signed hash of the http message request components.

Learn how signatures work

Example:

"sig1=:OTEyMjY4...A5NTNDMEQ=:"

Signature-Input
string
required

An ordered list of components that make up the signature base. It is used to recompute and verify the Signature

Learn how signatures work

Example:

"sig1=(\"Content-Type\" \"Content-Digest\" \"Content-Length\" \"Authorization\" \"X-Client-Id\" \"X-Idempotency-Key\" \"@method\" \"@target-uri\" \"@path\" \"@query\");keyid=\"staging-pipevest-ed25519\";created=1732893484;expires=1732893584"

X-Client-Id
string
required

Unique identifier assigned to the client

Example:

"client-id"

Query Parameters

customerId
integer
required

Unique customer identifier

Example:

123456

Response

200
application/json

Portfolio menu and options details

The response is of type object.

GET
/
portfolio
curl --request GET \
  --url https://api.pipevest.com/v1/ussd/portfolio \
  --header 'Authorization: Bearer <token>' \
  --header 'Signature: <signature>' \
  --header 'Signature-Input: <signature-input>' \
  --header 'X-Client-Id: <x-client-id>'
{
  "data": {
    "ussdMessage": "My portfolio:\\n 1.View my assets\\n 2.Pending requests (TSLA)\\n 3.Transaction history\\n 4.Back",
    "ussdOptions": [
      {
        "option": 1,
        "requestUrl": "https://api.staging.pipevest.com/v1/ussd/assets?customerId=123456",
        "requestType": "GET"
      },
      {
        "option": 2,
        "requestUrl": "https://api.staging.pipevest.com/v1/ussd/requests?customerId=123456&status=PENDING",
        "requestType": "GET"
      },
      {
        "option": 3,
        "requestUrl": "https://api.staging.pipevest.com/v1/ussd/transactions?customerId=123456",
        "requestType": "GET"
      },
      {
        "option": 4,
        "requestUrl": "https://api.staging.pipevest.com/v1/ussd/home?customerId=123456",
        "requestType": "GET"
      }
    ]
  },
  "code": 200,
  "message": "Success"
}

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Headers

Signature
string
required

Base64 encoded signed hash of the http message request components.

Learn how signatures work

Example:

"sig1=:OTEyMjY4...A5NTNDMEQ=:"

Signature-Input
string
required

An ordered list of components that make up the signature base. It is used to recompute and verify the Signature

Learn how signatures work

Example:

"sig1=(\"Content-Type\" \"Content-Digest\" \"Content-Length\" \"Authorization\" \"X-Client-Id\" \"X-Idempotency-Key\" \"@method\" \"@target-uri\" \"@path\" \"@query\");keyid=\"staging-pipevest-ed25519\";created=1732893484;expires=1732893584"

X-Client-Id
string
required

Unique identifier assigned to the client

Example:

"client-id"

Query Parameters

customerId
integer
required

Unique customer identifier

Example:

123456

Response

200
application/json

Portfolio menu and options details

The response is of type object.