Skip to main content

Statistics

This guide explains how to interact with the statistics API endpoints in the Calwe application.

Asmin Panel Statistics

Endpoint

  • Method: GET
  • URL: /v1/admin/statistics/panel-information

Request Headers

HeaderValueRequired
Content-Typeapplication/jsonYes
Acceptapplication/jsonYes

Success Response

{
"success": true,
"message": "تم جلب البيانات بنجاح.",
"data": {
"coachesCount": 285,
"customersCount": 68,
"directSessionsCount": 651,
"scheduledSessionsCount": 504,
"coaches": {
"created_today": 0,
"latest": 0,
"activated_today": 0,
"total_registered_from_start": 285,
"has_sessions": 53
},
"customers": {
"created_today": 0,
"latest": 3,
"activated_today": 0,
"total_registered_from_start": 68,
"has_sessions": 35
},
"topRecordingCountries": {
"coaches": [
{
"name": "السعودية",
"count": 170,
"media": []
},
],
"customers": [
{
"name": "السعودية",
"count": 44
},
]
},
"topRatedCoaches": [
{
"name": "مازن احمد محمد",
"rate": "5.0",
"avatar": "https://i.ibb.co/g4BR50S/avatar.png"
},
],
"mostConsultedCustomers": [
{
"name": "ماريا المجالي",
"sessionsCount": 447,
"avatar": "https://calwe-testing-static.s3.us-east-2.amazonaws.com/628/DSC_9295-400-600.jpg"
},
],
"mostRequestedCategories": [
{
"name": "استشارة تربوية",
"percent": "39.3%"
},
{
"name": "استشارة حرة",
"percent": "14.7%"
},
{
"name": "استشارة مال",
"percent": "11.2%"
}
],
"order": {
"totalOrders": 1133,
"labels": [
"Jan",
"Feb",
],
"data": [
260,
62,
]
},
"orderPayout": {
"totalOrders": 399927.1,
"labels": [
"Jan",
"Feb",
],
"data": [
"108332.50",
"6750.00",
]
}
},
"statusCode": 200
}

Users

Endpoint

  • Method: GET
  • URL: /v1/admin/statistics/users

Request Headers

HeaderValueRequired
Content-Typeapplication/jsonYes
Acceptapplication/jsonYes

Success Response

{
"success": true,
"message": "تم جلب البيانات بنجاح.",
"data": {
"totalUsers": "73"
},
"statusCode": 200
}

Customers

Endpoint

  • Method: GET
  • URL: /v1/admin/statistics/customers

Request Headers

HeaderValueRequired
Content-Typeapplication/jsonYes
Acceptapplication/jsonYes

Success Response

{
"success": true,
"message": "تم جلب البيانات بنجاح.",
"data": {
"activatedCoachesChart": [
{
"status": "active",
"value": "46"
},
{
"status": "unactive",
"value": "22"
}
],
"customersCountries": [
{
"name": "سعودي",
"value": "39"
},
],
"customersSessions": [
{
"name": "ماريا المجالي",
"avatar": "https://i.ibb.co/YhTw0wR/7-512.png",
"value": "447"
},
]
},
"statusCode": 200
}

Coaches

Endpoint

  • Method: GET
  • URL: /v1/admin/statistics/coaches

Request Headers

HeaderValueRequired
Content-Typeapplication/jsonYes
Acceptapplication/jsonYes

Success Response

{
"success": true,
"message": "تم جلب البيانات بنجاح.",
"data": {
"activatedCoachesChart": [
{
"status": "active",
"value": "172"
},
{
"status": "unactive",
"value": "113"
}
],
"coachesCountries": [
{
"name": "سعودي",
"value": "137"
},
],
"coachesSessions": [
{
"name": "احمد البيتي",
"avatar": "https://i.ibb.co/g4BR50S/avatar.png",
"sessionsCount": 223
},
]
},
"statusCode": 200
}

Sessions

Endpoint

  • Method: GET
  • URL: /v1/admin/statistics/sessions

Request Headers

HeaderValueRequired
Content-Typeapplication/jsonYes
Acceptapplication/jsonYes

Success Response

{
"success": true,
"message": "تم جلب البيانات بنجاح.",
"data": {
"totalSessions": 1155,
"totalCompletedSessions": 687,
"totalScheduledSessions": 18,
"totalCancelledSessions": 379
},
"statusCode": 200
}

Contact Us

Endpoint

  • Method: GET
  • URL: /v1/admin/statistics/contact-us

Request Headers

HeaderValueRequired
Content-Typeapplication/jsonYes
Acceptapplication/jsonYes

Success Response

{
"success": true,
"message": "تم جلب البيانات بنجاح.",
"data": {
"totalMessages": 62,
"totalMessageByStatus": [
{
"name": "جديدة",
"value": 37
},
{
"name": "تجاهل",
"value": 11
},
],
"totalMessageByReason": [
{
"name": "أواجه مشكلة في الدفع و الشراء",
"contactUsCount": 20
},
{
"name": "أواجه مشكلة متعلقة في الجلسات",
"contactUsCount": 16
},
]
},
"statusCode": 200
}

Coach Levels

Endpoint

  • Method: GET
  • URL: /v1/admin/statistics/coach-levels

Request Headers

HeaderValueRequired
Content-Typeapplication/jsonYes
Acceptapplication/jsonYes

Success Response

{
"success": true,
"message": "تم جلب البيانات بنجاح.",
"data": {
"totalCoachLevels": 7
},
"statusCode": 200
}

Coach Categories

Endpoint

  • Method: GET
  • URL: /v1/admin/statistics/coach-categories

Request Headers

HeaderValueRequired
Content-Typeapplication/jsonYes
Acceptapplication/jsonYes

Success Response

{
"success": true,
"message": "تم جلب البيانات بنجاح.",
"data": {
"totalCoachCategories": 6
},
"statusCode": 200
}

Wallets

Endpoint

  • Method: GET
  • URL: /v1/admin/statistics/wallets

Request Headers

HeaderValueRequired
Content-Typeapplication/jsonYes
Acceptapplication/jsonYes

Success Response

{
"success": true,
"message": "تم جلب البيانات بنجاح.",
"data": {
"totalWallets": 435,
"customerWalletsTotalBalance": "200020693.90",
"coachWalletsTotalBalance": "1070063.00",
"systemWalletsTotalBalance": "265804.80",
"topHighestBalances": [
{
"id": "uuid",
"name": "ريمان الامام",
"holderType": "عميل",
"balance": "99952339.00"
},
]
},
"statusCode": 200
}

Transactions

Endpoint

  • Method: GET
  • URL: /v1/admin/statistics/transactions

Request Headers

HeaderValueRequired
Content-Typeapplication/jsonYes
Acceptapplication/jsonYes

Success Response

{
"success": true,
"message": "تم جلب البيانات بنجاح.",
"data": {
"outgoingAmountsFromSystem": "7051.50",
"incomingAmountsIntoSystem": "165530.40",
"outSystemTransactionsCount": 39,
"inSystemTransactionsCount": 371
},
"statusCode": 200
}

Rating Details

Endpoint

  • Method: GET
  • URL: /v1/admin/statistics/rating-details

Request Headers

HeaderValueRequired
Content-Typeapplication/jsonYes
Acceptapplication/jsonYes

Success Response

{
"success": true,
"message": "تم جلب البيانات بنجاح.",
"data": {
"coachRespect": {
"stronglyDisagree": {
"count": 5,
"percent": "1%"
},
"stronglyAgree": {
"count": 486,
"percent": "96%"
},
},
"coachRequestedExternalCommunication": {
"no": {
"count": 11,
"percent": "2.2%"
},
"yes": {
"count": 495,
"percent": "97.8%"
}
},
"coachAttendance": {
"no": {
"count": 8,
"percent": "1.6%"
},
"yes": {
"count": 498,
"percent": "98.4%"
}
},
"coachProfessionalism": {
"stronglyDisagree": {
"count": 7,
"percent": "1.4%"
},
"stronglyAgree": {
"count": 489,
"percent": "96.6%"
},
},
"coachTimeManagement": {
"disagree": {
"count": 6,
"percent": "1.2%"
},
"stronglyDisagree": {
"count": 6,
"percent": "1.2%"
},
},
"coachUnderstanding": {
"disagree": {
"count": 8,
"percent": "1.6%"
},
"stronglyDisagree": {
"count": 3,
"percent": "0.6%"
},
},
"coachSolutions": {
"stronglyAgree": {
"count": 486,
"percent": "96%"
},
"disagree": {
"count": 3,
"percent": "0.6%"
},
}
},
"statusCode": 200
}

Coach Payouts

Endpoint

  • Method: GET
  • URL: /v1/admin/statistics/coach-payouts/{id}

Request Headers

HeaderValueRequired
Content-Typeapplication/jsonYes
Acceptapplication/jsonYes

Success Response

{
"success": true,
"message": "تم جلب البيانات بنجاح.",
"data": {
"totalAmount": "355.9K",
"dueAmount": "354.6K",
"payoutsAmount": "1.3K",
"sessionsCount": "223"
},
"statusCode": 200
}