API Reference
Complete API documentation for Omega Indexer V2.
Endpoint
POST https://www.omegaindexer.com/amember/dashboard/apiHeaders
Content-Type: application/x-www-form-urlencodedParameters
| Parameter | Type | Required | Description |
|---|---|---|---|
apikey | string | ✅ Yes | Your API key from dashboard |
campaignname | string | ✅ Yes | Name for the campaign |
urls | string | ✅ Yes | URLs separated by pipe | |
dripfeed | integer | ❌ No | Days to distribute submissions |
Request Format
Basic Request
apikey=YOUR_API_KEY&campaignname=My Campaign&urls=https://example.com/page1|https://example.com/page2With Drip Feed
apikey=YOUR_API_KEY&campaignname=My Campaign&urls=https://example.com/page1|https://example.com/page2&dripfeed=7Code Examples
cURL
bash
curl -X POST https://www.omegaindexer.com/amember/dashboard/api \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "apikey=YOUR_API_KEY" \
-d "campaignname=My Campaign" \
-d "urls=https://example.com/page1|https://example.com/page2" \
-d "dripfeed=5"JavaScript (Node.js)
javascript
const submitUrls = async (urls, campaignName, dripDays = null) => {
const params = new URLSearchParams({
apikey: process.env.OMEGA_API_KEY,
campaignname: campaignName,
urls: urls.join('|')
});
if (dripDays) params.append('dripfeed', dripDays);
const response = await fetch(
'https://www.omegaindexer.com/amember/dashboard/api',
{
method: 'POST',
headers: { 'Content-Type': 'application/x-www-form-urlencoded' },
body: params.toString()
}
);
return await response.text();
};
// Usage
const urls = ['https://example.com/page1', 'https://example.com/page2'];
await submitUrls(urls, 'My Campaign', 5);Python
python
import requests
import os
def submit_urls(urls, campaign_name, drip_days=None):
data = {
'apikey': os.environ['OMEGA_API_KEY'],
'campaignname': campaign_name,
'urls': '|'.join(urls)
}
if drip_days:
data['dripfeed'] = str(drip_days)
response = requests.post(
'https://www.omegaindexer.com/amember/dashboard/api',
data=data
)
return response.text
# Usage
urls = ['https://example.com/page1', 'https://example.com/page2']
result = submit_urls(urls, 'My Campaign', drip_days=5)PHP
php
<?php
function submitUrls($urls, $campaignName, $dripDays = null) {
$data = [
'apikey' => getenv('OMEGA_API_KEY'),
'campaignname' => $campaignName,
'urls' => implode('|', $urls)
];
if ($dripDays) {
$data['dripfeed'] = $dripDays;
}
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://www.omegaindexer.com/amember/dashboard/api');
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
curl_close($ch);
return $response;
}
// Usage
$urls = ['https://example.com/page1', 'https://example.com/page2'];
$result = submitUrls($urls, 'My Campaign', 5);URL Formatting
Correct Format
URLs must be separated by the pipe character |:
https://example.com/page1|https://example.com/page2|https://example.com/page3Converting from Newline-Separated
JavaScript:
javascript
const urlString = urlList.split('\n').filter(u => u.trim()).join('|');Python:
python
url_string = '|'.join(url for url in url_list.split('\n') if url.strip())PHP:
php
$urlString = implode('|', array_filter(explode("\n", $urlList)));Error Handling
| Error | Likely Cause | Solution |
|---|---|---|
| Invalid API key | Wrong or missing key | Check key in dashboard |
| No URLs provided | Empty or malformed urls param | Verify URL format |
| Insufficient credits | Not enough balance | Add credits to account |
| 404 Not Found | Wrong endpoint URL | Verify endpoint URL |
| Empty response | Server issue | Retry with backoff |
Best Practices
- Store API Key Securely - Use environment variables
- Validate URLs First - Check for 404s before submitting
- Batch Wisely - Group related URLs together
- Use Drip Feed - For campaigns over 100 URLs
- Implement Retries - Add exponential backoff for failures
- Log Responses - Keep records of API interactions
Rate Limits
While not officially documented, follow these guidelines:
- Max requests: ~100/minute
- Max URLs per request: ~1000 (practical limit)
- Recommended: Batch URLs in single requests when possible