SaaSFlow
DevelopersAPIReferencetransactions

Search

Search transactions with sorting and a composable filter set. It is a POST because the filter array is too structured for a query string, not because it changes anything. Each entry in `filters` is active simply by being present, and they combine with AND. This is the endpoint behind the transactions table in the app, so use it whenever the plain list is not enough. `balanceByDate` gives the running end-of-day balance and is only filled in when the page covers a single account and `sortBy` is `date`.

Authentication

You're not signed in. Either sign in at app.saasflow.com and reload (then pick sessionCookie), or paste a SaaSFlow sf_… API key in the bearerAuth field below.
POST
/companies/{companyId}/transactions/search

Authorization

Authorization<token>

A SaaSFlow API key (format sf_…) or an OAuth bearer token. Paste only the key — the proxy adds the Bearer prefix. Create an API key in Settings → Company settings → API keys — see API keys.

In: header

Path Parameters

companyId*string
Length1 <= length

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://example.com/companies/string/transactions/search" \  -H "Content-Type: application/json" \  -d '{}'
{  "items": [    {      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",      "companyId": "8bb73d03-06b4-47c7-80c7-59301f770eda",      "accountId": "3d07c219-0a88-45be-9cfc-91e9d095a1e9",      "date": "string",      "fromTo": "string",      "description": "string",      "amountValue": "string",      "amountCurrency": "EUR",      "categorizationsAutoAssigned": true,      "excludeFromAutoCategorization": true,      "notes": "string",      "source": "string",      "assignedUserId": "string",      "finApiTransactionId": "string",      "plaidTransactionId": "string",      "stripeBalanceTransactionId": "string",      "stripeInvoiceId": "string",      "stripeCreditNoteId": "string",      "stripePaymentIntentId": "string",      "stripeBillingEmail": "string",      "hubspotPortalId": "string",      "hubspotInvoiceId": "string",      "hubspotCategorizationResolved": true,      "finwayExpenseNumber": "string",      "finwayInvoiceNumber": "string",      "pleoExpenseId": "string",      "createdVendorId": "91002d41-22cb-48a3-bc93-148a8439ef7f",      "integrationId": "497a18ca-284e-40c0-985d-f72be35d468e",      "pending": true,      "createdTime": "2019-08-24T14:15:22Z",      "createdUserId": "string",      "lastUpdatedTime": "2019-08-24T14:15:22Z",      "lastUpdatedUserId": "string",      "categorizations": {        "property1": {          "counterparty": {            "type": "customer",            "id": "string"          },          "categoryId": "string",          "usingDateRule": {            "type": "transactionDate"          },          "computedStartDate": "2019-08-24",          "computedEndDate": "2019-08-24",          "plSplit": {            "revenue": 0,            "cogs": 0,            "cac": 0,            "pd": 0,            "ga": 0,            "no": 0,            "neutral": 0          },          "passThroughTax": 0,          "transferCounterPosition": {            "transactionId": "string",            "categorizationId": "string"          },          "internalTransitLink": {            "transactionId": "string",            "categorizationId": "string"          },          "sourceNote": "string",          "externalInvoiceUrn": "string"        },        "property2": {          "counterparty": {            "type": "customer",            "id": "string"          },          "categoryId": "string",          "usingDateRule": {            "type": "transactionDate"          },          "computedStartDate": "2019-08-24",          "computedEndDate": "2019-08-24",          "plSplit": {            "revenue": 0,            "cogs": 0,            "cac": 0,            "pd": 0,            "ga": 0,            "no": 0,            "neutral": 0          },          "passThroughTax": 0,          "transferCounterPosition": {            "transactionId": "string",            "categorizationId": "string"          },          "internalTransitLink": {            "transactionId": "string",            "categorizationId": "string"          },          "sourceNote": "string",          "externalInvoiceUrn": "string"        }      },      "inTransit": true,      "partialAmount": 0    }  ],  "totalCount": 0,  "balanceByDate": {    "property1": {      "value": 0,      "currency": "string"    },    "property2": {      "value": 0,      "currency": "string"    }  }}