رابط برنامه‌نویسی نرم‌افزار

وب‌سرویس رابط برنامه‌نویسی نرم‌افزار RESTful

کوتاه‌کننده

برای لینک‌های بلند، لینک را رمزگذاری و لینک کوتاه را باز می‌گرداند.

آدرس وب‌سرویس

http://wpu.ir/api/v1/shortener

پارامتر

key – کلید API شما. ثبت نام کنید برای دریافت کلید رایگان.
long_url – یک آدرس بلند برای کوتاه شدن (نمونه: http://parsa.ws).

پاسخ

long_url - رونوشتی از پارامتر long_url درخواست. این پارامتر ممکن هست همیشه برابر با آدرس درخواستی نباشد، زیرا برخی از آدرس‌ها نامناسب هستند (نمونه: رمزگذاری متفاوتی داشته باشند، یا حروف متفاوتی در دامنه).
short_url – لینک کوتاه شما برای استفاده.
status

  • OK
  • INVALID_URL – آدرس بلند معتبر نیست
  • RATE_LIMIT – دسترسی بیش‌از حد (محدودیت استفاده)
  • AUTH_ERROR – کلید API نامعتبر
  • INTERNAL_ERROR

نمونه‌ها

POST http://wpu.ir/api/v1/shortener
key "API Key"
long_url "http://parsa.ws"

اگر درخواست موفق باشد پاسخی این چنین خواهید داشت:
{
    "long_url": "http://parsa.ws",
    "short_url": "http://wpu.ir/4vfxg",
    "status": "OK"
}

وضعیت ناموفق
POST http://wpu.ir/api/v1/shortener
key "API Key"
long_url "test"

پاسخ:
{
    "status": "INVALID_URL"
}

گسترش لینک کوتاه

اگر لینک کوتاهی از wpu.ir دارید، با این روش به لینک هدف دسترسی خواهید داشت

آدرس وب‌سرویس

http://wpu.ir/api/v1/expand

پارامتر

key – کلید API شما. ثبت نام کنید برای دریافت کلید رایگان.
short_url – لینک کوتاه برای گسترش دادن (نمونه: http://wpu.ir/4vfxg).

پاسخ

long_url - رونوشتی از پارامتر long_url درخواست. این پارامتر ممکن هست همیشه برابر با آدرس درخواستی نباشد، زیرا برخی از آدرس‌ها نامناسب هستند (نمونه: رمزگذاری متفاوتی داشته باشند، یا حروف متفاوتی در دامنه).
short_url – لینک کوتاه شما برای استفاده.
status

  • OK
  • REMOVED - از سرویس‌دهنده حذف شده است
  • MALWARE – تشخیص بدافزار در آدرس
  • INVALID_URL – آدرس بلند معتبر نیست
  • RATE_LIMIT – دسترسی بیش‌از حد (محدودیت استفاده)
  • AUTH_ERROR – کلید API نامعتبر
  • INTERNAL_ERROR

نمونه‌ها

GET http://wpu.ir/api/v1/expand?key={API Key}&short_url=http://wpu.ir/4vfxg
اگر درخواست موفق باشد پاسخی این چنین خواهید داشت:
{
    "long_url": "http://parsa.ws",
    "short_url": "http://wpu.ir/4vfxg",
    "status": "OK"
}

وضعیت ناموفق
GET http://wpu.ir/api/v1/expand?key={API Key}&short_url=http://wpu.ir/4vfxg
پاسخ:
{
    "short_url": "http://wpu.ir/4vfxg",
    "status": "REMOVED"
}

البته، شما می‌توانید فقط آدرس http://wpu.ir/4vfxg را اجرا و آدرس صفحه پاسخ را بررسی کنید، اما استفاده از API دو مزیت دارد:

  1. اگر نخواهید آمار کلیک لینک کوتاه به‌روز شود، می‌توانید دسته‌ای از آدرس‌های طولانی را بدست بیارید بدون اینکه نگران باشید که تجزیه و تحلیل آنها خراب شود.
  2. اگر آدرس در هدایت به لینک بلند ناموفق باشد (برای نمونه، اگر ما باور داشته باشیم آدرس هدف دارای بدافزار باشد)، به شما توضیحی داده می‌شود که توسط ماشین/برنامه قابل خواندن باشد.

کد نمونه

PHP:
$post = [
    'key' => 'API Key',
    'long_url' => 'http://parsa.ws',
];

$ch = curl_init('http://wpu.ir/api/v1/shortener');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
$response = curl_exec($ch);
curl_close($ch);

if ($response) {
    $response = json_decode($response);
    if (json_last_error() === JSON_ERROR_NONE) {
        if ($response->status == 'OK')
            echo $response->short_url;
        else
            echo $response->status;
    }
}