API Documentation

مستندات API و نمونه‌کدها

در این بخش می‌توانید نمونه درخواست‌ها، پاسخ‌ها، وضعیت‌ها، وب‌هوک‌ها و کدهای چندزبانه را مشاهده و مستقیماً کپی یا آزمایش کنید.

Endpoint
https://api.filekit.ir/v1/convert
Method
POST
Content-Type
multipart/form-data
Auth
Bearer API Key

پارامترهای API

ParameterTypeRequiredLocationDescriptionExample
fileFileYesform-dataفایل ورودی برای تبدیلinput.txt
output_formatStringNoform-dataفرمت خروجی دلخواهpdf, txt, docx
engineStringNoform-dataموتور پردازشdefault
languageStringNoform-dataزبان فایل یا OCRfa, en
AuthorizationHeaderYesheaderکلید دسترسی APIBearer YOUR_API_KEY

نمونه درخواست / پاسخ JSON

Request JSON
{
  "file": "input.txt",
  "output_format": "pdf",
  "engine": "default",
  "language": "fa"
}
Response JSON
{
  "success": true,
  "message": "File converted successfully",
  "data": {
    "file_name": "output.pdf",
    "download_url": "https://api.filekit.ir/files/output.pdf",
    "size": 24576,
    "mime_type": "application/pdf"
  }
}

نمونه کدها

توضیح Python
این نمونه از requests برای ارسال فایل استفاده می‌کند.

Python Example

ارسال فایل با requests

import requests

url = "https://api.filekit.ir/v1/convert"
headers = {
    "Authorization": "Bearer YOUR_API_KEY",
    "Accept": "application/json"
}
data = {
    "output_format": "pdf",
    "engine": "default",
    "language": "fa"
}

with open("input.txt", "rb") as f:
    response = requests.post(url, headers=headers, data=data, files={"file": f})

print(response.status_code)
print(response.json())
توضیح JavaScript
این نمونه برای مرورگر و fetch است.

JavaScript Example

ارسال فایل با fetch

const formData = new FormData();
formData.append("file", fileInput.files[0]);
formData.append("output_format", "pdf");
formData.append("engine", "default");
formData.append("language", "fa");

fetch("https://api.filekit.ir/v1/convert", {
  method: "POST",
  headers: {
    "Authorization": "Bearer YOUR_API_KEY",
    "Accept": "application/json"
  },
  body: formData
})
  .then(response => response.json())
  .then(data => console.log(data))
  .catch(error => console.error(error));
توضیح Node.js
این نمونه از axios و form-data استفاده می‌کند.

Node.js Example

ارسال فایل با axios

const axios = require("axios");
const FormData = require("form-data");
const fs = require("fs");

const form = new FormData();
form.append("file", fs.createReadStream("input.txt"));
form.append("output_format", "pdf");
form.append("engine", "default");
form.append("language", "fa");

axios.post("https://api.filekit.ir/v1/convert", form, {
  headers: {
    ...form.getHeaders(),
    Authorization: "Bearer YOUR_API_KEY",
    Accept: "application/json"
  }
}).then(res => {
  console.log(res.data);
});
توضیح PHP
این نمونه از cURL در PHP استفاده می‌کند.

PHP Example

ارسال فایل با cURL

<?php

$url = "https://api.filekit.ir/v1/convert";

$data = [
    "file" => new CURLFile("input.txt"),
    "output_format" => "pdf",
    "engine" => "default",
    "language" => "fa"
];

$headers = [
    "Authorization: Bearer YOUR_API_KEY",
    "Accept: application/json"
];

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$response = curl_exec($ch);
echo $response;

curl_close($ch);
توضیح cURL
این نمونه برای تست سریع API مناسب است.

cURL Example

ارسال مستقیم از ترمینال

curl -X POST "https://api.filekit.ir/v1/convert" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Accept: application/json" \
  -F "file=@input.txt" \
  -F "output_format=pdf" \
  -F "engine=default" \
  -F "language=fa"

نمونه پاسخ موفق و خطا

Successful Response
{
  "success": true,
  "message": "Conversion completed successfully",
  "data": {
    "job_id": "job_123456",
    "file_name": "output.pdf",
    "download_url": "https://api.filekit.ir/files/output.pdf",
    "mime_type": "application/pdf",
    "size": 24576
  }
}
Error Response
{
  "success": false,
  "error": {
    "code": "INVALID_API_KEY",
    "message": "The provided API key is invalid or expired."
  }
}
StatusScenarioMeaning
200Successful conversionدرخواست با موفقیت پردازش شد
400Missing fileپارامتر لازم ارسال نشده
401Invalid API keyکلید API معتبر نیست
422Unsupported formatورودی یا خروجی نامعتبر است
429Rate limitedتعداد درخواست‌ها بیش از حد مجاز است
500Server failureخطای داخلی سرور

خروجی Try it Live

هنوز درخواستی ارسال نشده است.