API दस्तावेज़ीकरण

सार्वजनिक REST API की-प्रमाणीकरण, OpenAPI दस्तावेज़ीकरण

अपने OGRECORDS कैटलॉग को पढ़ें और स्मार्टलिंक्स और ड्राफ्ट रिलीज़ को प्रोग्रामैटिक रूप से प्रबंधित करें — एक सरल REST API के माध्यम से। अपने डैशबोर्ड से एक स्कोप्ड API-की के साथ प्रमाणीकरण करें। अनुरोध पर ईयरली एक्सेस।

API रेफरेंसAPI-कीज़ प्रबंधित करेंईयरली एक्सेस के लिए अनुरोध करें

समीक्षा: REST API, स्कोप्ड कीज़, दर-सीमाएँ, OpenAPI

REST पढ़ें + लिखें

रिलीज़, ट्रैक्स, स्मार्टलिंक्स और स्टैट्स को पढ़ें — और अपने स्मार्टलिंक्स और ड्राफ्ट रिलीज़ को बनाएं या संपादित करें — एक सरल HTTPS के माध्यम से। JSON उत्तर, limit/offset पेजिनेशन, पूर्वानुमानित स्कीमा। डिस्ट्रीब्यूशन और सबमिट एपीआई के बाहर रहते हैं।

स्कोप्ड API-कीज़

एक ogr_pk_ की के रूप में Bearer टोकन या X-API-Key हेडर में प्रमाणीकरण करें। प्रत्येक की के स्पष्ट स्कोप्स होते हैं — read:releases, read:smartlinks, read:stats, write:smartlinks, write:releases — और डैशबोर्ड में किसी भी समय घूमाया जा सकता है और रद्द किया जा सकता है।

दर-सीमाएँ + हेडर

प्रत्येक उत्तर में X-RateLimit-Limit, X-RateLimit-Remaining और X-RateLimit-Reset हेडर होते हैं। सीमा से ऊपर जाने पर 429 आता है और Retry-After दिया जाता है। फ्री कीज़ को प्रति दिन 1,000 रिक्वेस्ट मिलते हैं, बिजनेस कीज़ को 1,00,000।

स्वयं-होस्टेड OpenAPI 3.0

पूर्ण मशीन-पठनीय स्पेसिफिकेशन /api/v1/public/openapi.json पर उपलब्ध है और इस पृष्ठ पर इंटरैक्टिव रेफरेंस के रूप में रेंडर होता है — कोई तीसरे पक्ष का दस्तावेज़ीकरण होस्ट नहीं, कोई बाहरी कॉल नहीं।

एंडपॉइंट समीक्षा

लॉन्च के लिए एंडपॉइंट्स।

प्रत्येक एंडपॉइंट को एक स्कोप्ड API-की के साथ प्रमाणीकरण किया जाता है और https://api.og-records.com से डिलीवर किया जाता है। रीड एंडपॉइंट्स और स्मार्टलिंक्स और ड्राफ्ट रिलीज़ के लिए ओनर-स्कोप्ड लिखने की अनुमति — डिस्ट्रीब्यूशन और सबमिट एक्सपोज़ नहीं हैं।

रिलीज़

  • GET/api/v1/public/releasesअपने रिलीज़ की सूची देखें। limit और offset के साथ पेजिनेशन।
  • GET/api/v1/public/releases/{id}ID के अनुसार एक अकेला रिलीज़।
  • POST/api/v1/public/releasesड्राफ्ट रिलीज़ बनाएं (write:releases)। KYC + ऑनबोर्डिंग आवश्यक है।
  • PATCH/api/v1/public/releases/{id}ड्राफ्ट मेटाडेटा अपडेट करें (write:releases)। केवल प्री-सबमिट ड्राफ्ट्स के लिए।
  • DELETE/api/v1/public/releases/{id}ड्राफ्ट रिलीज़ हटाएं (write:releases)।

ट्रैक्स

  • GET/api/v1/public/tracks?release_id={id}आपके स्वामित्व में एक रिलीज के ट्रैक्स।
  • GET/api/v1/public/tracks/{id}ID के द्वारा एक ट्रैक प्राप्त करें।

स्मार्ट लिंक्स

  • GET/api/v1/public/smartlinksअपने स्मार्ट लिंक्स की सूची बनाएं।
  • POST/api/v1/public/smartlinksअपने रिलीज के लिए स्मार्ट लिंक बनाएं (write:smartlinks)।
  • PATCH/api/v1/public/smartlinks/{id}अपने स्मार्ट लिंक को अपडेट करें (write:smartlinks)।
  • DELETE/api/v1/public/smartlinks/{id}एक स्मार्ट लिंक अक्षम करें (write:smartlinks)।

स्टैट्स और स्पेसिफिकेशन

  • GET/api/v1/public/stats/release/{id}प्रत्येक DSP और देश के लिए स्ट्रीम, लिसनर और सेव्स के साथ विवरण। range = 7d, 14d, 30d, 90d, 1y या ytd।
  • GET/api/v1/public/openapi.jsonOpenAPI-3.0 दस्तावेज़। पब्लिक और कैश किया जा सकता है — कोई की की आवश्यकता नहीं।

कलाकार और कमाई

  • GET/api/v1/public/artistsअपने रोस्टर कलाकारों की सूची (read:artists)।
  • GET/api/v1/public/earnings/balanceआपका USD वॉलेट सैम्पल स्टैटस (read:earnings)।
वेबहुक्स

जब कोई रिलीज का स्टेटस बदलता है, तो आपको सूचित करें।

एक HTTPS एंडपॉइंट पंजीकृत करें और हम आपके रिलीज के लिए डिलीवर, रिजेक्ट या हटाए जाने पर एक साइन किए गए JSON इवेंट POST करेंगे। एंडपॉइंट्स को डैशबोर्ड में प्रबंधित करें — प्रत्येक को एक अद्वितीय साइनिंग सीक्रेट मिलता है जो एक बार दिखाया जाता है।

लॉन्च के लिए इवेंट्स

  • release.delivered — रिलीज को स्टोर्स को डिलीवर कर दिया गया है।
  • release.rejected — कोई स्टोर या QC स्टेप ने रिलीज को रिजेक्ट कर दिया है।
  • release.takedown — रिलीज़ को हटा दिया गया है।
  • release.live — रिलीज़ अब स्टोर्स पर लाइव है।

प्रत्येक डिलीवरी में ये हेडर शामिल होते हैं

  • X-Webhook-Signature — रॉ रिक्वेस्ट बॉडी का lowercase-hex HMAC-SHA256, जिसमें आपका साइनिंग-सीक्रेट कुंजी के रूप में उपयोग किया गया है।
  • X-Webhook-Timestamp — ISO-8601 भेजने का समय, बॉडी में created_at के समान।
  • X-Webhook-Event — इवेंट का नाम, उदाहरण के लिए release.delivered।
  • X-Webhook-Id — इस डिलीवरी के लिए एक अद्वितीय ID।

पेलोड एक JSON बॉडी है जिसमें id, event, created_at और एक data ऑब्जेक्ट है जिसमें release_id शामिल है। प्रमाणीकरण के लिए आपको अपने साइनिंग-सीक्रेट के साथ बिल्कुल रॉ बॉडी पर HMAC-SHA256 फिर से गणना करना होगा और इसे X-Webhook-Signature के साथ टाइमिंग-सेफ तरीके से तुलना करनी होगी — फिर आप यह जांचें कि X-Webhook-Timestamp लगभग पांच मिनट के भीतर है, ताकि रीप्ले को रोका जा सके।

असफल डिलीवरी को एक्सपोनेंशियल बैकऑफ के साथ दोहराया जाता है। 15 बार लगातार असफलता के बाद एंडपॉइंट स्वतः अक्षम हो जाता है और आपको आगे बढ़ने के लिए इसे फिर से पंजीकृत करना होगा।

वेबहुक्स प्रबंधित करें अपने डैशबोर्ड में।

प्रमाणीकरण

स्कोप के साथ API-कीज़।

अपने डैशबोर्ड में एक की बनाएं और इसे Authorization: Bearer ogr_pk_… हेडर या X-API-Key हेडर में भेजें। प्रत्येक की स्कोप्ड होती है — read:releases, read:smartlinks, read:stats, write:smartlinks, write:releases — ताकि एक इंटीग्रेशन को वही मिले जो उसे चाहिए। कीज़ को किसी भी समय रोटेट या रद्द किया जा सकता है। लेखन अधिकार owner-scoped है और कभी भी डिस्ट्रीब्यूशन नहीं लॉन्च करता है; OAuth इस लॉन्च के लिए नहीं है।

रेट-लिमिट्स

आपके की के लिए क्या अनुमति है।

फ्री
1,000 रिक्वेस्ट / दिन

हर नए की के लिए मानक। डैशबोर्ड, क्रॉन-सिंक और प्रोटोटाइपिंग के लिए उपयुक्त।

बिजनेस
1,00,000 रिक्वेस्ट / दिन

उत्पादन इंटीग्रेशन के लिए अधिक दैनिक लिमिट। अनुरोध पर।

हर उत्तर में X-RateLimit-Limit, X-RateLimit-Remaining और X-RateLimit-Reset शामिल होते हैं। जब दैनिक लिमिट समाप्त हो जाता है, तो 429 के साथ Retry-After हेडर आता है — जो फिर से रीसेट होने तक के सेकंड हैं।

ईयरली एक्सेस

अपने कैटलॉग पर निर्माण करें।

पब्लिक API ईयरली एक्सेस में है। बताएं कि आप क्या बनाना चाहते हैं, और हम आपके खाते के लिए API-कीज़ सक्रिय कर देंगे।

ईयरली एक्सेस के लिए अनुरोध करेंरेफरेंस पढ़ें