Get Expense Voucher

Get Expense Voucher

Purpose

To get the Expense/Location of your Organization.

Expense Indent API accept post request with filter conditions. Response include filter expenses array with matching conditions.

API return JSON array of expenses.

Request URL

https://live.membroz.com/api/expenses/filter

Request Method

POST
Note
  • Send authkey in https header
  • You must use only Field API names in the input. You can obtain the field API names from Fields metadata API
  • Enterprise customer can replace domain name with their hosting Url. for example https://app.xyz.com/api/expenses
  • API will return matching records in array or error message.

Request JSON

Attribute Data Type Mandatory Description
search Array yes Add search fields to filter out return data.
Example: { "search":[{ "searchfield": "status", "searchvalue": "active", "criteria": "eq", "datattype": "text" }]}
Only status = "active" records will return
select Array Add select fields to restrict return data schema.
Example: Example: { "fieldname": "branchname", "value": 1 }
Only branchname will return
sort object Sort return array based on sort input
Example: { "branchname" : 1}
limit number limit return array size
Example: limit: 10
only 10 records will return in the array

Sample Request

curl --location --request POST 'https://live.membroz.com/api/expenses/filter' \
--header 'authkey: XXXXXXXXXX' \
--header 'Content-Type: application/json' \
--data-raw '{ 
    "search": [
        { "searchfield": "status", "searchvalue": "active", "criteria": "eq", "datatype": "text" }
    ]
}'
OkHttpClient client = new OkHttpClient().newBuilder()
  .build();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{ \r\n    \"search\": [\r\n        { \"searchfield\": \"status\", \"searchvalue\": \"active\", \"criteria\": \"eq\", \"datatype\": \"text\" }\r\n    ]\r\n}");
Request request = new Request.Builder()
  .url("https://live.membroz.com/api/expenses/filter")
  .method("POST", body)
  .addHeader("authkey", "XXXXXXXXXX")
  .addHeader("Content-Type", "application/json")
  .build();
Response response = client.newCall(request).execute();
 "https://live.membroz.com/api/expenses/filter",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS =>"{ \r\n    \"search\": [\r\n        { \"searchfield\": \"status\", \"searchvalue\": \"active\", \"criteria\": \"eq\", \"datatype\": \"text\" }\r\n    ]\r\n}",
  CURLOPT_HTTPHEADER => array(
    "authkey: XXXXXXXXXX",
    "Content-Type: application/json"
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
import requests

url = "https://live.membroz.com/api/expenses/filter"

payload = "{ \r\n    \"search\": [\r\n        { \"searchfield\": \"status\", \"searchvalue\": \"active\", \"criteria\": \"eq\", \"datatype\": \"text\" }\r\n    ]\r\n}"
headers = {
  'authkey': 'XXXXXXXXXX',
  'Content-Type': 'application/json'
}

response = requests.request("POST", url, headers=headers, data = payload)

print(response.text.encode('utf8'))
require "uri"
require "net/http"

url = URI("https://live.membroz.com/api/expenses/filter")

https = Net::HTTP.new(url.host, url.port);
https.use_ssl = true

request = Net::HTTP::Post.new(url)
request["authkey"] = "XXXXXXXXXX"
request["Content-Type"] = "application/json"
request.body = "{ \r\n    \"search\": [\r\n        { \"searchfield\": \"status\", \"searchvalue\": \"active\", \"criteria\": \"eq\", \"datatype\": \"text\" }\r\n    ]\r\n}"

response = https.request(request)
puts response.read_body
var client = new RestClient("https://live.membroz.com/api/expenses/filter");
client.Timeout = -1;
var request = new RestRequest(Method.POST);
request.AddHeader("authkey", "XXXXXXXXXX");
request.AddHeader("Content-Type", "application/json");
request.AddParameter("application/json", "{ \r\n    \"search\": [\r\n        { \"searchfield\": \"status\", \"searchvalue\": \"active\", \"criteria\": \"eq\", \"datatype\": \"text\" }\r\n    ]\r\n}",  ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
Console.WriteLine(response.Content);

Possible Errors

HTTP Status Error Code Message Reason
permission denied 403 You do not have permission

Sample Response

 {
        "_id": "5f71709bd0835e0aac69e187",
        "status": "active",
        "expenseaccount": {
            "_id": "5d5d4fda93b7a12dfcfea7d4",
            "headname": "Advertising And Marketing",
            "description": "Your expenses on promotional, marketing and advertising activities like banners, web-adds, trade shows, etc. are recorded in advertising and marketing account.",
            "accounttype": "Expense",
            "headaccount": "5d5d4cfe93b7a12dfcfea7b6",
            "reporthead": "Expense",
            "reporttype": "incomestatement",
            "status": "active",
            "createdAt": "2020-08-15T13:54:45.335Z",
            "secure": false,
            "updatedAt": "2020-08-15T14:02:20.823Z"
        },
        "paidthrough": "5d5d4cfe93b7a12dfcfea7b1",
        "vendorid":"5eec4cafc535f1b870bb7cb7",
        "addedby": "5ee9db1683e5d3898bd66135",
        "branchid": "5e954c7b9df11624f81e7859",
        "amount": 25000,
        "date": "2020-07-06T18:30:00.000Z",
        "draccount": "5d5d4fda93b7a12dfcfea7d4",
        "craccount": "5d5d4cfe93b7a12dfcfea7b1",
        "createdAt": "2020-07-07T06:50:42.818Z",
        "updatedAt": "2020-07-07T06:50:42.818Z"
    }