From 3c9270a4d685c912112aeb0ea7d3c3e528404def Mon Sep 17 00:00:00 2001 From: Olufunke Moronfolu Date: Fri, 6 Mar 2026 14:12:38 +0100 Subject: [PATCH 1/2] Initial doc update for GET and POST requests steps on Mendix Pipelines --- .../deployment/general/mendix-pipelines.md | 21 +++++++++++++++++++ .../deployment/mendix-pipelines.md | 6 ++++++ 2 files changed, 27 insertions(+) diff --git a/content/en/docs/deployment/general/mendix-pipelines.md b/content/en/docs/deployment/general/mendix-pipelines.md index aa8602fe189..7340e8f2eb5 100644 --- a/content/en/docs/deployment/general/mendix-pipelines.md +++ b/content/en/docs/deployment/general/mendix-pipelines.md @@ -167,6 +167,27 @@ Check out a branch. To configure this step, use the drop-down menu to select the Build a deployment package based on the latest major, minor, or patch version of the branch you checked out. The highest version is incremented based on the increment settings specified in this step. +##### GET Request + +Retrieve information from an external API to inform or control the pipeline's next steps. The GET request step requires the following: + +* **Request URL** – The endpoint to query. +* **Initial delay (seconds)** – Time to wait before the first request. Must be between 0 and 10800 seconds. +* **Polling interval (seconds)** – Time between retries. Must be between 5 and 300 seconds. +* **Maximum wait time (seconds)** – Total time to wait before timing out. Must be between 0 and 10800 seconds. + +The GET request step has the following [success criteria](https://jqlang.org/manuallets): + +* **API call succeeds** – The API returns a 2xx response. +* **API output meets condition** – The user-defined condition in jQuery evaluates to true (for example, `.Result = Success`). + +##### POST Request + +Send structured data to an external API to trigger an action or update a system. The POST request step requires the **Request URL**, which is the endpoint to send data to. The [success criteria](https://jqlang.org/manuallets) for the POST request step are: + +* **API call succeeds** – The API returns a 2xx response. +* **API output meets condition** – The user-defined condition in jQuery evaluates to true (for example, `.Result = Success`). + ##### Maia Best Practice Recommender{##recommender} Evaluate the results of the [Maia Best Practice Recommender](/refguide/best-practice-recommender/) within your Mendix Pipeline. You can configure this step to fail the Mendix Pipeline if errors, warnings, deprecations, and/or recommendations are detected. diff --git a/content/en/docs/releasenotes/deployment/mendix-pipelines.md b/content/en/docs/releasenotes/deployment/mendix-pipelines.md index 4434be9013e..75de74c5a29 100644 --- a/content/en/docs/releasenotes/deployment/mendix-pipelines.md +++ b/content/en/docs/releasenotes/deployment/mendix-pipelines.md @@ -12,6 +12,12 @@ To see the current status of the Mendix Pipelines, see [Mendix Status](https://s ## 2026 +### March 12, 2026 + +#### New Features + +* We have added two new steps, [GET request](/developerportal/deploy/mendix-pipelines/#get-request) and [POST request](/developerportal/deploy/mendix-pipelines/#post-request), to Mendix Pipelines. These new steps allow Mendix Pipelines to retrieve and send structured data to external APIs. + ### February 26, 2026 #### New Features From c91f2fb7369c1fca9075376ec0c1c9d14c372e67 Mon Sep 17 00:00:00 2001 From: Olufunke Moronfolu Date: Mon, 9 Mar 2026 15:03:21 +0100 Subject: [PATCH 2/2] Adding the configuration fields to the get and post steps --- .../deployment/general/mendix-pipelines.md | 40 +++++++++++++------ 1 file changed, 27 insertions(+), 13 deletions(-) diff --git a/content/en/docs/deployment/general/mendix-pipelines.md b/content/en/docs/deployment/general/mendix-pipelines.md index 7340e8f2eb5..115d04d6ac2 100644 --- a/content/en/docs/deployment/general/mendix-pipelines.md +++ b/content/en/docs/deployment/general/mendix-pipelines.md @@ -169,24 +169,38 @@ Build a deployment package based on the latest major, minor, or patch version of ##### GET Request -Retrieve information from an external API to inform or control the pipeline's next steps. The GET request step requires the following: +Use the **GET request** step to retrieve data from an external API and use the response to inform or control the next steps in the pipeline. + +The **GET request** step has the following configuration fields: + +| Field | Required? | Description | +| --- | :---: | --- | +| **Request URL** | Yes | Base endpoint to call (for example, `https://api.com/1/app`). | +| **Additional URL path** | No | Path appended to the Request URL (for example, `/123/status`). | +| **Header 1–5 Key / Value** | No | Up to five request headers. You can reference pipeline variables in header values (for example, set `Authorization` to `Bearer $API_Key`). | +| **Success Condition (in jQuery)** | No | Defines success of the API output. Set a jq expression that must evaluate to `true` (for example, `.Result == "Success"`). If empty, the step passes by default and logs: `No success condition set — this step will pass by default`.| +| **Failure Condition (in jQuery)** | No | Defines failure of the API output. If empty, the step passes if the success condition is met; otherwise the step keeps polling until maximum wait time is reached and logs: `No fail condition set — the step will run until success or timeout`. | +| **Result 1–3 (parsing logic to extract output in jQuery)** | No | jq expressions to extract values from the response and store them as step outputs (for example, `.JobId`). | +| **Initial Delay (seconds)** | Yes | Delay before the first call. Range must be between 0 and 10800. | +| **Polling Interval (seconds)** | Yes | Time between retries. Range must be between 5 and 300. | +| **Maximum Wait Time (seconds)** | Yes | Total time to wait before timing out. Range must be between 0 and 10800. | -* **Request URL** – The endpoint to query. -* **Initial delay (seconds)** – Time to wait before the first request. Must be between 0 and 10800 seconds. -* **Polling interval (seconds)** – Time between retries. Must be between 5 and 300 seconds. -* **Maximum wait time (seconds)** – Total time to wait before timing out. Must be between 0 and 10800 seconds. - -The GET request step has the following [success criteria](https://jqlang.org/manuallets): - -* **API call succeeds** – The API returns a 2xx response. -* **API output meets condition** – The user-defined condition in jQuery evaluates to true (for example, `.Result = Success`). +{{% alert color="info" %}} +To learn more about jq, refer to the [jQuery manual](https://jqlang.org/manual). +{{% /alert %}} ##### POST Request -Send structured data to an external API to trigger an action or update a system. The POST request step requires the **Request URL**, which is the endpoint to send data to. The [success criteria](https://jqlang.org/manuallets) for the POST request step are: +Use the **POST request** step to send structured data to an external API to trigger an action or update a system. The POST request step has the following configuration fields: -* **API call succeeds** – The API returns a 2xx response. -* **API output meets condition** – The user-defined condition in jQuery evaluates to true (for example, `.Result = Success`). +| Field | Required? | Description | +| --- | :---: | --- | +| **Request URL** | Yes | Base endpoint to call (for example, `https://api.com/1/apps`). | +| **Additional URL path** | No | Path appended to the Request URL (for example, `/start`). | +| **Header 1–5 Key / Value** | No | Up to five request headers. You can reference pipeline variables in header values (for example, `x-api-key: $API_Key`). | +| **Request body (JSON)** | No | JSON payload to send. Default: `{}`. | +| **Success condition (in jQuery)** | No | Defines success of the API output. Set a jq expression that must evaluate to `true` (for example, `.Result == "Success"`). If empty, the step passes by default and log message shows: `No success condition set — this step will pass by default`. | +| **Result 1–3 (parsing logic to extract output in jQuery)** | No | jq expressions to extract values from the response and store them as step outputs (for example, `.JobId`). | ##### Maia Best Practice Recommender{##recommender}