← رجوع ClipSend

📚 API Documentation

دمج ClipSend في تطبيقاتك باستخدام REST API الخاص بنا

أدخل مفتاح API الخاص بك وسيتم تحديث جميع أمثلة التعليمات البرمجية تلقائيًا حتى تتمكن من النسخ واللصق مباشرة.

🔐 المصادقة

تتطلب جميع طلبات API المصادقة عبر الرأس X-API-Key.

curl -H "X-API-Key: YOUR_API_KEY" \
     https://www.clipsend.net/api/usage
import requests

headers = {
    "X-API-Key": "YOUR_API_KEY"
}

response = requests.get(
    "https://www.clipsend.net/api/usage",
    headers=headers
)
print(response.json())
const response = await fetch("https://www.clipsend.net/api/usage", {
    headers: {
        "X-API-Key": "YOUR_API_KEY"
    }
});

const data = await response.json();
console.log(data);
<?php
$ch = curl_init();

curl_setopt_array($ch, [
    CURLOPT_URL => "https://www.clipsend.net/api/usage",
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_HTTPHEADER => [
        "X-API-Key: YOUR_API_KEY"
    ]
]);

$response = curl_exec($ch);
$data = json_decode($response, true);
print_r($data);
package main

import (
    "fmt"
    "io"
    "net/http"
)

func main() {
    req, _ := http.NewRequest("GET", "https://www.clipsend.net/api/usage", nil)
    req.Header.Set("X-API-Key", "YOUR_API_KEY")

    client := &http.Client{}
    resp, _ := client.Do(req)
    defer resp.Body.Close()

    body, _ := io.ReadAll(resp.Body)
    fmt.Println(string(body))
}
require 'net/http'
require 'json'

uri = URI("https://www.clipsend.net/api/usage")
request = Net::HTTP::Get.new(uri)
request["X-API-Key"] = "YOUR_API_KEY"

response = Net::HTTP.start(uri.hostname, uri.port, use_ssl: true) do |http|
    http.request(request)
end

puts JSON.parse(response.body)

📝 نقاط النهاية

POST /api/links

أنشئ رابطًا جديدًا بمحتوى سيدمر نفسه ذاتيًا بعد مشاهدته.

معلمة نوع وصف
content مطلوب string المحتوى السري للمشاركة
max_uses اختياري integer عدد المشاهدات المسموح بها: 1 ، 2 ، 5 ، 10. الافتراضي: 1
slug اختياري string سبيكة مخصصة لعنوان URL. إذا لم يتم توفيره ، فسيتم إنشاء واحد عشوائي
curl -X POST https://www.clipsend.net/api/links \
     -H "X-API-Key: YOUR_API_KEY" \
     -H "Content-Type: application/json" \
     -d '{"content": "Mi mensaje secreto", "max_uses": 1, "slug": "mi-slug"}'
import requests

response = requests.post(
    "https://www.clipsend.net/api/links",
    headers={
        "X-API-Key": "YOUR_API_KEY",
        "Content-Type": "application/json"
    },
    json={
        "content": "Mi mensaje secreto",
        "max_uses": 1,
        "slug": "mi-slug"  # opcional
    }
)

data = response.json()
print(f"Link creado: {data['link']}")
const response = await fetch("https://www.clipsend.net/api/links", {
    method: "POST",
    headers: {
        "X-API-Key": "YOUR_API_KEY",
        "Content-Type": "application/json"
    },
    body: JSON.stringify({
        content: "Mi mensaje secreto",
        max_uses: 1,
        slug: "mi-slug"  // opcional
    })
});

const data = await response.json();
console.log(`Link creado: ${data.link}`);
<?php
$ch = curl_init();

$payload = json_encode([
    "content" => "Mi mensaje secreto",
    "max_uses" => 1,
    "slug" => "mi-slug"  // opcional
]);

curl_setopt_array($ch, [
    CURLOPT_URL => "https://www.clipsend.net/api/links",
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_POST => true,
    CURLOPT_POSTFIELDS => $payload,
    CURLOPT_HTTPHEADER => [
        "X-API-Key: YOUR_API_KEY",
        "Content-Type: application/json"
    ]
]);

$response = curl_exec($ch);
$data = json_decode($response, true);
echo "Link creado: " . $data['link'];
package main

import (
    "bytes"
    "encoding/json"
    "fmt"
    "io"
    "net/http"
)

func main() {
    payload, _ := json.Marshal(map[string]interface{}{
        "content":  "Mi mensaje secreto",
        "max_uses": 1,
        "slug":     "mi-slug",
    })

    req, _ := http.NewRequest("POST", "https://www.clipsend.net/api/links", 
        bytes.NewBuffer(payload))
    req.Header.Set("X-API-Key", "YOUR_API_KEY")
    req.Header.Set("Content-Type", "application/json")

    client := &http.Client{}
    resp, _ := client.Do(req)
    defer resp.Body.Close()

    body, _ := io.ReadAll(resp.Body)
    fmt.Println(string(body))
}
require 'net/http'
require 'json'

uri = URI("https://www.clipsend.net/api/links")
request = Net::HTTP::Post.new(uri)
request["X-API-Key"] = "YOUR_API_KEY"
request["Content-Type"] = "application/json"
request.body = {
    content: "Mi mensaje secreto",
    max_uses: 1,
    slug: "mi-slug"
}.to_json

response = Net::HTTP.start(uri.hostname, uri.port, use_ssl: true) do |http|
    http.request(request)
end

data = JSON.parse(response.body)
puts "Link creado: #{data['link']}"

✅ استجابة ناجحة (201)

{
    "success": true,
    "link": "https://www.clipsend.net/mi-slug",
    "slug": "mi-slug",
    "max_uses": 1
}
GET /api/links

يسترجع جميع الروابط النشطة والرخويات المحجوزة للمستخدم.

curl "https://www.clipsend.net/api/links" \
     -H "X-API-Key: YOUR_API_KEY"
import requests

response = requests.get(
    "https://www.clipsend.net/api/links",
    headers={"X-API-Key": "YOUR_API_KEY"}
)

print(response.json())
const response = await fetch("https://www.clipsend.net/api/links", {
    headers: {
        "X-API-Key": "YOUR_API_KEY"
    }
});

const data = await response.json();
console.log(data);

✅ استجابة ناجحة (200)

{
    "success": true,
    "links": {
        "mi-slug": {
            "type": "link",
            "slug": "mi-slug",
            "content": "Mi mensaje secreto",
            "current_uses": 0,
            "remaining_uses": 1,
            "created_at": "2025-12-13 14:59:43",
            "max_uses": 1,
            "url": "https://www.clipsend.net/mi-slug"
        },
        "mi-marca": {
            "type": "reserved",
            "slug": "mi-marca",
            "url": "https://www.clipsend.net/mi-marca",
            "is_paid": true,
            "created_at": "2025-12-10 09:30:00"
        }
    }
}
GET /api/links?slug={slug}

يسترجع محتوى الرابط. ⚠️ تستهلك هذه العملية استخدامًا واحدًا للرابط (احرق بعد القراءة).

Parámetro Tipo Descripción
slug مطلوب string المعرف الفريد للرابط
curl "https://www.clipsend.net/api/links?slug=mi-slug" \
     -H "X-API-Key: YOUR_API_KEY"
import requests

response = requests.get(
    "https://www.clipsend.net/api/links",
    params={"slug": "mi-slug"},
    headers={"X-API-Key": "YOUR_API_KEY"}
)

data = response.json()
print(f"Contenido: {data['content']}")
const response = await fetch(
    "https://www.clipsend.net/api/links?slug=mi-slug",
    {
        headers: {
            "X-API-Key": "YOUR_API_KEY"
        }
    }
);

const data = await response.json();
console.log(`Contenido: ${data.content}`);
<?php
$ch = curl_init();

curl_setopt_array($ch, [
    CURLOPT_URL => "https://www.clipsend.net/api/links?slug=mi-slug",
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_HTTPHEADER => [
        "X-API-Key: YOUR_API_KEY"
    ]
]);

$response = curl_exec($ch);
$data = json_decode($response, true);
echo "Contenido: " . $data['content'];

✅ Respuesta exitosa (200)

{
    "success": true,
    "content": "Mi mensaje secreto",
    "remaining_uses": 0,
    "slug": "mi-slug"
}
GET /api/usage

تحقق من استخدام مفتاح API الحالي لهذا الشهر.

curl https://www.clipsend.net/api/usage \
     -H "X-API-Key: YOUR_API_KEY"
import requests

response = requests.get(
    "https://www.clipsend.net/api/usage",
    headers={"X-API-Key": "YOUR_API_KEY"}
)

data = response.json()
print(f"Llamadas este mes: {data['calls_this_month']}/{data['limit']}")
const response = await fetch("https://www.clipsend.net/api/usage", {
    headers: {
        "X-API-Key": "YOUR_API_KEY"
    }
});

const data = await response.json();
console.log(`Llamadas este mes: ${data.calls_this_month}/${data.limit}`);

✅ Respuesta exitosa (200)

{
    "success": true,
    "calls_this_month": 42,
    "limit": 1000,
    "remaining": 958
}

❌ رموز الخطأ

تستخدم واجهة برمجة التطبيقات رموز حالة HTTP القياسية للإشارة إلى نتيجة الطلبات.

400 Bad Request

معلمات غير صالحة أو مفقودة

401 Unauthorized

مفتاح API غير صالح أو مفقود

403 Forbidden

ليس لديك وصول إلى API (خطة مجانية)

404 Not Found

الرابط غير موجود

410 Gone

انتهت صلاحية الرابط أو وصل إلى الحد الأقصى من الاستخدامات

429 Too Many Requests

تم الوصول إلى الحد الشهري لواجهة برمجة التطبيقات