---
schema_version: "1"
id: 4b9e8d9fea3464927cb40b35d42d5ab09fdc1f4f83cf2217c6822da529d8ad67
title: Configuring Metadata Operations
collection: mulesoft
version: current
locale: en-us
portal_url: https://docs.salesforce.com/mulesoft/current/en-us/netsuite-rest-connector/latest/configuring-metadata-operations.md
canonical_url: https://docs.mulesoft.com/netsuite-rest-connector/latest/configuring-metadata-operations
source_site: docs.mulesoft.com
content_type: documentation
content_hash: e964ecaf0e53c96510f0c6742c4f64ed2eb72b784620e2a160fff4a07d98163c
description: MuleSoft Documentation Site
release: "1.0"
latest: true
---
---
product: NetSuite REST Connector
version: 1.0
is-latest-version: true
---

# Configuring Metadata Operations

> For the full documentation index, see: https://docs.mulesoft.com/llms.txt

Configure the operations that retrieve schema, catalog, and system information from NetSuite: **Get
Record Metadata**, **Get Record Types Catalog**, **Get Select Value**, **Get Governance Limits**,
and **Get Server Time**.

Use these operations to discover record structures, validate field values, and synchronize with
NetSuite system state. For full parameter, output, and error details, see
[NetSuite REST Connector Reference](https://docs.mulesoft.com/netsuite-rest-connector/latest/netsuite-rest-connector-reference).

## Configure the Get Record Metadata Operation

The **Get Record Metadata** operation retrieves the OpenAPI metadata schema for a record type,
including field definitions, data types, required fields, and valid select values, by sending
`GET /record/v1/metadata-catalog/{recordType}` with `Accept: application/swagger+json`. Use this
metadata for validation or documentation.

To configure the **Get Record Metadata** operation:

1.  Select the operation on the Anypoint Code Builder or Studio canvas.

2.  In the **General** properties tab for the operation, enter these values:

    - **Record Type**

      The NetSuite record type (for example, `customer` or `salesOrder`).

### XML Configuration

This is the XML for this operation:

```xml
<ms-netsuite-rest:get-record-metadata
    config-ref="Config"
    doc:name="Get Record Metadata"
    recordType="customer"/>
```

### Output Configuration

The operation outputs a Binary payload containing the record-type metadata schema as JSON, with
`NetSuiteRestAttributes`.

## Configure the Get Record Types Catalog Operation

The **Get Record Types Catalog** operation retrieves the list of available record types from the
metadata catalog, including standard and custom types with their internal names and labels, by
sending `GET /record/v1/metadata-catalog/`, optionally with `?select=type`. When **Select** has a
single value, the API returns a single record-type object instead of an `items` collection.

To configure the **Get Record Types Catalog** operation:

1.  Select the operation on the Anypoint Code Builder or Studio canvas.

2.  In the **General** properties tab for the operation, enter these values:

    - **Select**

      Optional comma-separated record-type names to retrieve (for example, `customer` or
      `assemblybuild,customer,journalEntry`). When omitted, all record types are returned as an
      `items` array.

    - **As Swagger Spec**

      When `true`, sends `Accept: application/swagger+json` so NetSuite returns a combined OpenAPI
      3.0 specification for all selected record types. Required for a multi-value **Select** to
      return the documented combined spec. Defaults to `false`, which preserves the original JSON
      behavior.

### XML Configuration

This is the XML for this operation:

```xml
<ms-netsuite-rest:get-record-types-catalog
    config-ref="Config"
    doc:name="Get Record Types Catalog"
    select="customer"/>
```

### Output Configuration

The operation outputs a Binary payload with `NetSuiteRestAttributes`, containing the record-types
catalog or the combined OpenAPI specification.

## Configure the Get Select Value Operation

The **Get Select Value** operation retrieves select-option metadata for one or more fields on a
record type, with automatic pagination, by sending `POST /record/v1/{recordType}`. Each For Each
iteration yields one select-option object (for example, `{"id": 16, "refName": "Active"}`).

To configure the **Get Select Value** operation:

1.  Select the operation on the Anypoint Code Builder or Studio canvas.

2.  In the **General** properties tab for the operation, enter these values:

    - **Record Type**

      The NetSuite record type (for example, `customer`, `salesOrder`, or `invoice`).

    - **Fields**

      Comma-separated list of field names to retrieve select options for, passed as the `fields` URL
      query parameter. Supports dot notation for sublist fields (for example,
      `line.dueToFromSubsidiary`), and multiple fields (for example, `entitystatus,category`).

    - **Page Size** and **Max Total Results**

      Control the number of select options per page (default 100) and the maximum total returned
      across all pages (default `-1`, unlimited).

    - **Record Body**

      Optional JSON body that provides record context used to filter the returned select options.

### XML Configuration

This is the XML for this operation:

```xml
<ms-netsuite-rest:get-select-value
    config-ref="Config"
    doc:name="Get Select Value"
    recordType="customer"
    fields="entitystatus,category"/>
```

### Output Configuration

The operation outputs an array of messages, each with a Binary payload (one select-option object)
and `NetSuiteRestAttributes`. Page attributes are copied onto each item.

## Configure the Get Governance Limits Operation

The **Get Governance Limits** operation retrieves governance concurrency limits for the current
account and integration by sending `GET /system/v1/governanceLimits`. It returns account-level
limits (total and unallocated) and integration-level limits (allocated concurrency and limit type).
This operation requires administrator-level permissions. The `integrationConcurrencyLimit` field is
present only when `integrationLimitType` is `integrationSpecific`.

To configure the **Get Governance Limits** operation:

1.  Select the operation on the Anypoint Code Builder or Studio canvas.

2.  In the **General** properties tab for the operation, enter these values:

This operation takes no operation-specific parameters other than the configuration reference.

### XML Configuration

This is the XML for this operation:

```xml
<ms-netsuite-rest:get-governance-limits
    config-ref="Config"
    doc:name="Get Governance Limits"/>
```

### Output Configuration

The operation outputs a Binary payload containing the governance limits as JSON, with
`NetSuiteRestAttributes`.

## Configure the Get Server Time Operation

The **Get Server Time** operation retrieves the current NetSuite server time in UTC, regardless of
the user’s time zone, by sending `GET /system/v1/serverTime`. Use it for synchronization that must
compare against server time rather than client time.

To configure the **Get Server Time** operation:

1.  Select the operation on the Anypoint Code Builder or Studio canvas.

2.  In the **General** properties tab for the operation, enter these values:

This operation takes no operation-specific parameters other than the configuration reference.

### XML Configuration

This is the XML for this operation:

```xml
<ms-netsuite-rest:get-server-time
    config-ref="Config"
    doc:name="Get Server Time"/>
```

### Output Configuration

The operation outputs a Binary payload containing the current server time in UTC, with
`NetSuiteRestAttributes`.

## See Also

- [NetSuite REST Connector Overview](https://docs.mulesoft.com/netsuite-rest-connector/latest/)

- [Configuring Query Operations](https://docs.mulesoft.com/netsuite-rest-connector/latest/configuring-query-operations)

- [NetSuite REST Connector Reference](https://docs.mulesoft.com/netsuite-rest-connector/latest/netsuite-rest-connector-reference)

- [Salesforce Help](https://help.salesforce.com)
