> ## Documentation Index
> Fetch the complete documentation index at: https://docs.tryprofound.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Using Drupal in Agents

After connecting your Drupal account, the following nodes become available in Profound Agents.

The nodes work with Drupal's [JSON:API](https://www.drupal.org/docs/core-modules-and-themes/core-modules/jsonapi-module) module. Content is accessed by a **resource type** (the entity type, such as Basic, Image, or Article) and by a **resource UUID**.

## Available nodes

<Tabs>
  <Tab title="Create Item" icon="file-plus">
    ### Create Item

    Create a new item of a resource type.

    #### Required inputs

    * **Drupal Site** — Select a site from the dropdown
    * **Resource type** — The JSON:API resource type, such as `node--article`
    * **Attributes** or **Relationships** (or both) — A JSON object of field values or references to other resources.

    <Warning>
      A request with neither Attributes nor Relationships is rejected, include at least one.
    </Warning>
  </Tab>

  <Tab title="Update Item" icon="pencil">
    ### Update Item

    Update an existing item.

    #### Required inputs

    * **Drupal Site** — Select a site from the dropdown
    * **Resource type** — The JSON:API resource type, such as `node--article`
    * **Resource UUID**
    * **Attributes** or **Relationships** (or both) — A JSON object of field values or references to update. At least one is required.

    <Note>
      Only the attributes and relationships you provide are modified.
    </Note>
  </Tab>

  <Tab title="Get Item" icon="file">
    ### Get Item

    Retrieve a single item.

    #### Required inputs

    * **Drupal Site** — Select a site from the dropdown
    * **Resource type** — The JSON:API resource type, such as `node--article`
    * **Resource UUID**

    The output includes the item's full content with attributes, relationships, and metadata from the JSON:API response.
  </Tab>

  <Tab title="List Items" icon="list">
    ### List Items

    List items of a given resource type.

    #### Required inputs

    * **Drupal Site** — Select a site from the dropdown
    * **Resource type** — The JSON:API resource type, such as `node--article`

    #### Optional inputs: Query options

    * **Filter** — A JSON object using Drupal JSON:API filter syntax
    * **Fields** — The fields to return per object in the node output; if nothing is specified, all fields are returned
    * **Include** — A list of the related entities to include in the output (learn more in the [JSON:API documentation](https://www.drupal.org/docs/core-modules-and-themes/core-modules/jsonapi-module/includes))
    * **Sort** — Sort expression for the result set
    * **Limit** — Number of items to return (default 25, up to 50)
    * **Offset** — Pagination offset (default 0)

    The output is a structured list of items that can be used in downstream workflow steps.
  </Tab>
</Tabs>

***

## Key concepts

### Resource types

Resource types follow Drupal's JSON:API naming convention: the entity type and bundle joined by two hyphens.

| Resource type         | Description                |
| --------------------- | -------------------------- |
| `node--article`       | Article content type nodes |
| `node--page`          | Basic page nodes           |
| `taxonomy_term--tags` | Tags taxonomy terms        |

<Tip>
  Use **List Items** to discover available resource types and inspect the structure of items returned for your Drupal site.
</Tip>

### Resource UUIDs

Items are referenced by **UUID**. When you create or list items, use the UUID from the JSON:API response as the **Resource UUID** in later steps.

### Attributes and relationships

**Create Item** and **Update Item** require at least one of **Attributes** or **Relationships**.

* **Attributes** — Field values for the item, such as title, body, or status. Example attributes for a `node--article`:
  ```json theme={null}
  {
    "title": "My new article",
    "body": {
      "value": "<p>Article content here.</p>",
      "format": "basic_html"
    },
    "status": true
  }
  ```
* **Relationships** — References to other resources, such as taxonomy terms, authors, or related nodes.

  Example relationships linking tags to an article:

  ```json theme={null}
  {
    "field_tags": {
      "data": [
        { "type": "taxonomy_term--tags",
          "id": "9b2c3d4e-5f6a-7b8c-9d0e-1f2a3b4c5d6e"
        }
      ]
    }
  }
  ```

***

## Additional resources

* [Drupal's JSON:API module documentation](https://www.drupal.org/docs/core-modules-and-themes/core-modules/jsonapi-module)
* [JSON:API specification](https://jsonapi.org/format/)
