Contents
On this page
Find Booking - Plugixa Car Rental
POST /plugixa-car-rental/v1/public/manage/find
Email a customer the link to manage their booking, from its reference and their email address.
Public: no sign-in and no nonce. Needs the Customer portal app on. Rate limited to 5 requests an hour per visitor address: see Public routes.
The answer is the same whether or not a booking matched, so the route says nothing about which bookings exist. The email is sent only when the reference and the address both match a booking (the address in any case) and the site has a page with the customer portal on it.
Request
POST https://your-site.example/wp-json/plugixa-car-rental/v1/public/manage/find
Request body
Content type: application/json
| Field | Type | Required | Description |
|---|---|---|---|
reference |
string |
Yes | The booking reference, in any case. |
email |
string |
Yes | The email address on the booking. |
website |
string |
No | A honeypot: leave it empty or leave it out. |
{
"reference": "CR-2026-0128",
"email": "claire.martin@example.com"
}
Responses
200 OK, whether or not a booking matched.
{
"success": true,
"data": {
"message": "If that reference and email match a booking, we have emailed the link to manage it."
}
}
| Field | Type | Meaning |
|---|---|---|
data.message |
string |
A sentence to show the customer |
Errors
| Status | Code | When |
|---|---|---|
400 |
plugixa_car_rental_rejected |
The hidden website field was filled in. |
Plus the errors every endpoint can return.
Examples
curl -s -X POST "https://your-site.example/wp-json/plugixa-car-rental/v1/public/manage/find" \
-H "Content-Type: application/json" \
-d '{"reference":"CR-2026-0128","email":"claire.martin@example.com"}'
<?php
$ch = curl_init('https://your-site.example/wp-json/plugixa-car-rental/v1/public/manage/find');
curl_setopt_array($ch, [
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => [
'Content-Type: application/json',
],
CURLOPT_POSTFIELDS => json_encode([
'reference' => 'CR-2026-0128',
'email' => 'claire.martin@example.com',
]),
]);
$response = json_decode(curl_exec($ch), true);
curl_close($ch);
const response = await fetch('https://your-site.example/wp-json/plugixa-car-rental/v1/public/manage/find', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
},
body: JSON.stringify({ reference: 'CR-2026-0128', email: 'claire.martin@example.com' }),
});
const { data } = await response.json();
Quick Links
Share