Page cover

Pull data

Pull businesses linked to email

Check businesses linked to an email account.

post
Body
apikeystringRequired
appidstringRequired
emailstringRequired
Responses
200Success

No content

post
POST /api/pull/business HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 47

{
  "apikey": "text",
  "appid": "text",
  "email": "text"
}

No content

Asynchronously pull insights

The financial insights for the specified business will be returned to the specified webhook.

post
Body
apikeystringRequired
appidstringRequired
uidstringRequired
webhookstringRequired
signaturestringOptional
Responses
200Success

No content

post
POST /api/pull/insights HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 81

{
  "apikey": "text",
  "appid": "text",
  "uid": "text",
  "webhook": "text",
  "signature": "text"
}

No content


Asynchronously pull expense

The expenses for the specified business will be returned to the specified webhook.

post
Body
apikeystringRequired
appidstringRequired
uidstringRequired
webhookstringRequired
signaturestringOptional
Responses
200Success

No content

post
POST /api/pull/expenses HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 81

{
  "apikey": "text",
  "appid": "text",
  "uid": "text",
  "webhook": "text",
  "signature": "text"
}

No content

Asynchronously pull income

Income for the specified business will be returned to the specified webhook.

post
Body
apikeystringRequired
appidstringRequired
uidstringRequired
webhookstringRequired
signaturestringOptional
Responses
200Success

No content

post
POST /api/pull/income HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 81

{
  "apikey": "text",
  "appid": "text",
  "uid": "text",
  "webhook": "text",
  "signature": "text"
}

No content


Trigger bank sync

Sync bank accounts for the specified business if available.

post
Body
apikeystringRequired
appidstringRequired
uidstringRequired
webhookstringOptional
signaturestringOptional
Responses
200Success

No content

post
POST /api/pull/bank-feed HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 81

{
  "apikey": "text",
  "appid": "text",
  "uid": "text",
  "webhook": "text",
  "signature": "text"
}

No content


Generate upload s3 URL

It may be preferable to upload settlementss via a JSON file. This endpoint generates a presigned s3 URL that allows the user to upload the file to a secure s3 bucket.

The JSON file is expected to contain an array of settlements.

[
  {
   "settlement": {...},
   "income": [{...}], 
   "expenses": [{...}]
  }
]

For more information see Asynchronously push settlement data

This endpoint returns data in this form:

{
  "error": false,
  "path": "<filepath-for-push-settlement>",
  "url": "<s3-upload-url>"
}

When you've retrieved the URL and created the JSON file you upload them using a PUT request to AWS s3

curl -X PUT \
-T filename.json \
-H "Content-Type: application/octet-stream" \
'<s3-upload-url>'
post
Authorizations
Body
apikeystringOptional
appidstringOptional
uidstringRequired
webhookstringOptional
signaturestringOptional
Responses
200Success

No content

post
POST /api/pull/s3-upload-url HTTP/1.1
Host: test.connect.stub.africa
X-API-Key: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 81

{
  "apikey": "text",
  "appid": "text",
  "uid": "text",
  "webhook": "text",
  "signature": "text"
}

No content

Last updated