Get GHL Appointment
curl --request GET \
--url https://api.ravan.ai/api/v1/ghl/appointments/{appointment_id} \
--header 'X-Api-Key: <api-key>'import requests
url = "https://api.ravan.ai/api/v1/ghl/appointments/{appointment_id}"
headers = {"X-Api-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-Api-Key': '<api-key>'}};
fetch('https://api.ravan.ai/api/v1/ghl/appointments/{appointment_id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.ravan.ai/api/v1/ghl/appointments/{appointment_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-Api-Key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.ravan.ai/api/v1/ghl/appointments/{appointment_id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-Api-Key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.ravan.ai/api/v1/ghl/appointments/{appointment_id}")
.header("X-Api-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.ravan.ai/api/v1/ghl/appointments/{appointment_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-Api-Key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"success": true,
"message": "Request completed successfully",
"data": {
"id": "id_123",
"ghl_appointment_id": "id_123",
"contact_id": "id_123",
"agent_id": "id_123",
"agent_name": "example",
"contact_name": "example",
"contact_email": "alex@example.com",
"contact_phone": "+14155550100",
"appointment_time": "2026-03-14T12:00:00Z",
"status": "active"
}
}
GHL Integration API
Get GHL Appointment
Get GHL Appointment.
GET
/
api
/
v1
/
ghl
/
appointments
/
{appointment_id}
Get GHL Appointment
curl --request GET \
--url https://api.ravan.ai/api/v1/ghl/appointments/{appointment_id} \
--header 'X-Api-Key: <api-key>'import requests
url = "https://api.ravan.ai/api/v1/ghl/appointments/{appointment_id}"
headers = {"X-Api-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-Api-Key': '<api-key>'}};
fetch('https://api.ravan.ai/api/v1/ghl/appointments/{appointment_id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.ravan.ai/api/v1/ghl/appointments/{appointment_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-Api-Key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.ravan.ai/api/v1/ghl/appointments/{appointment_id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-Api-Key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.ravan.ai/api/v1/ghl/appointments/{appointment_id}")
.header("X-Api-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.ravan.ai/api/v1/ghl/appointments/{appointment_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-Api-Key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"success": true,
"message": "Request completed successfully",
"data": {
"id": "id_123",
"ghl_appointment_id": "id_123",
"contact_id": "id_123",
"agent_id": "id_123",
"agent_name": "example",
"contact_name": "example",
"contact_email": "alex@example.com",
"contact_phone": "+14155550100",
"appointment_time": "2026-03-14T12:00:00Z",
"status": "active"
}
}
Authorizations
string
required
Your Agni API key used to authenticate the request. Pass it in the
X-Api-Key header. Find or rotate it from your Ravan AI account settings.Path Parameters
string
required
The unique appointment ID. Use the ID returned when the appointment was created or listed.
Query Parameters
string
The organization ID that owns the resource. Use the organization ID from your Agni account.
Response
boolean
Whether the request succeeded.
string
Human-readable status message.
object
{
"success": true,
"message": "Request completed successfully",
"data": {
"id": "id_123",
"ghl_appointment_id": "id_123",
"contact_id": "id_123",
"agent_id": "id_123",
"agent_name": "example",
"contact_name": "example",
"contact_email": "alex@example.com",
"contact_phone": "+14155550100",
"appointment_time": "2026-03-14T12:00:00Z",
"status": "active"
}
}
⌘I

