چطور میتوانیم کمکتان کنیم؟
راهنمای استفاده از API نرمافزار مدیریت پروژه و تایم شیت بهتایم
ApI عمومی بهتایم
این API به صورت REST تهیه شده و در تمامی زبانها و Platformها قابل استفاده است. برای مشاهده توابع و مستندات آن میتوانید به آدرس زیر مراجعه کنید:
https://app.behtime.ir/swagger
در این محیط میتوانید توابع، پارامترهای ورودی آنها و مقادیر خروجی آنها را مشاهده کرده و به منظور آشنایی با نحوهی استفاده، آنها را فراخوانی کنید.
(نکته مهم):
برای کار با این توابع لازم است که یک token داشته باشید که این توکن را میتوانید از طریق فراخوانی تابع authenticate بدست آورد. توکن به دست آمده به مدت ۳۰ دقیقه معتبر است و پس از آن چنانچه هر تابعی با آن فراخوانی شود در نتیجهی آن فراخوانی پیام INVALID_TOKEN دریافت خواهد شد که لازم است مجددا از طریق فراخوانی تابع authenticate باز تولید (renew) شود.
کلاینت برای محیط NET. (زبانهای # Cو VB.NETو …)
به منظور سادهتر شدن کار با این API تیم توسعه بهتایم یک کلاینت برای این محیط ایجاد کرده که از طریق آدرس زیر قابل دسترس است. لازم به ذکر است که این کلاینت از طریق ابزار swagger-codegen ایجاد شده که نه تنها برای این محیط بلکه برای زبانها و سایر محیطها نیز میتوان کلاینت ایجاد کرد.
https://github.com/ali-hm/BtApiClient
ایجاد کلاینت برای سایر زبانها
همان طور که در بخش قبل توضیح داده شد با توجه به اینکه API بهتایم از استاندارد OpenApi تبعیت میکند به راحتی میتوان با استفاده از ابزار swagger-codegen برای زبانها و محیطهای زیادی کلاینت ایجاد کرد. برای دانلود این ابزار کافی است در محیط Powershell از دستور زیر استفاده کنید.
Invoke-WebRequest -OutFile swagger-codegen-cli.jar
https://repo1.maven.org/maven2/io/swagger/swagger-codegen-cli/2.4.18/swagger-codegen-cli-2.4.18.jar
اگر در محیط لینوکس هستید میتوانید از دستور زیر استفاده کنید.
wget https://repo1.maven.org/maven2/io/swagger/swagger-codegen-cli/2.4.18/swaggercodegen-cli-2.4.18.jar -O swagger-codegen-cli.jar
پس از دریافت این ابزار با فراخوانی آن به این شکل میتوانید کلاینت API بهتایم برای زبان مورد نظر خود را بسازید:
زبان #C
java -jar swagger-codegen-cli.jar generate -i https://app.behtime.ir/swagger/docs/v1 -l csharp -o behtimeApiClient
زبان PHP
java -jar swagger-codegen-cli.jar generate -i https://app.behtime.ir/swagger/docs/v1 -l php -o behtimeApiClientPHP
زبان TypeScript فریم ورک Angular
java -jar swagger-codegen-cli.jar generate -i https://app.behtime.ir/swagger/docs/v1 -l typescriptangular -o behtimeApiClientTypeScriptAngular
زبان JavaScript
java jar swagger-codegen-cli.jar generate -i https://app.behtime.ir/swagger/docs/v1 -l javascript -o behtimeApiClientJavaScript
سایر زبانهای پشتیبانی شده عبارتند از:
API clients: ActionScript, Ada, Apex, Bash, C# (.net 2.0, 3.5 or later), C++ (cpprest, Qt5, Tizen), Clojure, Dart, Elixir, Elm, Eiffel, Erlang, Go, Groovy, Haskell (http-client, Servant), Java (Jersey1.x, Jersey2.x, OkHttp, Retrofit1.x, Retrofit2.x, Feign,RestTemplate, RESTEasy, Vertx, Google API Client Library for Java, Restassured),Kotlin, Lua, Node.js (ES5, ES6, AngularJS with Google Closure Compiler annotations) Objective-C, Perl, PHP, PowerShell, Python, R, Ruby, Rust (rust, rust-server), Scala (akka, http4s, swagger-async-httpclient), Swift (2.x, 3.x, 4.x, 5.x), Typescript (Angular1.x, Angular2.x, Fetch, jQuery, Node)
- da-server
- akka-scala
- android
- apache2
- apex
- aspnetcore
- bash
- csharp
- clojure
- cwiki
- cpprest
- csharp-dotnet2
- dart
- dart-jaguar
- elixir
- elm
- eiffel
- erlang-client
- erlang-server
- finch
- flash
- python-flask
- go
- go-server
- groovy
- haskell-http-client
- haskell
- jmeter
- jaxrs-cxf-client
- jaxrs-cxf
- java
- inflector
- jaxrs-cxf-cdi
- jaxrs-spec
- jaxrs
- msf4j
- java-pkmst
- java-play-framework
- jaxrs-resteasy-eap
- jaxrs-resteasy
- javascript
- javascript-closure-angular
- java-vertx
- kotlin
- lua
- lumen
- nancyfx
- nodejs-server
- objc
- perl
- php
- powershell
- pistache-server
- python
- qt5cpp
- r
- rails5
- restbed
- ruby
- rust
- rust-server
- scala
- scala-gatling
- scala-lagom-server
- scalatra
- scalaz
- php-silex
- sinatra
- slim
- spring
- dynamic-html
- html2
- html
- swagger
- swagger-yaml
- swift5
- swift4
- swift3
- swift
- php-symfony
- tizen
- typescript-aurelia
- typescript-angular
- typescript-angularjs
- typescript-fetch
- typescript-jquery
- typescript-node
- ue4cpp
- undertow
- ze-ph
- kotlin-server
برای اطلاعات بیشتر به مستنداتِ swagger-codegen با آدرس زیر مراجعه کنید.