POST
/
requests
curl --request POST \
  --url https://api.pipevest.com/v1/ussd/requests \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Digest: <content-digest>' \
  --header 'Content-Type: application/x-www-form-urlencoded' \
  --header 'Signature: <signature>' \
  --header 'Signature-Input: <signature-input>' \
  --header 'X-Client-Id: <x-client-id>' \
  --data amount=100
{
  "data": {
    "ussdMessage": "Zamtel Message\\n Your asset purchase request has been delivered. You will receive a confirmation shortly.",
    "ussdConfirm": {
      "requestUrl": "https://api.staging.pipevest.com/v1/ussd/instruments",
      "requestType": "GET"
    }
  },
  "code": 201,
  "message": "Created"
}

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"

Content-Digest
string
required

Base64 encoded sha-512 hash of the http message body.

This key isn't not required for GET and DELETE requests.

Learn how to generate content digest

Example:

"sha-512=:RK/0qy18MlBSVnWgjwz6lZEWjP/lF5HF9bvEF8FabDg=:"

Query Parameters

customerId
integer
required

Unique customer identifier

Example:

123456

orderType
enum<string>
required

The order request type

Available options:
PURCHASE,
SELL
Example:

"PURCHASE"

symbol
string
required

The symbol associated to an instrument

Example:

"AAPL"

Body

application/x-www-form-urlencoded

Details used to create an order request

The body is of type object.

Response

201
application/json

Order requests menu details

The response is of type object.

POST
/
requests
curl --request POST \
  --url https://api.pipevest.com/v1/ussd/requests \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Digest: <content-digest>' \
  --header 'Content-Type: application/x-www-form-urlencoded' \
  --header 'Signature: <signature>' \
  --header 'Signature-Input: <signature-input>' \
  --header 'X-Client-Id: <x-client-id>' \
  --data amount=100
{
  "data": {
    "ussdMessage": "Zamtel Message\\n Your asset purchase request has been delivered. You will receive a confirmation shortly.",
    "ussdConfirm": {
      "requestUrl": "https://api.staging.pipevest.com/v1/ussd/instruments",
      "requestType": "GET"
    }
  },
  "code": 201,
  "message": "Created"
}

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"

Content-Digest
string
required

Base64 encoded sha-512 hash of the http message body.

This key isn't not required for GET and DELETE requests.

Learn how to generate content digest

Example:

"sha-512=:RK/0qy18MlBSVnWgjwz6lZEWjP/lF5HF9bvEF8FabDg=:"

Query Parameters

customerId
integer
required

Unique customer identifier

Example:

123456

orderType
enum<string>
required

The order request type

Available options:
PURCHASE,
SELL
Example:

"PURCHASE"

symbol
string
required

The symbol associated to an instrument

Example:

"AAPL"

Body

application/x-www-form-urlencoded

Details used to create an order request

The body is of type object.

Response

201
application/json

Order requests menu details

The response is of type object.