وقتی یک محصول جدید را خریداری میکنید، همراه آن یک دفترچه راهنما برای آموزش استفاده از آن ارائه میشود. بدون شک شما انتظار دارید که وقتی کنسول بازی جدید خود را به خانه برده و باز میکنید، یک راهنما برای نصب، استفاده و نگهداری آن وجود داشته باشد. وقتی مشتریان نمیدانند چگونه از محصولات استفاده کنند، احتمال اینکه به شرکت وفادار بمانند یا در آینده محصولات دیگری از آن خریداری کنند، کاهش مییابد. مستندسازی API در واقعه تهیه راهنما برای استفاده از API است.
یک رابط برنامهنویسی کاربردی (API) نیز هیچ تفاوتی ندارد. وقتی برنامهنویسان در حال یادگیری استفاده از یک API هستند، به یک مجموعه دستورالعمل برای پیشبرد کار خود نیاز دارند. به جای مواجهه با تعداد زیادی درخواست از طریق تیکتها که به تیم پشتیبانی شما ارسال میشوند، مستندات یک رابطه سازنده بین شرکت شما و کاربران نهایی فراهم میکند.
تامینکنندگان API موظف هستند مستندات API را ارائه دهند که مربوط، مشخص و همگام با آخرین تحولات محصول شما باشد. اگر برنامهنویسان نفهمند که چگونه از API استفاده کنند، کیفیت خوب API شما اهمیتی ندارد.
مستندسازی API چیست؟
مستندات API مجموعهای از دستورالعملها هستند که به توسعهدهندگان و دیگر افراد علاقهمند نشان میدهند چگونه از API شما و خدمات آن برای یک هدف خاص استفاده کنند. این مستندات به طور معمول شامل کدهای نمونه، آموزشها و جزئیات درباره توابع، کلاسها و انواع خروجی است. در واقع، این مستندات به توسعهدهندگان تمام اطلاعاتی را که برای ساخت اتصالات با API و انجام فراخوانیهای API با نرمافزار نیاز دارند را فراهم میکنند.
فراخوانیهای API نوعی درخواست هستند که توسط توسعهدهندههای ثالث به API پلتفرم ارسال میشود. فراخوانیهای API در مستندات توصیف شدهاند و دقیقاً به توسعهدهنده میگویند چه کارهایی را میتوانند از API درخواست کنند.
مستندات API به وضوح اندپوینتهای خود را توضیح میدهند، توجیه میکنند چرا باید از آنها استفاده کنید و مثالهای بسیار مشخصی از چگونگی استفاده از آنها را ارائه میدهند.
انواع API
برای تیم
ممکن است شما یک API داشته باشید که برای فرایندهای درونی شرکت شما است و بنابراین فقط باید توسط اعضای تیم شما استفاده شود. هدف از این نوع API، سهولت انتقال دادهها بین تیمها و سیستمها است، بنابراین توسعهدهندگان درونی شرکت شما مسئول استفاده از این API هستند.
برای شرکای تجاری
API های شرکا با بیرون از سازمان و تنها با افرادی که رابطه تجاری با شرکت ارائه دهنده API دارند به اشتراک گذاشته میشوند. تنها مشتریان مجاز به دسترسی به API هستند و بهاینترتیب، اقدامات امنیتی در این نوع APIها تشدید میشوند.
برای کاربران نهایی
APIهای کاربران نهایی یا APIهای عمومی میتوانند توسط هر برنامهنویسی بدون هیچ محدودیتی استفاده شوند. این نوع APIها اقدامات احراز هویت و اجازهدهی خاصی ندارند زیرا ارائهدهندگان میخواهند API توسط تعدادی بیشتری از برنامهنویسان مورد استفاده قرار بگیرد. گاهی اوقات این نوع APIها با هزینه اشتراک در دسترس قرار میگیرند که به تعداد فراخوانیهای API و بسته به سطح کاربر تقسیم میشوند.
در نهایت، نوع API که برای استفاده تیم، شرکای تجاری یا کاربران نهایی طراحی میشود، بستگی به نیازها و استراتژی شرکت شما دارد. انتخاب صحیح نوع مناسب API میتواند در بهبود تعاملات و مشارکت با سایر افراد و سازمان ها کمک کند.
چه کسی باید مستندسازی API را انجام دهد؟
به طور معمول برنامهنویسانی کهAPIها را ساختهاند وظیفه نوشتن مستندات را نیز بر عهده دارند. متأسفانه، ممکن است مستنداتی که توسط برنامهنویسان نوشته میشوند بسیار فنی باشند. همچنین، ممکن است مستنداتی که توسط برنامهنویسان نوشته میشوند نادیده گرفته شوند چراکه برنامهنویسان در واقع بر روی ساخت و نگهداری API تمرکز دارند.
به همین دلیل، بسیاری از شرکتها از نویسندگان فنی حرفهای استفاده میکنند تا مستندات API خود را ایجاد کنند. نویسندگان فنی دانش فنی لازم برای درک API را داشته و مهارتهای خلاقانه لازم برای نوشتن محتوای جذاب برای کاربران پایانی که برنامهنویس هستند را دارند.
برنامهنویسان API اطلاعات مورد نیاز برای توثیق دقیق API را به نویسنده فنی ارائه میدهند. اگر بخشی از مستندات از دست رفته باشد، برنامهنویسان میتوانند به نویسنده فنی کمک کنند تا آن بخشها را تکمیل کرده و در نهایت یک سند واضح و قابل دسترس برای مخاطبان هدف تهیه کند.
مزایای مستندسازی API
برای ارائهکنندگانی که میخواهند API خود را ارائه دهند، توسعه مستندات مزایای زیادی به همراه دارد.
تقویت تجربه توسعهدهندگان در رابط برنامهنویسی (API)
قبل از هر چیز، مستندات API تجربه توسعهدهندگان را بهبود میبخشد. اگر توسعهدهندگان ندانند چگونه از API استفاده کنند، کیفیت بالای API شما اهمیتی ندارد. مستندات خوب API به توسعهدهندگان کمک میکند تا انواع مختلفی از نقاط دسترسی را که API ارائه میدهد و نمونههایی از موارد کاربرد خاص را درک کنند. با بهبود تجربه توسعهدهندگان، تعداد کاربرانی که میتوانید برای محصول خود جذب کنید، افزایش مییابد.
کاهش زمان مورد نیاز برای آموزش توسعهدهندگان داخلی و شرکای خارجی
مستندات API خوب به این معنی است که تیم پشتیبانی شما نیازی به صرف زمان زیاد برای آموزش توسعهدهندگان جدید داخلی یا شرکای خارجی ندارند. کاربران جدید API شما تمام اطلاعات مورد نیاز برای شروع به کار با پلتفرم شما و رسیدن به موفقیت را دارند. هنگامی که فرایندها مستند شدهاند، نیازی به مداخله اعضای خاص تیم نیست.
حفظ کارایی محصول و بهروزرسانیهای سریعتر
وقتی مستندات API خود را به طور موثر ارائه میدهید، به این معنی است که میتوانید نگهداری محصول خود را مدیریت و به سرعت آن را بهروزرسانی کنید. با مستندات API، شما دقیقاً میدانید که محصول شما چه کاری باید انجام دهد و چگونه به کاربران پایانی کمک کند. مستندسازی به شما دید بهتری در مورد API میدهد و امکان بهروزرسانیهای سریعتری را فراهم میکند.
مستندات API در درک API و قابلیتهای آن برای کاربران داخلی و خارجی کمک میکند
یکی از مزایای اصلی مستندات API این است که به هر دو کاربران داخلی و خارجی کمک میکند تا API را درک کنند، از آن استفاده کرده و به اهداف خود برسند. اگر قابلیتهای API را توضیح ندهید، کاربران جدید نخواهند دانست چگونه از آن استفاده کنند و بیرغبتی نسبت به API را تجربه خواهید کرد. کاربران یک API از مستندات به عنوان یک نشانه میبینند تا تصمیم بگیرند که آیا از محصول شما استفاده کنند یا خیر.
منبع اصلی برای اعضای تیم برای درک اهداف API
زمانی که اعضای تیم شما میخواهند با اهداف API خود آشنا شوند، به مستندات API مراجعه میکنند. حتی افرادی که به طور مستقیم در ساخت و تدوین مستندات API شرکت نداشتهاند، همچنان قصد از توسعه و استفاده از API را درک کرده و قادر خواهند بود تیم توسعه API را در کار خود یاری دهند.
اجازه میدهد به سرعت باگها و مشکلات را شناسایی کنید
زمانی که رابط برنامهنویسی اپلیکیشن (API) را مستند میکنید، میتوانید هنگام تست API برای مستند کردن قابلیتهای آن، باگها و مشکلات را به سرعت شناسایی کنید. اگر API شما به خوبی کار نمیکند، میتوانید این بازخورد را به تیم توسعه API ارسال کنید تا آنها اقدامات لازم برای رفع هرگونه مشکل را انجام دهند.
ساختار مستندات رابط برنامهنویسی (API) – طراحی و عملکرد
خلاصه
خلاصه مستندات رابط برنامهنویسی شما همچنین به عنوان چکیده شناخته میشود. این قسمت حاوی خلاصهای از رابط برنامهنویسی و هدف آن است و ممکن است به کاربران درباره مزایای استفاده از این API نسبت به APIهای رقیب آگاهی دهد.
آموزشها
آموزشها بخش اصلی مستندات رابط برنامهنویسی را تشکیل میدهند و هدف آنها آموزش مفهوم API به کاربران و نحوه استفاده بهینه از آن است. این آموزشها معمولاً شامل راهنماییهای مرحلهبهمرحله برای چگونگی ادغام API و نحوه عملکرد صحیح آن است.
احراز هویت
ممکن است ارائه دهنده سرویس API برای حفظ امنیت دادههای API برای توسعهدهندگان و کاربران نهایی از چندین روش احراز هویت بهره ببرد. در مستندات API، هر روش احراز هویت بهطور جداگانه توضیح داده شده است تا کاربران بفهمند چگونه به API دسترسی پیدا کنند.
تعریف اندپوینت (Endpoint)
اندپوینت یک API نقطهای است که API با برنامه نرمافزاری دیگر ارتباط برقرار میکند. نقطهای که API با سیستم دیگری تعامل دارد، به عنوان اندپوینت در نظر گرفته شده و میتواند شامل آدرس سرور یا سرویس باشد.
وضعیت و کدهای خطا
کدهای وضعیت و خطا توسط API استفاده میشوند تا در صورت بروز مشکل، توسعهدهندگان را از مشکل مطلع کرده و در کنار آنها توضیحی از وضعیت یا خطا ارائه دهند. این کدها میتوانند شامل دستورالعملها برای چگونگی ادامه کار و رفع هر گونه خطای احتمالی باشند.
مثالها
زمانی که کاربران درک کردند که چگونه API کار میکند، بهتر است به آنها مثالهایی از موفقیتآمیز بودن فراخوانیها، پاسخها، کنترل خطا و سایر عملیاتهایی که هنگام استفاده از API ممکن است با آن مواجه شوند، نشان داده شود.
واژهنامه
به جای توضیح هر اصطلاح فنی در مستند خود، میتوانید به یک واژهنامه لینک داده و تعاریفی برای اصطلاحات، طرحها و موارد دیگر ارائه دهید.
نحوه نوشتن مستندات اولیه API خود
شناسایی مخاطبان
قبل از شروع به ایجاد هر نوع مستندات API باید اطمینان حاصل کنید که مخاطبان مورد نظر برای محصول خود را درک کردهاید. باید به دقت بدانید انواع کاربرانی که میخواهید روی آنها تمرکز کنید، چه منافعی از API دریافت خواهند کرد.
مهم است به خاطر داشته باشید که مخاطبان مستندات API شما به طور معمول به دو گروه تقسیم میشوند. گروه اول توسعهدهندگانی هستند که با API تعامل دارند، فعالانه از آن استفاده میکنند و به مستندات بیشتری شامل آموزشها و کدهای نمونه نیاز دارند. مخاطبان دوم شامل راهبران فنی و مدیران محصول هستند که API را ارزیابی کرده هماهنگی API با اهداف تجاری خود یا کسبوکار را بررسی میکنند.
ایجاد نقشه سفر کاربری
هنگامی که کاربران با مستندات API شما در تعامل هستند، ممکن است در یکی از مراحل مختلف سفر کاربری باشند. کاربرانی که ابتدا API شما را ارزیابی میکنند، نیاز به مستندات دارند تا دقیقاً بفهمند API شما چه کارهایی را میتواند انجام دهد و چگونه مشکلات را حل میکند و همچنین تعاریف توابع، اندپوینتها و نحوه تفاوت API شما با سرویسهای دیگر ارائه شده را نیز توضیح دهد.
ایجاد نقشه سفر کاربر به شما امکان میدهد تا برای کاربرانی که در مراحل مختلف قرار دارند، اقدامات مناسبی انجام دهید و تجربه توسعهدهنده بهتری را فراهم کنید. توسعهدهندگان در هر مرحله از مسیر راهنمایی و پشتیبانی شدهاند درباره قابلیتهای API شما تردیدی نخواهند داشت.
راهنما برای سناریوهای متداول
برخی از توابع بیشترین استفاده را از API شما خواهند کرد، بنابراین میتوانید راهنماهایی را برای این سناریوها ایجاد کنید. باید کاربردهای متداول API خود را به درستی مشخص کنید تا توسعهدهندگان جدید چگونگی استفاده درست از API را درک کنند. هر مورد کاربردی باید یک بخش مجزا داشته و شامل یک نمونه باشد.
ارائه راهنما برای سناریوهای متداول به توسعهدهندگان کمک میکند تا فرایند اتصال و توسعه را سریعتر انجام دهند.
افزودن کدهای نمونه
افزودن کدهای نمونه به مستندات API شما، به برنامهنویسان کمک میکند تا سریعتر با نحوه استفاده از API شما آشنا شده و قابلیتهای کامل آن را درک کنند. هر اندپوینت باید با کدهای نمونه خود همراه باشد تا برنامهنویسان بتوانند کد را استفاده و تست کنند.
کدهای نمونه به برنامهنویسان نشان میدهند که API شما چگونه کار میکند و به آنها اجازه میدهند با کپی کردن کد کار خود را شروع کنند. شما میتوانید کدهای نمونه را به زبانهای برنامهنویسی مختلفی که API شما در آنها موجود است، قرار دهید.
توضیح خطا و کدهای وضعیت
پیامهای خطا و کدهای وضعیت باید در مستندات شما درج شوند. هر پیام یا کد باید شامل توضیح کوتاهی از دلیل نمایش آن باشد تا کاربران بتوانند درک کنند که در هنگام تعامل با سیستم چه اتفاقی رخ میدهد.
توضیحاتی که همراه پیامهای خطا آمده است باید به کاربران نحوه رفع مشکلات توسط خود آنها را نشان دهد.
بهروزرسانی متداول مستندات
بعد از انتشار مستندات خود برای اولین بار، باید اطمینان حاصل کنید که به طور منظم به آنها مراجعه کرده و محتوای آن را بهروز باقی نگه میدارید. هیچ چیزی برای کاربران رنجآورتر از مستندات ناقص یا نادرست نیست.
بدون بهروزرسانی موثر مستندات در طول زمان، توسعهدهندگان قادر به استفاده از API شما نخواهند بود. هر بار که یک بهروزرسانی انجام میدهید یا یک ویژگی جدید منتشر میکنید، باید آن را در مستندات بازتاب دهید.
بهترین راهکارها برای مستندسازی API
- استفاده از زبان واضح
در هنگام نوشتن مستندسازی API، سطح تخصص کاربران خود را نمیدانید. به همین دلیل، استفاده از زبان ساده و قابل فهم برای همه افراد بسیار مهم است.
- شامل مستندات مرجع
مستندات مرجع برای API فهرست و توضیحات جامعی درباره اشیاء و روشهایی است که توسط API ارائه شدهاند. این مستندات به توسعهدهندگان درباره مواردی که در در دسترس قرار دارد و نحوه عملکرد آنها آموزش میدهد.
- استفاده از نمونهها
در حد امکان، باید از نمونهها برای نشان دادن نحوه کار API خود استفاده کنید. این نمونهها در هر بخش مرجع مستندات شما قابل یافتن هستند.
- شخصی را برای نوشتن مستندات تعیین کنید
شما به یک عضو در تیم خود نیاز دارید که وظیفه او نظارت بر تجربه توسعهدهندگان در مستندات API شما باشد. این شخص با عنوان نویسنده فنی وظیفه مستندسازی برای APIها را بر عهده میگیرد.
- پوشش دادن به انواع و موضوعات مختلف
شما باید اطمینان حاصل کنید که مستندات API شما جامع است و شامل مراجع، راهنماها و نمونهها میشود.
- یکپارچهسازی مستندات با فرایندها
مستندات و API شما باید همزمان توسعه یابند. با تکامل API، توسعه مستندات شما در کنار انتشار ویژگیهای جدید رشد خواهد کرد. تا حدی که ممکن است، از اتوماسیون استفاده کرده و در زمان نوشتن مستندات خود صرفه جویی کنید.
- ارائه راهنمای شروع سریع
راهنمای شروع سریع بهترین راه برای آشنایی توسعهدهندگان جدید با API شما و شروع به استفاده از آن است. این راهنماها شامل دستورالعملهایی درباره نحوه استفاده از API و کدهای نمونه هستند که دسترسی به API شما را آسانتر میکنند.
بهترین نمونههای مستندات API
در ادامه چند نمونه واقعی از مستندات API را مثال زدهایم که میتوانید از آنها الهام بگیرید و تلاش برای تهیه و بهبود مستندات خود را آغاز کنید.
GitHub
رابط کاربردی برنامهنویسی GitHub یک REST API است که توسعهدهندگان میتوانند از آن برای ارتباط با پلتفرم GitHub که ابزار همکاری در توسعه پروژههای نرمافزاری است، ارتباط برقرار کنند. GitHub مستندات جامعی را برای کمک به توسعهدهندگان در درک API فراهم میکند و جزئیات لازم برای هر استفادههای گوناگون از API را ارائه میدهد.
Twilio
رابط برنامهنویسی Twilio نیز یک REST API است که توسعهدهندگان با استفاده از آن میتوانند به پلتفرم Twilio متصل شوند. Twilio یک پلتفرم مشارکت با مشتری است که برای کسبوکارها امکان ارتباط در مقیاس بزرگ را فراهم میکند. مستندات API این شرکت حاوی همه چیزهایی که برای یکپارچهسازی با Twilio نیاز دارید، از جمله احراز هویت با استفاده از HTTP و SDKها است.
Dropbox
رابط برنامهنویسی Dropbox به توسعهدهندگان اجازه میدهد تا ارتباطات خود را با پلتفرم اشتراکگذاری اسناد Dropbox ایجاد کنند. این رابط برنامهنویسی نمونههای پیشساختهای را ارائه میدهد که به کاربران کمک میکند اجزای Dropbox را جاسازی کنند. همچنین، چندین نسخه رسمی از SDKهایی برای زبانهای برنامهنویسی محبوب نیز توسط این شرکت ارائه میشود.
مستندسازی API به اندازه توسعه آن مهم است
ساختن یک API به تنهایی کافی نیست و شما باید اسناد جامعی را برای API ارائه دهید تا به کاربران حال و آینده نشان دهید چگونه از ابزار شما استفاده کنند. اگر هیچ کس نفهمد که API شما قرار است چه کاری انجام دهد، هیچ کس به استفاده از آن ترغیب نخواهد شد.
هنگام ایجاد مستندات API، به دقت به کاربران خود و انواع محتواهایی که به آنها در بهرهبرداری بهتر از ابزار شما کمک میکند، فکر کنید. شما باید برای تمامی موارد استفاده رایج و مشکلاتی که به احتمال زیاد در هنگام پیادهسازی API رخ میدهد، پاسخگو باشید.
ارائه یک API راه عالی برای گسترش قابلیتهای محصول شما و دسترسی به گروههای بزرگی از کاربران جدید است. مستندات پلی است بین API و کاربران نهایی که از API شما برای دستیابی به اهداف خودشان استفاده خواهند کرد.