---
updatedAt: 2025-05-19T20:30:32.000Z
agentTools:
  projectIndex: https://developers.pocketsmith.com/llms.txt
---

# List transactions in categories

Lists transactions belonging to one or more categories by their IDs.

# OpenAPI definition

```json
{
  "openapi": "3.0.1",
  "info": {
    "title": "PocketSmith",
    "description": "The PocketSmith API",
    "contact": {
      "name": "API Support",
      "email": "api@pocketsmith.com"
    },
    "version": "2.0"
  },
  "x-samples-languages": [
    "curl",
    "node",
    "javascript",
    "php",
    "python"
  ],
  "servers": [
    {
      "url": "https://api.pocketsmith.com/v2",
      "description": "Production"
    }
  ],
  "components": {
    "securitySchemes": {
      "developerKey": {
        "type": "apiKey",
        "in": "header",
        "name": "X-Developer-Key",
        "description": "If you want to build a tool just for yourself, be it a desktop widget to display your balances or a tool to import transactions from a bank without a bank feed, you can use our developer keys feature. You can issue yourself a key which will give you persistent API access to just your account. You should rotate your keys regularly."
      }
    },
    "responses": {
      "400": {
        "description": "Bad Request",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/Error"
            }
          }
        }
      },
      "403": {
        "description": "Not Allowed",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/Error"
            }
          }
        }
      },
      "404": {
        "description": "Not Found",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/Error"
            }
          }
        }
      }
    },
    "schemas": {
      "Institution": {
        "type": "object",
        "properties": {
          "currency_code": {
            "type": "string",
            "description": "The currency code of the institution.",
            "example": "NZD"
          },
          "title": {
            "type": "string",
            "description": "The title of the institution.",
            "example": "Bank of Foo"
          },
          "updated_at": {
            "type": "string",
            "description": "When the institution was last updated.",
            "example": "2015-04-21T22:42:22Z"
          },
          "created_at": {
            "type": "string",
            "description": "When the institution was created.",
            "example": "2015-04-21T22:42:22Z"
          },
          "id": {
            "type": "integer",
            "description": "The unique identifier of the institution.",
            "example": 57
          }
        }
      },
      "TransactionAccount": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "example": 96027
          },
          "name": {
            "type": "string",
            "example": "Sample Credit"
          },
          "number": {
            "type": "string",
            "example": "ASBCRD44554"
          },
          "current_balance": {
            "type": "number",
            "example": 2694.39
          },
          "current_balance_date": {
            "type": "string",
            "example": "2015-07-03"
          },
          "current_balance_in_base_currency": {
            "type": "number",
            "description": "The current balance of the transaction account in the user's base currency.",
            "example": 4041.59
          },
          "current_balance_exchange_rate": {
            "type": "number",
            "description": "The exchange rate between the transaction account's currency and the user's base currency, when different. If the currencies are the same, null is returned.",
            "example": 1.5
          },
          "safe_balance": {
            "type": "number",
            "description": "The current safe balance, if safe balance is activated and available for the transaction account. If safe balance is not available, then null is returned.",
            "example": 2694.39
          },
          "safe_balance_in_base_currency": {
            "type": "number",
            "description": "The current safe balance in the user's base currency, if safe balance is activated and available for the transaction account. If safe balance is not available, then null is returned.",
            "example": 4041.59
          },
          "starting_balance": {
            "type": "number",
            "example": 3547.45
          },
          "starting_balance_date": {
            "type": "string",
            "example": "2015-03-15"
          },
          "created_at": {
            "type": "string",
            "example": "2015-03-17T02:42:10Z"
          },
          "updated_at": {
            "type": "string",
            "example": "2015-07-02T22:14:49Z"
          },
          "institution": {
            "$ref": "#/components/schemas/Institution"
          },
          "currency_code": {
            "type": "string",
            "description": "The currency that the account is in. This is determined by the account that the transaction account belongs to.",
            "example": "NZD"
          },
          "type": {
            "type": "string",
            "description": "The type of the transaction account.",
            "enum": [
              "bank",
              "credits",
              "cash",
              "stocks",
              "mortgage",
              "loans",
              "vehicle",
              "property",
              "insurance",
              "other_asset",
              "other_liability"
            ],
            "example": "bank"
          }
        }
      },
      "Transaction": {
        "type": "object",
        "properties": {
          "cheque_number": {
            "type": "string",
            "example": "503113643691"
          },
          "type": {
            "type": "string",
            "description": "Whether the transaction is a debit or a credit",
            "enum": [
              "debit",
              "credit"
            ],
            "example": "credit"
          },
          "memo": {
            "type": "string",
            "example": "An example memo"
          },
          "payee": {
            "type": "string",
            "description": "The payee/merchant of the transaction.",
            "example": "St Martins New World"
          },
          "amount": {
            "type": "number",
            "example": 34.6
          },
          "amount_in_base_currency": {
            "type": "number",
            "description": "The amount of the transaction in the user's base currency.",
            "example": 51.9
          },
          "date": {
            "type": "string",
            "description": "The date the transaction took place.",
            "example": "2018-02-27"
          },
          "is_transfer": {
            "type": "boolean",
            "description": "Whether the transaction is a transfer.",
            "example": false
          },
          "category": {
            "$ref": "#/components/schemas/Category"
          },
          "note": {
            "type": "string",
            "example": "I spent way too much on cheese here"
          },
          "labels": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "example": [
              "foo",
              "bar",
              "baz"
            ]
          },
          "id": {
            "type": "integer",
            "description": "The unique identifier of the transaction.",
            "example": 42
          },
          "original_payee": {
            "type": "string",
            "description": "The payee the transaction was created with.",
            "example": "CARD4083ST MARTINS NEW WORLD CHRISTCHURCH"
          },
          "upload_source": {
            "type": "string",
            "description": "Where the transaction came from.",
            "example": "file"
          },
          "closing_balance": {
            "type": "number",
            "description": "The closing balance of the account at the transaction.",
            "example": 4312.32
          },
          "transaction_account": {
            "$ref": "#/components/schemas/TransactionAccount"
          },
          "status": {
            "type": "string",
            "description": "The status of the transaction. Pending transactions are temporary and may be superseded later by their posted counterparts, which are permanent.",
            "enum": [
              "pending",
              "posted"
            ]
          },
          "needs_review": {
            "type": "boolean",
            "description": "Whether the transaction needs to be reviewed.",
            "example": true
          },
          "created_at": {
            "type": "string",
            "description": "When the transaction was created.",
            "example": "2018-02-27T22:42:22Z"
          },
          "updated_at": {
            "type": "string",
            "description": "When the transaction was last updated.",
            "example": "2018-02-27T22:42:22Z"
          }
        }
      },
      "Category": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "description": "The unique identifier of the category.",
            "example": 1438154
          },
          "title": {
            "type": "string",
            "description": "The title of the category.",
            "example": "Beer"
          },
          "colour": {
            "type": "string",
            "description": "The colour for the category.",
            "format": "CSS-style hex triplet",
            "example": "#00ff00"
          },
          "children": {
            "type": "array",
            "description": "The category's child categories.",
            "items": {
              "$ref": "#/components/schemas/Category"
            }
          },
          "parent_id": {
            "type": "integer",
            "description": "The unique identifier of the parent category of this category, or null if this category has no parent (i.e. is a top-level category)",
            "example": 42
          },
          "is_transfer": {
            "type": "boolean",
            "description": "Whether this category has been marked as a transfer category.",
            "example": false
          },
          "is_bill": {
            "type": "boolean",
            "description": "Whether the category is a bill category. A bill category is when budgeted amounts are normally spent at once, instead of spread across a budgeting period. This category will be included in the bill reminder email when set to true.",
            "example": true
          },
          "roll_up": {
            "type": "boolean",
            "description": "Whether the category's budget is rolled up into its parent category, if a parent category is present.",
            "example": false
          },
          "refund_behaviour": {
            "type": "string",
            "nullable": true,
            "description": "How the category's refunds or deductions should be reported on.",
            "enum": [
              "debits_are_deductions",
              "credits_are_refunds",
              null
            ],
            "example": "credits_are_refunds"
          },
          "created_at": {
            "type": "string",
            "description": "When the category was created.",
            "format": "ISO 8601 timestamp",
            "example": "2015-08-16T02:17:02Z"
          },
          "updated_at": {
            "type": "string",
            "description": "When the category was last updated.",
            "format": "ISO 8601 timestamp",
            "example": "2015-08-16T02:17:02Z"
          }
        }
      },
      "Error": {
        "type": "object",
        "properties": {
          "error": {
            "type": "string",
            "description": "A message describing the error that occurred.",
            "example": "A message describing the error that occurred."
          }
        }
      }
    }
  },
  "paths": {
    "/categories/{id}/transactions": {
      "get": {
        "summary": "List transactions in categories",
        "description": "Lists transactions belonging to one or more categories by their IDs.",
        "tags": [
          "Transactions"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "A comma-separated list of category IDs.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "42,43"
          },
          {
            "name": "start_date",
            "in": "query",
            "description": "Limit to transactions on or after this date. Required if end_date is provided. If not provided, defaults to the furtherest date allowed by the user's subscription.",
            "required": false,
            "schema": {
              "type": "string"
            },
            "example": "2016-11-01"
          },
          {
            "name": "end_date",
            "in": "query",
            "description": "Limit to transactions on or before this date. Required if start_date is provided. If not provided, defaults to today's date.",
            "required": false,
            "schema": {
              "type": "string"
            },
            "example": "2016-11-30"
          },
          {
            "name": "updated_since",
            "in": "query",
            "description": "Limit to transactions updated since an ISO 8601 timestamp.",
            "required": false,
            "schema": {
              "type": "string"
            },
            "example": "2020-10-14T09:20:33+13:00"
          },
          {
            "name": "uncategorised",
            "in": "query",
            "description": "Limit to uncategorised transactions.",
            "required": false,
            "schema": {
              "type": "integer"
            },
            "example": 1
          },
          {
            "name": "type",
            "in": "query",
            "description": "Limit to transactions of this type.",
            "required": false,
            "schema": {
              "type": "string",
              "enum": [
                "debit",
                "credit"
              ]
            },
            "example": "debit"
          },
          {
            "name": "needs_review",
            "in": "query",
            "description": "Limit to transactions that need to be reviewed.",
            "required": false,
            "schema": {
              "type": "integer"
            },
            "example": 1
          },
          {
            "name": "search",
            "in": "query",
            "description": "Limit to transactions matching a keyword search string. The provided string is matched against the transaction amount, account name, payee, category title, note, labels, and the date in ISO 8601 format.",
            "required": false,
            "schema": {
              "type": "string"
            },
            "example": "Paypal"
          },
          {
            "name": "page",
            "in": "query",
            "description": "Choose a particular page of the results.",
            "required": false,
            "schema": {
              "type": "integer"
            },
            "example": 3
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Transaction"
                  }
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          }
        }
      }
    }
  },
  "security": [
    {
      "developerKey": []
    }
  ]
}
```