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
/api/pull/business
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
/api/pull/insights
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
/api/pull/expenses
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
/api/pull/income
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
/api/pull/bank-feed
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
/api/pull/s3-upload-url
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