Developer API · v1
API Documentation
Read your clients, itineraries, proposals and bookings — or push leads straight into your CRM — over a simple, token-authenticated REST API that returns JSON.
BASE URL
https://jktourcrm.com/api/v1
1. Get a token
Generate a personal access token from your dashboard, under Settings → API Tokens. Copy it immediately — it’s shown only once. Tokens are scoped to your account: you only ever see your own data.
2. Authenticate
Send your token as a bearer header on every request. Also send Accept: application/json.
curl https://jktourcrm.com/api/v1/me \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Accept: application/json"
3. Rate limits & responses
- Up to 60 requests/minute per token (HTTP
429when exceeded). - List endpoints are paginated — use
?page=and?per_page=(max 100). Responses include ametablock withcurrent_page,last_pageandtotal. - All responses are JSON wrapped in a
datakey.
4. Endpoints
GET
/api/v1/me
Your account summary and record counts.
GET
/api/v1/clients
List your clients. Filters:
?q=, ?status=, ?per_page=, ?page=.
POST
/api/v1/clients
Create a client / capture a lead. Body:
name (required), email, phone, company, city, country, nationality, notes, tags[].
GET
/api/v1/clients/{id}
Fetch a single client by ID.
GET
/api/v1/itineraries
List your itineraries. Filter:
?status=.
GET
/api/v1/itineraries/{id}
Fetch one itinerary including its day-by-day plan.
GET
/api/v1/proposals
List your proposals. Filter:
?status=.
GET
/api/v1/bookings
List your bookings.
5. Examples
List clients
curl "https://jktourcrm.com/api/v1/clients?per_page=2" \
-H "Authorization: Bearer YOUR_TOKEN" -H "Accept: application/json"
{
"data": [
{ "id": 12, "name": "Aisha Khan", "email": "aisha@example.com",
"phone": "+44...", "country": "United Kingdom", "status": "active",
"tags": ["honeymoon"], "created_at": "2026-06-01T10:22:00+00:00" }
],
"meta": { "current_page": 1, "last_page": 9, "per_page": 2, "total": 18 }
}
Create a lead
curl -X POST https://jktourcrm.com/api/v1/clients \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Accept: application/json" -H "Content-Type: application/json" \
-d '{"name":"New Lead","email":"lead@site.com","phone":"+1...","notes":"From website form"}'
Returns 201 Created with the new client object. Perfect for wiring your website’s enquiry form straight into your CRM.
6. Errors
401 — missing/invalid token404 — record not found / not yours422 — validation failed (see errors)429 — rate limit exceededReady to build?
Create your first token and start integrating in minutes.
Get your API token