> For a complete index of all SignalWire documentation pages, fetch https://signalwire.com/docs/llms.txt

# add_section

> Add a new top-level section to the POM.

[ref-pombuilder]: /docs/server-sdks/reference/python/agents/pom-builder

Add a new top-level section to the POM.

## **Parameters**

**`title`** `str` — required

Section title.

---

**`body`** `str`

Section body text.

---

**`bullets`** `Optional[list[str]]`

List of bullet points for this section.

---

**`numbered`** `bool` — default: False

Whether to number this section in the rendered output.

---

**`numbered_bullets`** `bool` — default: False

Whether to number bullet points instead of using bullet markers.

---

**`subsections`** `Optional[list[dict[str, Any]]]`

List of subsection objects, each with `"title"`, optional `"body"`, and
optional `"bullets"` keys.

---

## **Returns**

[`PomBuilder`][ref-pombuilder] -- Self for method chaining.

## **Example**

```python {5,10,19}
from signalwire.core.pom_builder import PomBuilder

pom = PomBuilder()

pom.add_section(
    "Role",
    body="You are a customer service representative for Acme Corp."
)

pom.add_section(
    "Guidelines",
    bullets=[
        "Always greet the customer by name when available",
        "Be concise and professional",
        "Never make promises about timelines you cannot keep"
    ]
)

pom.add_section(
    "Product Knowledge",
    body="You have access to the product catalog.",
    subsections=[
        {
            "title": "Pricing",
            "body": "Always quote current prices from the catalog."
        },
        {
            "title": "Returns",
            "body": "30-day return policy for all items."
        }
    ]
)

print(pom.render_markdown())
```