GMCheck LogoGMCheck

API Key دستاویزات

GMCheck API کو API keys کے ساتھ استعمال کرنے کی مکمل گائیڈ

جائزہ

API Key Premium users کو login authentication کے بغیر email verification API استعمال کرنے دیتی ہے۔ API Key endpoints الگ prefix /api/v1/ استعمال کرتے ہیں اور encryption کی ضرورت نہیں رکھتے۔

ضروری شرائط

  • صرف Premium Plan: API Key feature صرف premium users کے لیے دستیاب ہے
  • ہر user کے پاس صرف ایک API key ہو سکتی ہے
  • API key endpoints encryption استعمال نہیں کرتے؛ requests اور responses plain text ہوتے ہیں

شروع کریں

1. API Key بنائیں

سب سے پہلے web interface سے API key generate کریں:

  1. اپنے account میں login کریں
  2. Profile menu پر کلک کریں
  3. "API Key" منتخب کریں؛ یہ option صرف premium users کو نظر آتا ہے
  4. "Generate API Key" پر کلک کریں
  5. اہم: API key فوراً copy کر کے محفوظ کر لیں؛ بعد میں یہ دوبارہ مکمل نظر نہیں آئے گی

Warning: API key generate ہونے کے بعد آپ اسے دوبارہ مکمل نہیں دیکھ سکیں گے۔ براہ کرم اسے محفوظ جگہ پر save کریں۔

2. API Key استعمال کریں

API Key تین طریقوں سے دی جا سکتی ہے:

  1. X-API-Key Header (Recommended):
    X-API-Key: your-api-key-here
  2. Authorization Header:
    Authorization: Bearer your-api-key-here
  3. Query Parameter (کم محفوظ):
    ?apiKey=your-api-key-here

API Endpoints

تمام API key endpoints /api/v1/ prefix استعمال کرتے ہیں اور encryption کی ضرورت نہیں رکھتے۔

1. Emails چیک کریں

Email addresses check کرنے کے لیے job submit کریں۔

Endpoint:

POST /api/v1/check-emails

Request:

{
  "input": "[email protected]\[email protected]\[email protected]"
}

Response:

{
  "success": true,
  "code": "JOB_SUBMITTED",
  "message": "Job submitted successfully",
  "data": {
    "jobId": "job-123-1234567890",
    "status": "pending",
    "emailsCount": 3
  }
}

2. Job History حاصل کریں

اپنی jobs کی paginated list حاصل کریں۔

Endpoint:

GET /api/v1/jobs/history?page=1&limit=20

3. Job Stats حاصل کریں

کسی specific job کی summary statistics حاصل کریں۔

Endpoint:

GET /api/v1/jobs/:jobId/stats

4. Job Detail حاصل کریں

تمام results سمیت مکمل job details حاصل کریں۔

Endpoint:

GET /api/v1/jobs/:jobId

5. Usage Statistics حاصل کریں

اپنی current usage statistics حاصل کریں۔

Endpoint:

GET /api/v1/usage

Code Examples

cURL مثال

# Check Gmail addresses
curl -X POST https://api.gmcheck.live/api/v1/check-emails \
  -H "X-API-Key: your-api-key-here" \
  -H "Content-Type: application/json" \
  -d '{"input": "[email protected]\[email protected]"}'

# Get job stats
curl -X GET https://api.gmcheck.live/api/v1/jobs/job-123-1234567890/stats \
  -H "X-API-Key: your-api-key-here"

Python مثال

import requests

API_KEY = "your-api-key-here"
BASE_URL = "https://api.gmcheck.live/api/v1"

headers = {
    "X-API-Key": API_KEY,
    "Content-Type": "application/json"
}

# Check emails
response = requests.post(
    f"{BASE_URL}/check-emails",
    headers=headers,
    json={"input": "[email protected]\[email protected]"}
)
job_data = response.json()
job_id = job_data["data"]["jobId"]

# Get job stats
stats_response = requests.get(
    f"{BASE_URL}/jobs/{job_id}/stats",
    headers=headers
)
stats = stats_response.json()
print(stats)

JavaScript مثال

const API_KEY = "your-api-key-here";
const BASE_URL = "https://api.gmcheck.live/api/v1";

const headers = {
  "X-API-Key": API_KEY,
  "Content-Type": "application/json"
};

// Check Gmail addresses
const checkEmails = async () => {
  const response = await fetch(`${BASE_URL}/check-emails`, {
    method: "POST",
    headers: headers,
    body: JSON.stringify({
      input: "[email protected]\[email protected]"
    })
  });
  
  const data = await response.json();
  const jobId = data.data.jobId;
  
  // Poll for job completion
  const pollJob = async () => {
    const statsResponse = await fetch(`${BASE_URL}/jobs/${jobId}/stats`, {
      headers: headers
    });
    const stats = await statsResponse.json();
    
    if (stats.data.status === "completed") {
      // Get full results
      const detailResponse = await fetch(`${BASE_URL}/jobs/${jobId}`, {
        headers: headers
      });
      const detail = await detailResponse.json();
      console.log(detail.data.result);
    } else {
      // Poll again after delay
      setTimeout(pollJob, 2000);
    }
  };
  
  pollJob();
};

Email Status Values

  • LIVE: Email valid اور active ہے
  • VERIFY: Email کو verification کی ضرورت ہے
  • DISABLE: Email disabled ہے
  • NOT_EXIST: Email موجود نہیں
  • UNKNOWN: Status نامعلوم ہے
  • PENDING: Email ابھی process ہو رہی ہے

Job Status Values

  • pending: Job queue میں ہے اور processing کا انتظار کر رہی ہے
  • processing: Job اس وقت process ہو رہی ہے
  • completed: Job کامیابی سے مکمل ہو گئی
  • stopped: Job user نے روک دی
  • failed: Job مکمل ہونے میں ناکام رہی

Security Best Practices

  • API key کبھی share نہ کریں: اسے password کی طرح محفوظ رکھیں
  • Environment variables استعمال کریں: API keys code میں hardcode نہ کریں
  • Regular rotation کریں: وقتاً فوقتاً API key regenerate کریں
  • Compromise کا شک ہو تو revoke کریں: مشکوک activity پر key فوراً revoke کریں
  • صرف HTTPS استعمال کریں: API requests ہمیشہ HTTPS سے بھیجیں
  • Usage monitor کریں: unauthorized access پکڑنے کے لیے usage statistics باقاعدگی سے دیکھیں

Error Responses

Invalid API Key:

{
  "success": false,
  "code": "INVALID_API_KEY",
  "message": "Invalid API key. Please check your API key and try again."
}

Premium Required:

{
  "success": false,
  "code": "PREMIUM_REQUIRED",
  "message": "API key feature is only available for premium users."
}

Monthly Limit Exceeded:

{
  "success": false,
  "code": "MONTHLY_LIMIT_EXCEEDED",
  "message": "Monthly limit exceeded. You have checked 100000 / 100000 emails this month."
}

سپورٹ

API keys سے متعلق issues یا questions کے لیے contact page یا Telegram کے ذریعے support سے رابطہ کریں۔