What the documents look like
Marketplace advertising adjusts bids against traffic and conversion in near real time, and campaign review is not the main gate. The working materials for this category are campaign plans, keyword reports, audience package descriptions and conversion attribution tables, drawn from advertising platforms and store transaction data. Practitioners include campaign specialists, brand marketing teams and agency buyers. Order fulfillment and after-sales answering turns refund, reshipment and logistics-exception requests into calls against external systems.
Within FastGPT v4.17.2, the HTTP request node sends a request to a given address. Params carry path parameters and appear mostly in GET requests. Headers carry special information such as authentication. Body carries the request payload and appears mostly in POST and PUT requests. All three data groups, and the URL itself, can reference variables through double curly braces. Variables come from global variables, system variables and preceding node outputs. Documented system variables include appId, chatId, responseChatItemId, variables, cTime and histories; histories defaults to at most 10 entries and its length cannot be changed. Return values are not the raw interface response; each configured return value describes how to extract a value from the response through JSON path syntax, and the extraction follows JavaScript object access rules. From FastGPT v4.6.8, when the output type is set to string, the value at the corresponding key is converted into a JSON string.
The chat completions interface uses APIKey authentication. When calling chat/completions, passing body.appId in the request body is recommended. For OpenAI SDK compatibility, Authorization: Bearer <apiKey>-<appId> is also supported, and body.appId is then not required. The appId priority order is body.appId, then <apiKey>-<appId>, then the appId associated with the apikey under the older adaptation. Some SDKs need a v1 path in BaseUrl and some do not; a 404 can be retried with v1 added. The model and temperature fields passed in are invalid, because the orchestration decides them. Actual consumed Token values are not returned; setting detail=true allows manual calculation from the tokens values inside responseData.
Constraints at the HTTP integrations step
An interface call only carries and retrieves data. Forms collect values. Business verification, approval, database writes and external synchronization each need their own downstream implementation. Retrieval is not authorization, and a relevance score does not perform permission or entity isolation.
When a workflow reaches an interactive node it returns directly. Continuing the run means calling the same interface again. For form input, the entered content must be serialized into a string as the messages value, with keys matching the form keys and values holding the user input, and chatId must stay consistent. For user selection, passing the chosen result directly as a message is sufficient. The interactive value returned to an external caller is a display configuration containing only type and params; internal runtime fields such as entryNodeIds, memoryEdges, nodeOutputs and nodeResponseId are not returned. If an internal children, loop or tool wrapper interactive node is hit, the interface returns the deepest user-facing interactive node.
The chatId and responseChatItemId system variables do not exist in test mode. An empty value during debugging is therefore not a business fault. The optional paths listed in the documentation do not mean that every request executes all of them.
Hypothetical paper exercise sample: a campaign specialist submits a handover request on paper. The source material has three sentences. First, campaign plan number AD-0715, running from 1 July to 31 July, status in progress. Second, the keyword report shows 10 July spend of 800 and 12 conversions. Third, refund application RF-2031 concerns order SO-8842, applied on 12 July, status pending review, with no approval conclusion attached. The draft sentence to be judged is: the refund for this order has been executed and can be synchronized to the external ticket system. Judgment requires the same subject, the same period and the same field. The refund application status field reads pending review, which is a mutually exclusive value against executed for the same field, so the draft sentence is unsupported. Signing, reaching cooperation and contract effectiveness are three distinct facts, and none of them has evidence here.
Configuration and implementation checks
| Configuration item | Setting or content to check | Basis and comparison method |
|---|---|---|
| Request address | Fill in per the external interface documentation; the address can reference variables | Compare the address against the documentation; method is POST |
| Headers | Carry special information such as authentication | Credentials are injected through secure configuration and are not written into public samples |
| Body | Used only under the corresponding request type | Check the JSON structure item by item against the external contract |
| Variable references | Global variables, system variables, preceding node outputs | Check each actually passed value |
| Return value extraction | Extract needed values with JSON path | Compare against the interface response example |
| Debug identity fields | chatId, responseChatItemId | They do not exist in test mode; an empty value is not judged as a fault |
Hypothetical starting value for this paper exercise: pageSize is set to 10, for the reason that it makes the session list easy to check entry by entry, and the comparison object is the total field in the response against the number of entries actually returned. This value is a starting point for this exercise, not an official default.
Three common errors
- Treating a pending-review status as executed. The input is the status field of refund application RF-2031; the comparison object is the mutually exclusive value of the same field; the observable result is that the status still reads pending review, and the executed action stated in the draft sentence is unsupported.
- Treating a retrieval result as a basis for authorization. The input is a retrieval return carrying a similarity score; the comparison object is the actual permission configuration; the observable result is that the similarity score does not change the accessible range.
- Treating a debug empty value as a business fault. The input is the chatId missing in test mode; the comparison object is the session identifier passed in a formal call; the observable result is that this field does not exist in test mode in the first place.
How to verify the setup
- The input is the three source sentences of the hypothetical sample together with the draft sentence; the comparison object is the refund application status field; the observable result is that when the same field holds mutually exclusive values the draft sentence is unsupported, and the evidence gap is preserved.
- The input is one paper retrieval return; the comparison object is the permission configuration; the observable result is that the relevance score produces no entity or permission isolation effect.
- The input is an empty result [] on paper; the comparison object is the downstream design; the observable result is that the downstream handles it as an empty result, without inferring that a fictional rule necessarily returns an empty array.
Libraries built on different embedding models cannot be associated together. Check identifiers first and exclude non-matching ones, then record the actual observation.