> For the complete documentation index, see [llms.txt](https://docs.hackle.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.hackle.io/en/crm-marketing/message-personalization/connected-content-faq.md).

# Connected Content FAQ

Frequently asked questions about configuring Connected Content and handling its responses.

These are the questions we hear most often when setting up and using Connected Content.

#### Can I use `connected_content` multiple times in one message?

Yes. However, all `connected_content` calls in one message share a cumulative time budget of 2 seconds. If the first call took 1.8 seconds, the second call must finish within 0.2 seconds. Once the limit is exceeded, subsequent calls are immediately skipped without a network call. Use multiple calls only when the average response time of the external API is sufficiently short.

***

#### Won't it take a long time to send while waiting for the response?

Each call terminates within a maximum of 2 seconds. The cumulative limit for one message is also 2 seconds. Send delays do not accumulate indefinitely.

***

#### How do I access the response when it is a JSON array?

If the top level is an array, it is not recognized as an object and becomes an empty value. Have the API return a response wrapped in an object, such as `{"items":[...]}`. You can also set up a separate wrapping endpoint.

***

#### Can I use non-JSON responses (e.g., plain text, HTML)?

Not supported. If it cannot be parsed as a JSON object, it is treated as an empty value.

***

#### I want to use the response only for conditional branching without displaying it directly in the message.

You can use the `:save` variable directly in `{% if %}` and the like. You do not need to output it in the message body. Refer to the examples in [Behavior on Failure](/en/crm-marketing/message-personalization/connected-content.md#behavior-on-failure).

***

#### How do I extract a response field whose key contains Korean characters, spaces, or dots?

Use bracket subscript in the form `{{var["key name"]}}`. Single quotes (`'`) can also be used.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.hackle.io/en/crm-marketing/message-personalization/connected-content-faq.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
