Get Faciltiy Booking Data

Get Faciltiy Booking Data

Purpose

To get the Booking/Location of your Organization.

Booking API accept post request with filter conditions. Response include filter booking array with matching conditions.

API return JSON array of bookings.

Request URL

https://live.membroz.com/api/facilitybookings/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/facilitybookings
  • 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/facilitybookings/filter' \
--header 'authkey: XXXXXXXXXX' \
--header 'Content-Type: application/json' \
--data-raw '{
	"search": [
		{"searchfield": "status", "searchvalue": "active", "criteria": "eq"}
	],
	"select": [
		{ "fieldname": "occupants", "value": 1 },
		{ "fieldname": "host", "value": 1 },
		{ "fieldname": "charges", "value": 1 },
		{ "fieldname": "addons", "value": 1 },
		{ "fieldname": "walletTxnIds", "value": 1 },
		{ "fieldname": "bookingdate", "value": 1 },
		{ "fieldname": "startdate", "value": 1 },
		{ "fieldname": "enddate", "value": 1 },
		{ "fieldname": "facilityid", "value": 1 },
		{ "fieldname": "customerid", "value": 1 },
		{ "fieldname": "onModel", "value": 1 },
		{ "fieldname": "quantity", "value": 1 },
		{ "fieldname": "markingid", "value": 1 },
		{ "fieldname": "totalrooms", "value": 1 },
		{ "fieldname": "timeslotid", "value": 1 },
		{ "fieldname": "timeslot", "value": 1 },
		{ "fieldname": "totalnights", "value": 1 },
		{ "fieldname": "status", "value": 1 },
		{ "fieldname": "branchid", "value": 1 },
		{ "fieldname": "total", "value": 1 },
		{ "fieldname": "totalPay", "value": 1 }
	]
}'
OkHttpClient client = new OkHttpClient().newBuilder()
  .build();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\r\n\t\"search\": [\r\n\t\t{\"searchfield\": \"status\", \"searchvalue\": \"active\", \"criteria\": \"eq\"}\r\n\t],\r\n\t\"select\": [\r\n\t\t{ \"fieldname\": \"occupants\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"host\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"charges\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"addons\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"walletTxnIds\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"bookingdate\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"startdate\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"enddate\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"facilityid\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"customerid\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"onModel\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"quantity\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"markingid\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"totalrooms\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"timeslotid\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"timeslot\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"totalnights\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"status\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"branchid\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"total\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"totalPay\", \"value\": 1 }\r\n\t]\r\n}");
Request request = new Request.Builder()
  .url("https://live.membroz.com/api/facilitybookings/filter")
  .method("POST", body)
  .addHeader("authkey", "XXXXXXXXXX")
  .addHeader("Content-Type", "application/json")
  .build();
Response response = client.newCall(request).execute();
 "https://live.membroz.com/api/facilitybookings/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\t\"search\": [\r\n\t\t{\"searchfield\": \"status\", \"searchvalue\": \"active\", \"criteria\": \"eq\"}\r\n\t],\r\n\t\"select\": [\r\n\t\t{ \"fieldname\": \"occupants\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"host\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"charges\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"addons\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"walletTxnIds\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"bookingdate\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"startdate\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"enddate\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"facilityid\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"customerid\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"onModel\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"quantity\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"markingid\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"totalrooms\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"timeslotid\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"timeslot\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"totalnights\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"status\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"branchid\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"total\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"totalPay\", \"value\": 1 }\r\n\t]\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/facilitybookings/filter"

payload = "{\r\n\t\"search\": [\r\n\t\t{\"searchfield\": \"status\", \"searchvalue\": \"active\", \"criteria\": \"eq\"}\r\n\t],\r\n\t\"select\": [\r\n\t\t{ \"fieldname\": \"occupants\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"host\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"charges\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"addons\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"walletTxnIds\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"bookingdate\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"startdate\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"enddate\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"facilityid\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"customerid\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"onModel\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"quantity\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"markingid\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"totalrooms\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"timeslotid\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"timeslot\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"totalnights\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"status\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"branchid\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"total\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"totalPay\", \"value\": 1 }\r\n\t]\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/facilitybookings/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\t\"search\": [\r\n\t\t{\"searchfield\": \"status\", \"searchvalue\": \"active\", \"criteria\": \"eq\"}\r\n\t],\r\n\t\"select\": [\r\n\t\t{ \"fieldname\": \"occupants\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"host\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"charges\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"addons\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"walletTxnIds\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"bookingdate\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"startdate\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"enddate\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"facilityid\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"customerid\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"onModel\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"quantity\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"markingid\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"totalrooms\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"timeslotid\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"timeslot\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"totalnights\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"status\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"branchid\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"total\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"totalPay\", \"value\": 1 }\r\n\t]\r\n}"

response = https.request(request)
puts response.read_body
var client = new RestClient("https://live.membroz.com/api/facilitybookings/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\t\"search\": [\r\n\t\t{\"searchfield\": \"status\", \"searchvalue\": \"active\", \"criteria\": \"eq\"}\r\n\t],\r\n\t\"select\": [\r\n\t\t{ \"fieldname\": \"occupants\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"host\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"charges\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"addons\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"walletTxnIds\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"bookingdate\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"startdate\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"enddate\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"facilityid\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"customerid\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"onModel\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"quantity\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"markingid\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"totalrooms\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"timeslotid\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"timeslot\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"totalnights\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"status\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"branchid\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"total\", \"value\": 1 },\r\n\t\t{ \"fieldname\": \"totalPay\", \"value\": 1 }\r\n\t]\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": "5f240bf16df10f60d3356656",
        "marking": {
            "data": [
                {
                    "staffcommission": 0,
                    "facility-type": "Workout",
                    "starttime": "08:00",
                    "endtime": "10:00",
                    "user_minute": 60,
                    "availability_duration": [
                        "Monday",
                        "Tuesday",
                        "Wednesday",
                        "Thursday",
                        "Friday"
                    ],
                    "availability_type": "timeslot_bases",
                    "price": "5f240bf26df10f60d335665c",
                    "user_facilitator": [
                        "5ef9faad91495422f0432999",
                        "5ed5011caaedf21d9092c9bb"
                    ],
                    "id": "3557425e-de63-48db-b553-383297b9f42f",
                    "availability-timeslot": [
                        {
                            "id": "ff8f26d1-4a56-43ec-a43d-21391427359c",
                            "day": "Monday",
                            "starttime": "8:00",
                            "endtime": "9:00"
                        }
                    ]
                }
            ],
            "subformid": "5bcff3a9f6955e00c8fba4d5"
        },
        "paymentmode": [],
        "status": "active",
        "title": "Weight loss session",
        "facilitytype": "User",
        "quantity": 1,
        "branchid":"5e954c7b9df11624f81e7859",
        "isInventory": true,
        "createdAt": "2020-07-31T12:17:53.528Z",
        "updatedAt": "2020-09-22T11:55:30.599Z",
        "updatedby": "5e954c7b9df11624f81e785b"
    }