راهنماها

API چیست؟ راهنمای ساده برای سازندگان اپ

API (Application Programming Interface) راهی تعریف‌شده برای این است که یک نرم‌افزار از نرم‌افزار دیگری داده بخواهد یا آن را به انجام کاری وادار کند. اپ شما درخواستی به قالبی توافق‌شده می‌فرستد — «رزروهای فردا را بده»، «این کارت را ۲۰ یورو شارژ کن»، «این متن را خلاصه کن» — و سیستم دیگر پاسخی ساخت‌یافته برمی‌گرداند. API راهی است که اجزای یک اپ با هم حرف می‌زنند و اپ شما از سرویس‌های بیرونی مثل پرداخت، ایمیل، نقشه و هوش مصنوعی استفاده می‌کند.

چرا API در ساخت با هوش مصنوعی مهم است

تقریباً هر اپ مفیدی از بخش‌هایی ساخته شده که از طریق API با هم ارتباط برقرار می‌کنند:

  • درون اپ شما، صفحه‌های مرورگر، API بک‌اند خودتان را صدا می‌زنند تا داده را بارگذاری و ذخیره کنند.
  • بیرون اپ شما، بک‌اند شما APIهای شرکت‌های دیگر را صدا می‌زند: Stripe برای گرفتن پرداخت، یک سرویس ایمیل برای ارسال رسید، یک ارائه‌دهنده مدل هوش مصنوعی برای تولید متن.

وقتی از یک سازنده هوش مصنوعی می‌خواهید «پرداخت بگیر» یا «خلاصه هوش مصنوعی اضافه کن»، در واقع دارد کدی می‌نویسد که یک API را صدا می‌زند. دانستن مبانی به شما کمک می‌کند بفهمید هوش مصنوعی از شما چه می‌خواهد (معمولاً یک حساب در آن سرویس و یک کلید API)، کجا ممکن است مشکل پیش بیاید و هزینه‌اش چقدر است.

یک تشبیه روزمره

به یک رستوران فکر کنید. شما وارد آشپزخانه نمی‌شوید و خودتان غذا درست نمی‌کنید. منو را می‌خوانید، آنچه می‌خواهید را به شکلی که آشپزخانه می‌فهمد به پیشخدمت می‌گویید، و او غذا را برمی‌گرداند — یا می‌گوید آن غذا تمام شده است.

  • منو مستندات API است: فهرستی از آنچه می‌توانید بخواهید و اینکه چطور بخواهید.
  • پیشخدمت خود API است: راه توافق‌شده‌ای که درخواست‌ها وارد و پاسخ‌ها خارج می‌شوند.
  • آشپزخانه سیستم دیگر است: لازم نیست بدانید درونش چطور کار می‌کند.
  • سفارش شما درخواست است؛ بشقاب پاسخ.

آشپزخانه می‌تواند اجاق‌ها و کارکنانش را عوض کند بدون اینکه روی شما اثری بگذارد، تا وقتی منو همان بماند. این ارزش واقعی API است: اجازه می‌دهد دو سیستم با هم کار کنند بدون اینکه هیچ‌کدام لازم باشد بداند دیگری چطور ساخته شده.

چطور یک درخواست API وب کار می‌کند

بیشتر APIهایی که با آن‌ها برخورد می‌کنید APIهای وب هستند که روی HTTP کار می‌کنند — همان پروتکلی که مرورگر شما استفاده می‌کند. هر درخواست چند بخش دارد:

بخشچیستمثال
متدنوع اقدامGET (خواندن)، POST (ساختن)
URL / اندپوینتنشانی چیزی که روی آن اقدام می‌کنیدhttps://api.example.com/bookings
هدرهااطلاعات اضافی، از جمله اینکه شما کی هستیدAuthorization: Bearer <your key>
بدنهداده‌ای که می‌فرستید، برای ساختن و به‌روزرسانی{"name": "Lena", "time": "14:00"}

و هر پاسخ دارد:

بخشچیستمثال
کد وضعیتعددی که نشان می‌دهد کار چطور پیش رفت200 موفق، 201 ساخته شد، 404 پیدا نشد
بدنهداده برگشتی، معمولاً به‌صورت JSON{"id": 5001, "status": "confirmed"}

JSON (JavaScript Object Notation) قالب متنی ساده‌ای از نام‌ها و مقادیر داخل آکولاد است. استاندارد تبادل داده در APIهای وب است.

REST: رایج‌ترین سبک

REST یک قرارداد پرکاربرد برای طراحی APIهای وب است. هر نوع چیز نشانی خودش را دارد و متدهای استاندارد می‌گویند با آن چه می‌کنید. این یک REST API برای یک اپ رزرو است:

متداندپوینتکارش
GET/api/bookingsفهرست رزروها
GET/api/bookings/5001گرفتن یک رزرو
POST/api/bookingsساخت رزرو جدید
PATCH/api/bookings/5001تغییر بخشی از رزرو، مثل زمان آن
DELETE/api/bookings/5001لغو (حذف) رزرو

PUT هم وجود دارد و به‌طور قراردادی کل رکورد را جایگزین می‌کند، در حالی که PATCH فقط فیلدهایی را که می‌فرستید تغییر می‌دهد.

کدهای وضعیتی که بیشتر می‌بینید:

کدمعنی
200 / 201موفق / ساخته شد
400درخواست نادرست — چیزی در آنچه فرستادید اشتباه یا جا افتاده بود
401احراز هویت نشده — ورود یا کلید معتبری وجود ندارد
403ممنوع — شناخته شده‌اید، اما اجازه این کار را ندارید
404پیدا نشد
429درخواست‌های زیاد — به محدودیت نرخ رسیده‌اید
500خطای سرور

وقتی اپ شما خراب می‌شود، کد وضعیت اغلب سریع‌ترین سرنخ است. یک 401 از یک ارائه‌دهنده پرداخت معمولاً یعنی کلید API نبوده یا اشتباه بوده؛ یک 429 یعنی بیش از حد درخواست فرستاده‌اید.

REST تنها سبک نیست — GraphQL و APIهای سبک RPC هم وجود دارند — اما REST چیزی است که بیشتر سرویس‌ها و بک‌اندهای ساخته‌شده با هوش مصنوعی استفاده می‌کنند.

یک مثال کامل: تأیید رزرو

وقتی یک مشتری در یک اپ آرایشگاه وقت کوتاهی رزرو می‌کند، ممکن است چند فراخوانی API در یکی دو ثانیه رخ دهد:

۱. صفحه رزرو در مرورگر POST /api/bookings را با خدمت، زمان و جزئیات مشتری به بک‌اند شما می‌فرستد. ۲. بک‌اند شما بررسی می‌کند که نوبت آزاد است، رزرو را در پایگاه داده ذخیره می‌کند و 201 Created برمی‌گرداند. ۳. بک‌اند شما API یک سرویس ایمیل را با کلید محرمانه‌اش صدا می‌زند: «این تأییدیه را به lena@example.com بفرست.» ۴. اگر بیعانه‌ای باشد، بک‌اند شما از API درگاه پرداخت می‌خواهد یک جلسه پرداخت بسازد و مشتری را به آنجا می‌فرستد. ۵. بعداً، درگاه پرداخت به اپ شما زنگ می‌زند تا بگوید پرداخت موفق بوده. آن فراخوانی معکوس یک وب‌هوک است.

دو گام اول API خود شما بین فرانت‌اند و بک‌اند است. گام‌های ۳ تا ۵ APIهای شخص ثالث هستند.

اصطلاحات رایج

اصطلاحمعنی
Endpoint (اندپوینت)یک نشانی مشخص که یک API به آن پاسخ می‌دهد.
API key (کلید API)رشته محرمانه‌ای که اپ شما را نزد یک سرویس شناسایی می‌کند. مثل رمز عبور با آن رفتار کنید.
Authentication (احراز هویت)ثابت کردن اینکه چه کسی فراخوانی می‌کند — با کلید، توکن یا ورود. ببینید احراز هویت چیست.
Rate limit (محدودیت نرخ)سقفی برای تعداد درخواست‌ها در یک بازه زمانی.
SDKکتابخانه کد آماده‌ای که صدا زدن یک API مشخص را آسان‌تر می‌کند.
Documentation (مستندات)همان «منو»: کدام اندپوینت‌ها وجود دارند، چه می‌پذیرند و چه برمی‌گردانند.
Sandbox / test mode (حالت آزمایش)نسخه‌ای از یک سرویس برای آزمایش بدون پول واقعی یا داده واقعی.
Webhook (وب‌هوک)فراخوانی از یک سرویس دیگر به اپ شما وقتی اتفاقی رخ دهد.

اشتباهات رایج و باورهای غلط

  • گذاشتن کلیدهای محرمانه در فرانت‌اند. هر چیزی در کدی که در مرورگر اجرا می‌شود می‌تواند توسط هر کسی که صفحه را باز کند دیده شود. کلیدهای محرمانه باید روی سرور و در متغیرهای محیطی یا رازها بمانند.
  • چسباندن کلیدها در گفتگو. تاریخچه گفتگو ممکن است ذخیره شود. از قابلیت رازهای سازنده‌تان استفاده کنید و هر کلیدی را که لو رفته، عوض کنید.
  • فرض کردن اینکه API رایگان است. بسیاری از APIها بر اساس هر درخواست یا میزان مصرف هزینه می‌گیرند — APIهای مدل هوش مصنوعی بر اساس توکن. قیمت‌ها را بررسی کنید و سقف هزینه تنظیم کنید. ببینید نحوه استفاده از APIهای LLM.
  • مدیریت نکردن خطا. سرویس‌های بیرونی خاموش می‌شوند، timeout می‌دهند و به محدودیت می‌خورند. پیام‌های خطای معقول و تلاش مجدد بخواهید.
  • اعتماد به مرورگر. API خودتان باید دسترسی‌ها را خودش بررسی کند. پنهان کردن یک دکمه جلوی صدا زدن مستقیم اندپوینت توسط کسی را نمی‌گیرد.
  • استفاده از کلیدهای زنده هنگام آزمایش. تا آماده راه‌اندازی نیستید، از کلیدهای حالت آزمایش استفاده کنید.

چه چیزی از سازنده هوش مصنوعی‌تان بخواهید

  • «این اپ از کدام APIهای بیرونی استفاده می‌کند و هزینه هرکدام چقدر است؟»
  • «API پرداخت را فقط از سرور صدا بزن. کلید را از یک متغیر محیطی بخوان.»
  • «همه اندپوینت‌های API ما، کاری که می‌کنند و اینکه چه کسی مجاز به صدا زدنشان است را فهرست کن.»
  • «پیش از به‌روزرسانی یا حذف رزرو، روی سرور بررسی کن که کاربر واردشده مالک آن است.»
  • «اگر API ایمیل خطا داد، رزرو را در هر حال ذخیره کن و خطا را ثبت کن.»
  • «فعلاً از حالت آزمایش ارائه‌دهنده استفاده کن.»

APIها در Mythex

Mythex می‌تواند API اختصاصی خودتان را بسازد — به‌عنوان بخشی از یک وب‌اپ، یا به‌عنوان یک بک‌اند جداگانه با Node، Python (FastAPI)، C# یا Java که کنار فرانت‌اند اجرا می‌شود — و کدی بنویسد که سرویس‌های بیرونی را صدا می‌زند. کلیدهای آن‌ها را به‌عنوان رازهای پروژه اضافه می‌کنید نه در گفتگو، و آن‌ها در پیش‌نمایش و پس از انتشار برای اپ شما در دسترس‌اند. مستندات دستورهای آماده‌ای برای یکپارچه‌سازی هر API و ساخت بک‌اند REST API دارد.

پرسش‌ها

API به زبان ساده چیست؟

API (رابط برنامه‌نویسی کاربردی) راهی تعریف‌شده برای این است که یک نرم‌افزار از نرم‌افزار دیگر داده بخواهد یا کاری را انجام دهد. اپ شما درخواستی به قالبی توافق‌شده می‌فرستد و سیستم دیگر پاسخی برمی‌گرداند — مثل داده آب‌وهوا، نتیجه پرداخت، یا پاسخ تولیدشده توسط هوش مصنوعی.

REST API چیست؟

REST API سبک رایجی از API وب است که در آن هر نوع چیز (رزرو، مشتری) نشانی خودش را دارد و از متدهای استاندارد HTTP استفاده می‌شود: GET برای خواندن، POST برای ساختن، PUT یا PATCH برای به‌روزرسانی، و DELETE برای حذف. داده معمولاً به‌صورت JSON برمی‌گردد.

کلید API چیست و کجا باید نگهش دارم؟

کلید API رشته‌ای محرمانه است که اپ شما را نزد یک سرویس شناسایی می‌کند و اغلب اجازه می‌دهد پول خرج شود یا به داده دسترسی پیدا شود. آن را در متغیرهای محیطی یا رازهای پروژه روی سرور نگه دارید، نه در کدی که در مرورگر اجرا می‌شود و نه در یک مخزن عمومی.

تفاوت API و وب‌هوک چیست؟

با API، اپ شما وقتی بخواهد از سرویس دیگری چیزی می‌خواهد. با وب‌هوک، سرویس دیگر وقتی اتفاقی رخ دهد اپ شما را صدا می‌زند — برای مثال یک ارائه‌دهنده پرداخت که خبر می‌دهد پرداختی موفق بوده است.

Mythex · Pricing · با هوش مصنوعی هر چیزی بسازید · قالب‌های وب‌سایت و اپلیکیشن · مقایسه‌ی Mythex · واژه‌نامه‌ی ساخت اپلیکیشن با هوش مصنوعی · ابزارهای رایگان ساخت اپلیکیشن با هوش مصنوعی · English

English አማርኛ العربية Български বাংলা Bosanski Català Čeština Dansk Deutsch Ελληνικά Español Español (España) Eesti Suomi Français Français (Canada) ગુજરાતી हिन्दी Hrvatski Magyar Հայերեն Bahasa Indonesia Íslenska Italiano 日本語 ქართული Қазақ тілі ಕನ್ನಡ 한국어 Lietuvių Latviešu Македонски മലയാളം Монгол मराठी Bahasa Melayu မြန်မာ Norsk bokmål Nederlands ਪੰਜਾਬੀ Polski Português (Brasil) Português (Portugal) Română Русский Slovenčina Slovenščina Soomaali Shqip Srpski Svenska Kiswahili தமிழ் తెలుగు ไทย Tagalog Türkçe Українська اردو Tiếng Việt 简体中文 繁體中文(香港) 繁體中文(台灣)