Accounting Transactions

HTTP Method: GET

URL: https://app.aplos.com/hermes/api/v1/transactions

Parameters:

  • f_accountnumber: Account number of any line in the transaction
  • f_amount: Total amount of the transaction (always a positive number)
  • f_contact: Contact ID
  • f_contactname: Any part of any contact name (first, last, and/or company), case insensitive
  • f_fund: Fund ID
  • f_lastupdated: Last updated (created or modified). Format: yyyy-MM-ddTHH:mm:ss.SSSZ
  • f_memo: Any part of the memo, case insensitive
  • f_note: Any part of the note, case insensitive
  • f_rangeend: Maximum date range (inclusive). Format: yyyy-MM-dd
  • f_rangestart: Minimum date range (inclusive). Format: yyyy-MM-dd
  • f_reconciled: Whether the transaction is reconciled: y, n
  • f_tagname: Any part of the tag name, case insensitive
  • f_taxtagname: Any part of the tax tag name, case insensitive

Headers:

  • Authorization = Bearer: [ACCESS TOKEN]
    The access token obtained via the authentication resource.
  • aplos-account-id = [ACCOUNT ID]
    The Aplos account (organization) you are accessing (OPTIONAL)

Example JSON:

{
  "version": "v2_0_0",
  "status": 200,
  "meta": {
    "resource_count": 1,
    "available_filters": {
      "f_accountnumber": "Account number of any line in the transaction",
      "f_amount": "Total amount of the transaction (always a positive number)",
      "f_contact": "Contact ID",
      "f_contactname": "Any part of any contact name (first, last, and/or company), case insensitive",
      "f_fund": "Fund ID",
      "f_lastupdated": "Last updated (created or modified). Format: yyyy-MM-ddTHH:mm:ss.SSSZ",
      "f_note": "Any part of the note, case insensitive",
      "f_rangeend": "Maximum date range (inclusive). Format: yyyy-MM-dd",
      "f_rangestart": "Minimum date range (inclusive) Format: yyyy-MM-dd",
      "f_reconciled": "Whether the transaction is reconciled: y, n",
      "f_tagname": "Any part of the tag name, case insensitive",
      "f_taxtagname": "Any part of the tax tag name, case insensitive"
    }
  },
  "links": {
    "next": "/api/v1/transactions?page_size=1&page_num=2",
    "self": "/api/v1/transactions?page_size=1&page_num=1"
  },
  "data": {
    "transactions": [
      {
        "id": 1,
        "memo": "A memo too",
        "note": "My first transaction",
        "date": "2014-12-31",
        "amount": 123.45,
        "contact": {
          "id": 1,
          "companyname": "Aplos",
          "type": "company"
        }
        "created": "2014-12-31T01:23:45.678-0700",
        "modified": "2014-12-31T12:34:56.789-0700"
      }
    ]
  }
}

Get

HTTP Method: GET

URL: https://app.aplos.com/hermes/api/v1/transactions/:transactionId

Parameters:

  • allTags: List All tags: y, n

Headers:

  • Authorization = Bearer: [ACCESS TOKEN]
    The access token obtained via the authentication resource.
  • aplos-account-id = [ACCOUNT ID]
    The Aplos account (organization) you are accessing (OPTIONAL)

Example JSON:

{
  "version": "v2_0_0",
  "status": 200,
  "meta": {
    "resource_count": 1
  },
  "links": {
    "self": "/api/v1/transactions/1"
  },
  "data": {
    "transaction": {
      "id": 1,
      "memo": "A memo too",
      "note": "My first transaction",
      "date": "2014-12-31",
      "amount": 123.45,
      "contact": {
         "id": 1,
         "companyname": "Aplos",
         "type": "company"
      },
      "created": "2014-12-31T01:23:45.678-0700",
      "modified": "2014-12-31T12:34:56.789-0700",
      "lines": [
        {
          "id": 1,
          "amount": 123.45,
          "account": {
            "account_number": 1000,
            "name": "Cash"
          },
          "fund": {
            "id": 1,
            "name": "General Fund"
          }
        },
        {
          "id": 2,
          "amount": -123.45,
          "account": {
            "account_number": 4000,
            "name": "Donation Income"
          },
          "fund": {
            "id": 1,
            "name": "General Fund"
          }
        }
      ]
    }
  }
}

Post

HTTP Method: POST

URL: https://app.aplos.com/hermes/api/v1/transactions

Parameters:

  • [NONE]

Headers:

  • Authorization = Bearer: [ACCESS TOKEN]
    The access token obtained via the authentication resource.
  • aplos-account-id = [ACCOUNT ID]
    The Aplos account (organization) you are accessing (OPTIONAL)

Example JSON Body:

{
  "note": "My first transaction",
  "date": "2015-06-01",
  "contact": {
     "companyname": "Aplos",
     "type": "company"
  },
  "lines": [
    {
      "amount": 123.45,
      "account": {
        "account_number": 1000
      },
      "fund": {
        "id": 1
      }
    },
    {
      "amount": -123.45,
      "account": {
        "account_number": 4000
      },
      "fund": {
        "id": 1
      }
    }
  ]
}

Example JSON Response:

{
  "version": "v2_0_0",
  "message": "posted: 2",
  "status": 200,
  "meta": {
    "resource_count": 1
  },
  "links": {
    "self": "/api/v1/transactions/2"
  },
  "data": {
    "transaction": {
      "id": 2,
      "note": "My first transaction",
      "date": "2015-06-01",
      "amount": 123.45,
      "contact": {
         "id": 1,
         "companyname": "Aplos",
         "type": "company"
      },
      "created": "2014-12-31T01:23:45.678-0700",
      "lines": [
        {
          "id": 3,
          "amount": 123.45,
          "account": {
            "account_number": 1000,
            "name": "Cash"
          },
          "fund": {
            "id": 1,
            "name": "General Fund"
          }
        },
        {
          "id": 4,
          "amount": -123.45,
          "account": {
            "account_number": 4000,
            "name": "Donations Income"
          },
          "fund": {
            "id": 1,
            "name": "General Fund"
          }
        }
      ]
    }
  }
}

Put

HTTP Method: PUT

URL: https://app.aplos.com/hermes/api/v1/transactions/:transactionId

Parameters:

  • [NONE]

Headers:

  • Authorization = Bearer: [ACCESS TOKEN]
    The access token obtained via the authentication resource.
  • aplos-account-id = [ACCOUNT ID]
    The Aplos account (organization) you are accessing (OPTIONAL)

Example JSON Body:

{
  "note": "My first transaction (updated amounts)",
  "date": "2015-06-01",
  "contact": {
     "companyname": "Aplos",
     "type": "company"
  },
  "lines": [
    {
      "amount": 12300.45,
      "account": {
        "account_number": 1000
      },
      "fund": {
        "id": 1
      }
    },
    {
      "amount": -12300.45,
      "account": {
        "account_number": 4000
      },
      "fund": {
        "id": 1
      }
    }
  ]
}

Example JSON Response:

{
  "version": "v2_0_0",
  "message": "put: 2",
  "status": 200,
  "meta": {
    "resource_count": 1
  },
  "links": {
    "self": "/api/v1/transactions/2"
  },
  "data": {
    "transaction": {
      "id": 2,
      "note": "My first transaction (updated amounts)",
      "date": "2015-06-01",
      "amount": 12300.45,
      "contact": {
         "id": 1,
         "companyname": "Aplos",
         "type": "company"
      },
      "created": "2014-12-31T01:23:45.678-0700",
      "modified": "2014-12-31T12:34:56.789-0700",
      "lines": [
        {
          "id": 3,
          "amount": 12300.45,
          "account": {
            "account_number": 1000,
            "name": "Cash"
          },
          "fund": {
            "id": 1,
            "name": "General Fund"
          }
        },
        {
          "id": 4,
          "amount": -12300.45,
          "account": {
            "account_number": 4000,
            "name": "Donations Income"
          },
          "fund": {
            "id": 1,
            "name": "General Fund"
          }
        }
      ]
    }
  }
}

Delete

HTTP Method: DELETE

URL: https://app.aplos.com/hermes/api/v1/transactions/:transactionId

Parameters:

  • [NONE]

Headers:

  • Authorization = Bearer: [ACCESS TOKEN]
    The access token obtained via the authentication resource.
  • aplos-account-id = [ACCOUNT ID]
    The Aplos account (organization) you are accessing (OPTIONAL)

Example JSON Response:

{
  "version": "v2_0_0",
  "message": "deleted: 2",
  "status": 200
}