आपको अपने PHP ऐप में अब खेल डेटा की आवश्यकता है, अगले स्प्रिंट में नहीं। इस गाइड के अंत तक आप SofaScore - लाइव API से सभी समर्थित खेलों की सूची बनाएंगे, क्लबों और राष्ट्रीय टीमों जैसी संस्थाओं की खोज करेंगे, और देश के झंडे लाएंगे—उत्पादन-तैयार PHP कोड का उपयोग करके जिसे आप इस सप्ताह Zyla API Hub के माध्यम से भेज सकते हैं।
आप SofaScore - लाइव API के साथ क्या बना सकते हैं
Zyla API Hub पर SofaScore - लाइव API खेल मेटाडेटा प्रदान करता है जिसे आप जल्दी से एकीकृत कर सकते हैं:
- सभी समर्थित खेल प्राप्त करें (जैसे, फुटबॉल, टेनिस, बास्केटबॉल)।
- SofaScore संस्थाओं (टीमों, खिलाड़ियों, प्रतियोगिताओं आदि) में क्वेरी स्ट्रिंग द्वारा खोजें।
- UI बैज और लीग देश के मार्करों के लिए छवि बाइट्स के रूप में देश के झंडे लाएं।
यह API स्कोरबोर्ड, मैच केंद्र, सट्टेबाजी उपकरण, स्काउटिंग डैशबोर्ड, या किसी भी खेल उत्पाद के लिए उपयुक्त है जिसे साफ मेटाडेटा और छवियों की आवश्यकता होती है। यह Zyla API Hub के पीछे होस्ट किया गया है, इसलिए आप सभी APIs के लिए एक कुंजी और एक सदस्यता मॉडल का उपयोग करते हैं जिन्हें आप अपनाते हैं।
Zyla API Hub पर शुरू करना
SofaScore - लाइव API को कॉल करने के लिए:
- सूची खोलें: Zyla पर SofaScore - लाइव API.
- सदस्यता लें (या जब उपलब्ध हो तो मुफ्त परीक्षण शुरू करें)। Zyla एक सदस्यता + कोटा मॉडल का उपयोग करता है, प्रति कॉल नहीं। आमतौर पर, पहली बार उपयोगकर्ताओं को उनके पहले API के लिए 7-दिन का परीक्षण या 50 अनुरोधों तक पहुंच प्राप्त होती है—वर्तमान पहुंच विकल्पों और मूल्य निर्धारण के लिए API पृष्ठ की जांच करें।
- अपने डैशबोर्ड से अपना API कुंजी कॉपी करें।
सभी अनुरोधों को हेडर Authorization: Bearer YOUR_API_KEY की आवश्यकता होती है। कोई भी मूल पहुंच कुंजी न दें—केवल Zyla कुंजी का उपयोग करें। आप बाद में उसी खाते और बिलिंग के साथ अधिक खेल APIs जोड़ सकते हैं Zyla API Hub पर।
आप जिन एंडपॉइंट्स का उपयोग करेंगे
नीचे Zyla के माध्यम से इस API के लिए प्रलेखित एंडपॉइंट्स हैं। केवल URLs, विधियों और पैरामीटर का उपयोग करें जैसा कि सूचीबद्ध है।
1) सभी खेल प्राप्त करें
सभी उपलब्ध खेलों की सूची लौटाता है।
- विधि: GET
- URL: https://zylalabs.com/api/12787/sofascore-live-api/25080/get-all-sports
- पैरामीटर: कोई नहीं
- Auth: Authorization: Bearer YOUR_API_KEY
cURL
curl -s -X GET "https://zylalabs.com/api/12787/sofascore-live-api/25080/get-all-sports" \
-H "Authorization: Bearer YOUR_API_KEY"
PHP (curl_init)
<?php
$ch = curl_init();
curl_setopt_array($ch, [
CURLOPT_URL => "https://zylalabs.com/api/12787/sofascore-live-api/25080/get-all-sports",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => [
"Authorization: Bearer YOUR_API_KEY"
],
CURLOPT_TIMEOUT => 15
]);
$response = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
if ($response === false || $httpCode >= 400) {
throw new RuntimeException("Request failed: HTTP $httpCode - ".curl_error($ch));
}
curl_close($ch);
d$data = json_decode($response, true);
if (json_last_error() !== JSON_ERROR_NONE) {
throw new RuntimeException("Invalid JSON: ".json_last_error_msg());
}
// Example: build a select menu of sports
foreach ($data as $sport) {
printf("<option value='%s'>%s</option>
",
htmlspecialchars($sport["slug"], ENT_QUOTES),
htmlspecialchars($sport["name"], ENT_QUOTES)
);
}
JSON (वास्तविक उदाहरण)
[
{
"id": 1,
"name": "Football",
"slug": "football"
},
{
"id": 5,
"name": "Tennis",
"slug": "tennis"
},
{
"id": 2,
"name": "Basketball",
"slug": "basketball"
},
{
"id": 64,
"name": "Baseball",
"slug": "baseball"
},
{
"id": 23,
"name": "Volleyball",
"slug": "volleyball"
},
{
"id": 63,
"name": "American football",
"slug": "american-football"
},
{
"id": 6,
"name": "Handball",
"slug": "handball"
},
{
"id": 20,
"name": "Table tennis",
"slug": "table-tennis"
},
{
"id": 4,
"name": "Ice hockey",
"slug": "ice-hockey"
},
{
"id": 22,
"name": "Darts",
"slug": "darts"
},
{
"id": 72,
"name": "E-sports",
"slug": "esports"
},
{
"id": 11,
"name": "Motorsport",
"slug": "motorsport"
},
{
"id": 65,
"name": "Cycling",
"slug": "cycling"
},
{
"id": 62,
"name": "क्रिकेट",…
आप वास्तव में उपयोग करेंगे:
- id: खेल के लिए पूर्णांक पहचानकर्ता। मानचित्रण और फ़िल्टरिंग के लिए उपयोगी।
- name: मानव-अनुकूल लेबल (इसे अपने UI में प्रदर्शित करें)।
- slug: URL-सुरक्षित अद्वितीय कुंजी (रूट, कैश कुंजी, और लुकअप में उपयोग करें)।
कार्यान्वयन सुझाव:
- इस प्रतिक्रिया को सर्वर-साइड पर कम से कम कुछ घंटों के लिए कैश करें। खेलों का सेट लाइव स्कोर की तुलना में कम बार बदलता है।
- UI रूटिंग के लिए स्लग को स्थिर पहचानकर्ताओं के रूप में मानें। उपयोगकर्ताओं को नाम दिखाएं; URLs में स्लग स्टोर करें।
2) सभी संस्थाओं की खोज करें
क्वेरी स्ट्रिंग (टीमों, प्रतियोगिताओं, खिलाड़ियों आदि) द्वारा सभी SofaScore संस्थाओं की खोज करें।
- विधि: GET
- URL: https://zylalabs.com/api/12787/sofascore-live-api/25082/search-all-entities
- पैरामीटर:
- q (string, आवश्यक): रियल मैड्रिड
cURL
curl -s -X GET "https://zylalabs.com/api/12787/sofascore-live-api/25082/search-all-entities?q=real+madrid" \
-H "Authorization: Bearer YOUR_API_KEY"
प्रतिक्रिया विवरण यहां पूरी तरह से प्रलेखित नहीं हैं, लेकिन यह आपकी क्वेरी द्वारा मेल खाती संस्थाओं को लौटाता है जिसमें id, name, slug, images, और देश डेटा जैसे मेटाडेटा शामिल हैं जहां उपलब्ध हो। केवल उन फ़ील्ड को पार्स करें जिनकी आपके UI को आवश्यकता है और अज्ञात विशेषताओं को बाद की जांच के लिए लॉग करें।
3) देश का झंडा प्राप्त करें
देश का झंडा छवि बाइट्स लौटाता है।
- विधि: GET
- URL: https://zylalabs.com/api/12787/sofascore-live-api/31197/get-country-flag
- पैरामीटर:
- country_code (string, आवश्यक): EN
cURL
curl -s -X GET "https://zylalabs.com/api/12787/sofascore-live-api/31197/get-country-flag?country_code=EN" \
-H "Authorization: Bearer YOUR_API_KEY"
JSON (वास्तविक उदाहरण)
iVBORw0KGgoAAAANSUhEUgAAAJYAAACWCAMAAAAL34HQAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAJcEhZcwAACxMAAAsTAQCanBgAAAELUExURUdwTN/f37QVJd7e3t3d3d/f39/f39/f397e3t7e3t3d3d3d3d3d3d/f397e3t/f39/f39zc3N7e3rQUJN/f37MUJLUTJd/f39/f3+Hh4d3d3bMUJLUVJbQUJLUVJbUUJLcQKOHh4d3d3bQVJLQUJN/f397e3rQVJbIWI7ITI7QUJLcYKM4RJP///97e3rQUJPv7++Li4v39/ebm5uDg4Orq6vDw8OTk5Pf397sTJPn5+bsUJPPz8/Ly8u7u7rcUJMcSJOzs7PHx8cQSJO/v77gUJLgTJOjo6MoSJMETJL8TJLUUJL4TJOvr680RJMsSJMsRJMQTJL0TJO3t7cwRJLYUJM0SJLwUJL4UJDN2488AAAAsdFJOUwB/38+AMBAg79+fcJBAv3CfYKC/YICfj79vr0AwcGCvIF+Pz8+vsKBQULAgUCRTtgAABilJREFUeNrtnGdX40YUhoWrhA1uGFj6tmQ34VrFKl6vzdqYDrtJNvX//5JMkSU3YWk0kiYn3A/CB3zMc+776s54NHMlKV6cfThp756+zeVUErlcq7XbPj48kjKLYqOel9WAkLf3GsXUkcqVA7mDIwiL/FE+qKSItrWndKZBIR6vrz+TuL6excKhbG6lwyR3/ND/eZiM7r6dz8bdaHL/tzPzJmUz4ZyVKtvePzMtu2fAeUCA0bNvde/N+UaCUBteorp2H0gEYpHo210/ZeVkXL7pMxkwjeexUGgDjywBMA/KufKZwmARMj0ZME++bg/mIwwWip7lgm1wBHtFocyxBsCGhVLmgim8zF+md585r15ULB8szyVhrn6WBhAPywfb4JWqJU8xYSEwan6lzMNV5iUAHywAelfKlTg34B5NlQb8sKZKvikxC5hfkyomLJQwM46QRTJPcDTgjeU6TGEawF+TXP8OwB8L4Ip8OIPBNoiAA0gGCy5NpkpBqPQ+JIXlCrnBQqVBclgsXITKMSBJLDCciFyEqhuGKg5WVC5C9RUgaSyArxG4XhEFIQ0sIDPX16GqaGhfccCiOoaoq2Vc2/WwVHGxwNBDjUMlJWRl4IRF60R+3biN5wxmeKr4WNDH…
फील्ड नोट्स:
- प्रतिक्रिया छवि बाइट्स है (उदाहरण में बेस64-जैसा सामग्री)। इसे PNG बाइट्स के रूप में स्टोर और सर्व करें या फ़ाइल के रूप में कैश करें। यदि आपका रनटाइम बाइनरी की अपेक्षा करता है, तो सुनिश्चित करें कि आप गलती से डबल-एन्कोड न करें।
- एक CDN या HTTP कैशिंग हेडर का उपयोग करें ताकि आप एक ही झंडों को फिर से प्राप्त करने से बच सकें।
JavaScript उदाहरण (खेलों को लाना)
जब आपको क्लाइंट-साइड सेटिंग्स पृष्ठ को हाइड्रेट करने या Node.js में खेलों की सूचियों को प्री-रेंडर करने की आवश्यकता हो, तो इसका उपयोग करें। उत्पादन के लिए, अपने सर्वर से कॉल करें ताकि आप अपने कुंजी को ब्राउज़र में उजागर न करें।
async function getAllSports() {
const res = await fetch("https://zylalabs.com/api/12787/sofascore-live-api/25080/get-all-sports", {
method: "GET",
headers: { "Authorization": "Bearer YOUR_API_KEY" }
});
if (!res.ok) {
throw new Error(`HTTP ${res.status}`);
}
const data = await res.json();
// Example: find Football
const football = data.find(s => s.slug === "football");
console.log(football);
return data;
}
getAllSports().catch(console.error);
PHP में वास्तविक-विश्व एकीकरण पैटर्न
कैश अपरिवर्तनीय मेटाडेटा
खेलों की गणनाएँ और झंडे अक्सर नहीं बदलते। "सभी खेल प्राप्त करें" को 6–24 घंटों के लिए कैश करें और देश के झंडों को अनिश्चितकाल के लिए एक संस्करणित फ़ाइल नाम के साथ (जैसे, flags/EN.png) कैश करें। इससे विलंबता और कोटा उपयोग कम होता है।
छवि बाइट्स को सुरक्षित रूप से संभालें
देश के झंडे के एंडपॉइंट के लिए, कच्ची प्रतिक्रिया को बाइनरी के रूप में स्टोरेज में लिखें। PHP में:
<?php
$ch = curl_init("https://zylalabs.com/api/12787/sofascore-live-api/31197/get-country-flag?country_code=EN");
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ["Authorization: Bearer YOUR_API_KEY"],
CURLOPT_TIMEOUT => 15
]);
$bytes = curl_exec($ch);
$http = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
if ($http >= 400 || $bytes === false) {
throw new RuntimeException("Flag fetch failed: HTTP $http");
}
file_put_contents(__DIR__ . "/flags/EN.png", $bytes);
उस फ़ाइल को अपने CDN या सार्वजनिक संपत्ति पथ के माध्यम से सर्व करें। यदि आपको गतिशील आकार बदलने की आवश्यकता है, तो पहले अनुरोध पर कई आकारों में प्रोसेस करें और कैश करें।
खोज एर्गोनॉमिक्स
"सभी संस्थाओं की खोज करें" के लिए, उपयोगकर्ता इनपुट (जैसे, 250–400ms) को डिबाउंस करें, क्वेरी को लोअरकेस करें, और लोकप्रिय टीमों के लिए परिणामों को कैश करें। चूंकि एंडपॉइंट केवल q को स्वीकार करता है, अपने UI के फ़िल्टर को क्लाइंट-साइड पर रखें और जब आवश्यक हो तो फिर से क्वेरी करें। हमेशा आउटपुट को साफ करें क्योंकि नामों में विशेष वर्ण हो सकते हैं।
MCP: इस API को AI एजेंट से कॉल करें
हर Zyla API को AI एजेंटों से भी कॉल किया जा सकता है जो मॉडल संदर्भ प्रोटोकॉल (MCP) का समर्थन करते हैं, जिसमें Claude Code, Cursor, Windsurf, और अन्य MCP-संगत क्लाइंट शामिल हैं। अपने उपकरण को इस पर इंगित करें:
अपने कुंजी को MCP URL में apikey के रूप में पास करें (जैसे, https://mcp.zylalabs.com/mcp?apikey=YOUR_API_KEY)। वहां से, आपका एजेंट MCP इंटरफेस के माध्यम से नाम द्वारा समान SofaScore - लाइव API एंडपॉइंट्स को सक्रिय कर सकता है। यह आंतरिक चैट ऑप्स, प्रशासन कंसोल, या खेल लुकअप के त्वरित प्रोटोटाइपिंग के लिए उपयोगी है।
आपके पास इस सप्ताह भेजने के लिए उपयोग के मामले
- खेल चयनकर्ता विजेट: सभी खेल प्राप्त करें का उपयोग करके एक खेल ड्रॉपडाउन को हाइड्रेट करें और उपयोगकर्ताओं को स्लग द्वारा खेल-विशिष्ट पृष्ठों पर रूट करें।
- टीम खोज बार: सभी संस्थाओं की खोज का उपयोग करें ताकि "रियल मैड्रिड" जैसी क्लबों को ऑटो-कम्प्लीट करें और लौटाए गए ids/slugs का उपयोग करके सीधे अपने आंतरिक टीम डैशबोर्ड पर कूदें।
- देश-बैज वाले तालिकाएँ: स्टैंडिंग, खिलाड़ी सूचियों, और प्रतियोगिता कार्डों से देश के झंडों को संलग्न करें एक बार देश के कोड के लिए झंडा छवि बाइट्स लाकर और कैश करके।
संचालन विचार
- प्रमाणीकरण: हमेशा Authorization: Bearer YOUR_API_KEY शामिल करें।
- टाइमआउट: क्लाइंट टाइमआउट सेट करें (10–20s) और अस्थायी विफलताओं पर इडेम्पोटेंट GETs को फिर से प्रयास करें।
- कैशिंग रणनीति:
- सभी खेल प्राप्त करें: घंटों के लिए कैश करें; तैनाती या अनुसूचित कार्य पर अमान्य करें।
- देश के झंडे: अनिश्चितकाल के लिए कैश करें; फ़ाइलों को डिस्क या ऑब्जेक्ट स्टोरेज पर स्टोर करें।
- खोज परिणाम: एक छोटे TTL (जैसे, मिनटों) के लिए सामान्यीकृत q द्वारा कैश करें।
- कोटा और बिलिंग: Zyla सदस्यता + कोटा का उपयोग करता है। आमतौर पर, पहली बार उपयोगकर्ताओं को उनके पहले API के लिए 7-दिन का परीक्षण या 50 अनुरोध मिलते हैं—API पृष्ठ पर वर्तमान शर्तों की पुष्टि करें।
- त्रुटि हैंडलिंग: HTTP स्थिति कोड की जांच करें। 4xx के लिए, पैरामीटर की जांच करें; 5xx के लिए, बैकऑफ लागू करें और लॉग में डायग्नोस्टिक्स को सतह पर लाएं।
लिंक संदर्भ
- API पृष्ठ: Zyla पर SofaScore - लाइव API
- Zyla हब: Zyla API Hub
FAQ
क्या SofaScore - लाइव API को "सभी खेल प्राप्त करें" के लिए किसी पैरामीटर की आवश्यकता है?
नहीं। एंडपॉइंट को कोई पैरामीटर नहीं चाहिए और केवल Authorization हेडर की आवश्यकता है।
प्रमाणित करने का सही तरीका क्या है?
हर अनुरोध पर Authorization: Bearer YOUR_API_KEY हेडर का उपयोग करें https://zylalabs.com/api/… एंडपॉइंट्स पर।
क्या मैं ब्राउज़र में सीधे देश के झंडे दिखा सकता हूँ?
हाँ। अपने सर्वर पर एक बार Fetch करें Get country flag का उपयोग करके, बाइट्स को PNG फ़ाइल में लिखें, और इसे एक स्थिर संपत्ति के रूप में या CDN के माध्यम से सर्व करें। अपने कुंजी को निजी रखने के लिए ब्राउज़र से लाने से बचें।
मैं किसी विशेष टीम या प्रतियोगिता की खोज कैसे करूँ?
q पैरामीटर के साथ सभी संस्थाओं की खोज करें। उदाहरण के लिए, q=real madrid। प्रतिक्रिया को पार्स करें ताकि id, name, slug, और किसी भी छवि या देश के विशेषताओं को निकाल सकें जिनकी आपको आवश्यकता है।
क्या कोई मुफ्त योजना है?
कोई मुफ्त योजना नहीं है। Zyla सदस्यता + कोटा मॉडल का उपयोग करता है। पहली बार उपयोगकर्ताओं के लिए, आपको आमतौर पर 7-दिन का परीक्षण या 50 अनुरोध मिलते हैं; वर्तमान पहुंच विकल्पों और मूल्य निर्धारण के लिए API पृष्ठ की जांच करें।
अपनी कुंजी प्राप्त करें और भेजें
अपना Zyla खाता बनाएं, SofaScore - लाइव API की सदस्यता लें, और ऊपर दिए गए PHP कोड में Authorization हेडर को प्लग करें। आप आज खेलों और देश के झंडों को प्रदर्शित कर सकते हैं। पंजीकरण करें अपनी API कुंजी प्राप्त करने और एकीकृत करना शुरू करने के लिए।