ابتدائی رسائی کی درخواست کریں

اپنا پہلا نام اور ای میل یا فون نمبر درج کریں۔ ہم Tajo تک رسائی کی تفصیلات کے ساتھ آپ سے رابطہ کریں گے۔

API کیز

API کیز Brevo API کے ساتھ تصدیق کا بنیادی طریقہ ہیں۔ یہ آپ کے اکاؤنٹ تک پروگرام کے ذریعے رسائی کا ایک سادہ اور محفوظ راستہ فراہم کرتی ہیں۔

API کیز کیا ہیں؟

API کیز منفرد شناخت کار ہیں جو Brevo API کو درخواستیں بھیجتے وقت آپ کی ایپلی کیشن کی تصدیق کرتی ہیں۔ ہر کی 64 حروف پر مشتمل ایک اسٹرنگ ہوتی ہے جو شناخت کار اور پاس ورڈ دونوں کا کام دیتی ہے۔

Example API key: xkeysib-a1b2c3d4e5f6789012345678901234567890abcdef1234567890abcdef123456-Ab1Cd2Ef3Gh4

API کیز بنانا

مرحلہ وار گائیڈ

  1. Brevo میں سائن ان کریں: اپنے Brevo ڈیش بورڈ تک رسائی حاصل کریں
  2. Settings پر جائیں: اپنی پروفائل → Settings پر کلک کریں
  3. API Keys پر جائیں: بائیں مینو سے “API Keys” منتخب کریں
  4. نئی کی بنائیں: “Generate a New API Key” پر کلک کریں
  5. اپنی کی کو نام دیں: کوئی واضح نام دیں (مثلاً “Production App”، “Development Testing”)
  6. اجازتیں مقرر کریں: مناسب رسائی کی سطح منتخب کریں
  7. بنائیں: “Generate” پر کلک کریں اور کی فوراً کاپی کر لیں

API کی کے ناموں کے اصول

ایسے واضح نام استعمال کریں جن سے کی کا مقصد پہچاننے میں مدد ملے:

  • production-web-app
  • staging-environment
  • mobile-app-ios
  • webhook-listener
  • data-sync-service

API کیز کی اقسام اور اجازتیں

مکمل رسائی والی کیز

Permissions: All API endpoints
Use cases: Complete application integration
Risk level: High - protect carefully

صرف پڑھنے والی کیز

Permissions: GET requests only
Use cases: Analytics, reporting, dashboards
Risk level: Low - limited access

صرف بھیجنے والی کیز

Permissions: Transactional email sending
Use cases: Application notifications, receipts
Risk level: Medium - can send emails

رابطہ مینجمنٹ کیز

Permissions: Contact CRUD operations
Use cases: CRM integrations, form submissions
Risk level: Medium - data modification

API کیز کا استعمال

ہیڈر کے ذریعے تصدیق

اپنی API کی کو api-key ہیڈر میں شامل کریں:

GET /v3/account HTTP/1.1
Host: api.brevo.com
Accept: application/json
Content-Type: application/json
api-key: YOUR_API_KEY

کوڈ کی مثالیں

JavaScript/Node.js

const brevo = require('@getbrevo/brevo');
const apiInstance = new brevo.AccountApi();
apiInstance.setApiKey(brevo.AccountApiApiKeys.apiKey, process.env.BREVO_API_KEY);
// Make authenticated request
apiInstance.getAccount()
.then(data => console.log('Account info:', data))
.catch(error => console.error('Error:', error));

Python

import sib_api_v3_sdk
from sib_api_v3_sdk.rest import ApiException
# Configure API key
configuration = sib_api_v3_sdk.Configuration()
configuration.api_key['api-key'] = 'YOUR_API_KEY'
# Create API instance
api_instance = sib_api_v3_sdk.AccountApi(sib_api_v3_sdk.ApiClient(configuration))
try:
# Get account info
api_response = api_instance.get_account()
print(api_response)
except ApiException as e:
print("Exception when calling AccountApi->get_account: %s\n" % e)

PHP

<?php
require_once(__DIR__ . '/vendor/autoload.php');
// Configure API key
$config = SendinBlue\Client\Configuration::getDefaultConfiguration()->setApiKey('api-key', 'YOUR_API_KEY');
// Create API instance
$apiInstance = new SendinBlue\Client\Api\AccountApi(
new GuzzleHttp\Client(),
$config
);
try {
$result = $apiInstance->getAccount();
print_r($result);
} catch (Exception $e) {
echo 'Exception when calling AccountApi->getAccount: ', $e->getMessage(), PHP_EOL;
}
?>

Ruby

require 'sib-api-v3-sdk'
# Configure API key
SibApiV3Sdk.configure do |config|
config.api_key['api-key'] = 'YOUR_API_KEY'
end
# Create API instance
api_instance = SibApiV3Sdk::AccountApi.new
begin
# Get account info
result = api_instance.get_account
puts result
rescue SibApiV3Sdk::ApiError => e
puts "Exception when calling AccountApi->get_account: #{e}"
end

API کی کی سیکیورٹی

محفوظ ذخیرہ

ماحولیاتی متغیرات (تجویز کردہ)

Terminal window
# .env file
BREVO_API_KEY=xkeysib-your-api-key-here
# Usage in code
const apiKey = process.env.BREVO_API_KEY;

کلاؤڈ سیکرٹ مینیجرز

  • AWS Secrets Manager
  • Google Secret Manager
  • Azure Key Vault
  • HashiCorp Vault

سیکیورٹی کے بہترین طریقے

  1. کیز کو کبھی کوڈ میں براہِ راست نہ لکھیں

    // ❌ Bad - hardcoded
    const apiKey = "xkeysib-a1b2c3d4...";
    // ✅ Good - environment variable
    const apiKey = process.env.BREVO_API_KEY;
  2. ہر ماحول کے لیے الگ کیز استعمال کریں

    Production: BREVO_API_KEY_PROD
    Staging: BREVO_API_KEY_STAGING
    Development: BREVO_API_KEY_DEV
  3. کیز باقاعدگی سے تبدیل کریں

    • سہ ماہی تبدیلی کے لیے کیلنڈر میں یاد دہانیاں مقرر کریں
    • کی کی تبدیلی کے لیے آٹومیشن ٹولز استعمال کریں
    • واپسی کا منصوبہ تیار رکھیں
  4. کی کے استعمال پر نظر رکھیں

    • غیر معمولی سرگرمی کے لیے الرٹس ترتیب دیں
    • ماہانہ بنیاد پر کی کے استعمال کے لاگز کا جائزہ لیں
    • جغرافیائی رسائی کے رجحانات پر نظر رکھیں

کی مینجمنٹ

فعال کیز کی نگرانی

اپنی فعال کیز کی نگرانی ڈیش بورڈ میں کریں:

Key Name: production-web-app
Created: 2024-01-15
Last Used: 2024-01-20 14:30 UTC
Requests Today: 1,247
Status: Active

کی تبدیل کرنے کا عمل

  1. نئی کی بنائیں: متبادل کی تیار کریں
  2. کنفیگریشن اپ ڈیٹ کریں: نئی کی کے ساتھ ڈیپلائے کریں
  3. نگرانی کریں: یقینی بنائیں کہ نئی کی درست کام کر رہی ہے
  4. مہلت کی مدت: پرانی کی کو 24 سے 48 گھنٹے تک فعال رکھیں
  5. پرانی کی منسوخ کریں: پچھلی کی کو حذف کر دیں

ہنگامی صورت میں کی کی منسوخی

اگر کوئی کی غیر محفوظ ہو جائے:

  1. فوری منسوخی: کی کو ڈیش بورڈ سے حذف کریں
  2. متبادل بنائیں: فوراً نئی کی تیار کریں
  3. ایپلی کیشنز اپ ڈیٹ کریں: نئی کی کے ساتھ جلد از جلد ڈیپلائے کریں
  4. سرگرمی کی نگرانی: غیر مجاز استعمال کی جانچ کریں
  5. واقعے کی رپورٹ: سیکیورٹی واقعے کو دستاویزی شکل دیں

ریٹ لمٹنگ اور API کیز

ہر API کی کی اپنی انفرادی ریٹ حدود ہوتی ہیں:

  • Free Plan: 300 درخواستیں فی دن
  • Starter Plan: 20,000 درخواستیں فی دن
  • Business Plan: 50,000 درخواستیں فی دن
  • Enterprise Plan: مخصوص حدود

ریٹ لمٹ ہیڈرز

HTTP/1.1 200 OK
X-RateLimit-Limit: 1000
X-RateLimit-Remaining: 999
X-RateLimit-Reset: 1640995200

ریٹ حدود سے نمٹنا

async function makeApiCall() {
try {
const response = await fetch(url, { headers });
if (response.status === 429) {
const resetTime = response.headers.get('X-RateLimit-Reset');
const waitTime = resetTime - Math.floor(Date.now() / 1000);
console.log(`Rate limited. Waiting ${waitTime} seconds`);
await new Promise(resolve => setTimeout(resolve, waitTime * 1000));
// Retry the request
return makeApiCall();
}
return response.json();
} catch (error) {
console.error('API call failed:', error);
throw error;
}
}

API کیز کے مسائل حل کرنا

عام خرابی کے پیغامات

غلط API کی (401)

{
"code": "unauthorized",
"message": "Invalid API key provided"
}

ناکافی اجازتیں (403)

{
"code": "permission_denied",
"message": "API key does not have required permissions"
}

ریٹ لمٹ سے تجاوز (429)

{
"code": "too_many_requests",
"message": "Rate limit exceeded for API key"
}

ڈیبگنگ کی فہرست

  • کی کا فارمیٹ درست ہے (64 حروف)
  • کوئی اضافی خالی جگہ یا پوشیدہ حروف نہیں
  • کی کے پاس مطلوبہ اجازتیں موجود ہیں
  • کی فعال ہے (منسوخ نہیں ہوئی)
  • ریٹ حدود کے اندر ہے
  • درست API اینڈ پوائنٹ استعمال ہو رہا ہے
  • ہیڈرز درست فارمیٹ میں ہیں

اگلے اقدامات

ابتدائی رسائی کی درخواست کریں

اپنا پہلا نام اور ای میل یا فون نمبر درج کریں۔ ہم Tajo تک رسائی کی تفصیلات کے ساتھ آپ سے رابطہ کریں گے۔

خودکار شناخت
AI معاون

السلام علیکم! دستاویزات کے بارے میں کچھ بھی پوچھیں۔