Overview

The MatchRejectedReason API returns the reason why a previously submitted match request was rejected during the analysis or quality control process. When a match request cannot be processed successfully, the KoraStats system records a rejection reason.
This endpoint allows external platforms to retrieve that reason so corrective actions can be taken.
Typical reasons include:
  • Low video quality
  • Missing match sheet
  • Incomplete match video
  • Unsupported file format
  • Incorrect match metadata
The response contains:
  • Request identifier
  • Reference identifier
  • Match name
  • Rejection reason code
  • Rejection title
  • Detailed rejection description

How This Endpoint Works

This endpoint retrieves the rejection reason associated with a match request.
The API can identify the request in three different ways, depending on what identifiers your system has available.

Supported Request Identification Methods

The API supports three ways to call the endpoint:
  1. Using request_id
    The internal identifier created when the match request was submitted.
  2. Using match_id
    The internal match identifier stored in the KoraStats system.
  3. Using platform_id and platform_match_id
    The identifiers used by external platforms when integrating with the KoraStats API.
At least one of these methods must be provided when calling the API.

Request Identification Priority

When the API receives a request, it resolves the request identifier using the following logic:
  1. If request_id is provided → the system uses it directly.
  2. If match_id is provided → the system retrieves the associated request.
  3. If platform_id and platform_match_id are provided → the system:
    • Finds the internal match linked to the external platform match
    • Retrieves the request associated with that match.
If none of these identifiers can be resolved, the API returns an error.

Parameters

module
string
Module API fixed and cannot be changed. Always use api.
api
string
Endpoint name. Use MatchRejectedReason.
version
string
API version. Use V2.
request_id
integer
The request identifier created when the match request was submitted.
If provided, the API will retrieve the rejection reason directly using this identifier.
match_id
integer
Internal match identifier in the KoraStats system.
If request_id is not provided, the system will attempt to locate the request associated with this match.
platform_id
integer
External platform identifier registered in the KoraStats integration system.
Must be used together with platform_match_id.
platform_match_id
string
Match identifier used by the external platform when submitting the match request.
Must be used together with platform_id.
lang
string
Language of the response (en for English, ar for Arabic).
response
string
Output format (json or xml).

Example Requests

Example 1 — Using Request ID

curl --request GET \
--url "https://korastats.pro/pro/api.php?module=api&api=MatchRejectedReason&version=V2&response=json&lang=en&request_id=[REQUEST_ID]&key=YOUR_API_KEY"

Example 2 - Using Match ID

curl --request GET \
--url "https://korastats.pro/pro/api.php?module=api&api=MatchRejectedReason&version=V2&response=json&lang=en&match_id=[KoraStats MATCH ID]&key=YOUR_API_KEY"

Example 3 - Using Platform Identifiers

curl --request GET \
--url "https://korastats.pro/pro/api.php?module=api&api=MatchRejectedReason&version=V2&response=json&lang=en&platform_id=[PLATFORM_ID]&platform_match_id=[PLATFORM_REFERENCE_ID]&key=YOUR_API_KEY"
{
  "result": "string",
  "message": "string",
  "data": {
    "_type": "string",
    "requestId": "integer",
    "reference_id": "string",
    "match_name": "string",
    "reject_reason": {
      "id": "integer",
      "code": "string",
      "title": "string",
      "description": "string"
    }
  }
}

Response Field Description

FieldTypeDescription
resultstringIndicates whether the api request was processed successfully.
messagestringResponse message describing the request result.
dataobjectObject containing the rejection information.
data._typestringObject type identifier returned by the API.
data.requestIdintegerUnique identifier of the submitted request.
data.reference_idstringExternal reference identifier associated with the request.
data.match_namestringMatch name associated with the rejected request.
data.reject_reasonobjectObject describing the rejection reason.
data.reject_reason.idintegerIdentifier of the rejection reason.
data.reject_reason.codestringUnique rejection reason code.
data.reject_reason.titlestringShort title describing the rejection reason.
data.reject_reason.descriptionstringDetailed explanation of the rejection reason.

Rejection Reason Codes

The following codes describe why a match request may be rejected during processing.
The video resolution is too low to clearly identify players or actions.
The uploaded file format is incompatible with the analysis or playback system.
The video has an insufficient bitrate, causing compression artifacts and loss of detail.
The footage is optically blurred or not properly focused, making it difficult to analyze gameplay.
The camera fails to zoom in on the active play, resulting in players appearing too small.
The camera does not follow the ball or gameplay properly, missing key moments of action.
Significant portions of the match are not captured in the recording.
Dirt, water, or smudges on the lens obscure the view of the field.
The camera is placed too low (below 6 meters), resulting in a poor perspective of the pitch.
The camera is not aligned with the center of the pitch, causing distortion or misalignment.
Some areas of the pitch are not visible due to obstruction or poor camera angle.
Lighting conditions create glare, shadows, or reduced visibility due to backlighting.