早期アクセス
モジュールが作成されると、APIエンドポイントの詳細を定義する設定ウィンドウが開きます。
クエリーパラメーター→$.query_parameter
ヘッダー→$.header
要求本文→$.body
要求URL→$.url
HTTPメソッド→$.method
これらの値は、Circuit内での処理、意思決定、状態間でのデータ受け渡しに使用できます。
Qntrlでは、受信REST APIで関数リソースを構築するために、次の言語をサポートしています。
JavaScript(NativeまたはCodexエンジン)
その他のクラウド関数– Python、Java、Node.jsに対応しています。
/*** @param {ScriptedRestApiRequest} req* @param {ScriptedRestApiResponse} res*/function execute(req, res) {try {var requestHeaders = req.getRequestHeaders();var requestParams = req.getRequestParams();var uri = req.getUri();console.log('Request Headers ' + JSON.stringify(requestHeaders));console.log('Request Parameters ' + JSON.stringify(requestParams));console.log('URI ' + uri);// --- Read Body ---var requestBody = '';var readAsStream = true;if (readAsStream){let chunk;let inputStream = req.getInputStream();while( (chunk = inputStream.read()) != null){let chunkStr = String.fromCharCode.apply(null, chunk);requestBody += chunkStr;}} else {requestBody = req.getRequestBody();}// --- Prepare REST response ---var responseData = {status: 'success',message: 'REST Request processed successfully using codex engine.'};// --- Set headers ---let responseHeader = { 'request-id': '1718181881001' };res.setResponseHeaders(responseHeader);// --- Send Response ---res.setStatus(200);res.setContentType('application/json');res.getOutputStream().write(JSON.stringify(responseData));}catch (e) {res.setStatus(500);res.setContentType('application/json');res.getOutputStream().write(JSON.stringify({status: 'error',message: e.message + ''}));}}
import com.zoho.cloud.function.Context;import com.zoho.cloud.function.basic.*;import org.json.JSONObject;public class SampleRESTFunction implements ZCFunction {public void runner(Context context, BasicIO basicIO) throws Exception {// Read input parametersString queryParameter = basicIO.getParameter('query_parameter').toString();String header = basicIO.getParameter('header').toString();String body = basicIO.getParameter('body').toString();String url = basicIO.getParameter('url').toString();// Write responseJSONObject response = new JSONObject();JSONObject responseHeader = new JSONObject();responseHeader.put('request_id', 'REQ-20251105-XYZ123');responseHeader.put('timestamp', '2025-11-05T12:45:30Z');responseHeader.put('content_type', 'application/json');response.put('response_header', responseHeader);response.put('status_code', 202);response.put('body', 'Inbound REST request processed sucessfully.');basicIO.write(response.toString());}}
要求パラメーター、ヘッダー、本文のいずれかの検証に失敗した場合、Qntrlは要求を拒否します。
警告とエラーを処理して返せるのは、リソースとしてFunctionを使用している場合のみです。
Circuitでは、詳細な入力/出力制御はできず、基本的な自動化トリガーのみ提供されます。
QntrlにREST API要求を送信するには、次の形式を使用します。
メソッド:任意のHTTPメソッド(例:GET、POST)
URL:https://core.qntrl.com/webservice/<org_id>/<base_URI>/<source_endpoint>
認証(要求ヘッダーに追加する必要があります)。
次の順に[設定]→[WEBサービス]→[インバウンド]→[REST]を選択します。
タブ名の横にあるアクションメニュー(三点リーダー)にカーソルを合わせます。
次のいずれかを選択します。
[編集]:カテゴリーの名前または詳細を更新します。
[削除]:カテゴリー全体と関連APIを削除します。
次の順に[設定]→[WEBサービス]→[インバウンド]→[REST]を選択します。
カテゴリーの[ステータス]セクションで、切り替えスイッチを使用してタブを有効または無効にします。
有効化されたカテゴリーではAPIリクエストを受け付けます。
無効化されたカテゴリーではAPI呼び出しの受け付けを停止します。