# uip is resources

> Syntax and options for `uip is resources`, which lists, describes, and executes against connector data-plane objects.

`uip is resources` works with the runtime objects a connector addresses — tickets, contacts, records, files. `list` enumerates the connector's objects, `describe` returns the field schema and operations for one object, and `execute` calls the connector's data plane (Create / List / Get / Update / Replace / Delete) against a connection. Every `execute` verb requires `--connection-id`; the cached metadata reads (`list`, `describe`) accept it optionally to surface custom objects/fields.

## Synopsis

```
uip is resources <verb> [options]
```

## Verbs

| Verb | Purpose |
|---|---|
| `list` | List objects available on a connector; optionally filter by operation. |
| `describe` | Describe one object's operations and field schema. |
| `execute` | Call the connector's data plane (Create / List / Get / Update / Replace / Delete). |

## uip is resources list

List objects available on a connector. Results depend on whether `--connection-id` is supplied — connection-scoped listings include custom objects; unscoped listings don't (the CLI surfaces a `Warning` in that case).

### Arguments

| Name | Required | Purpose |
|---|---|---|
| `<connector-key>` | yes | Connector key, for example `uipath-zoho-desk`. |

### Options

| Short | Long | Value | Default | Description |
|---|---|---|---|---|
| — | `--operation` | enum | — | Filter by operation: `List`, `Retrieve`, `Create`, `Update`, `Delete`, `Replace`. |
| — | `--connection-id` | id | — | Scope to a specific connection (enables custom objects). |
| `-t` | `--tenant` | name | session default | Override the tenant. |
| — | `--refresh` | flag | off | Force re-fetch from the API, ignoring cache. |

### Examples

```bash
uip is resources list uipath-zoho-desk

# Only objects that support a Create operation
uip is resources list uipath-zoho-desk --operation Create

# Connection-scoped listing — includes custom objects
uip is resources list uipath-zoho-desk \
    --connection-id a1b2c3d4-0000-0000-0000-000000000001
```

### Data shape (--output json)

```json
{
  "Code": "ResourceList",
  "Data": [
    {
      "Name": "tickets",
      "DisplayName": "Tickets",
      "Path": "/tickets",
      "Type": "standard",
      "SubType": "standard",
      "Custom": "no",
      "ElementKey": "uipath-zoho-desk"
    }
  ]
}
```

## uip is resources describe

Describe an object's fields and operations. Without `--operation`, returns the list of available operations and a hint. With `--operation`, narrows to one operation and returns its parameters, request fields, and response fields.

### Arguments

| Name | Required | Purpose |
|---|---|---|
| `<connector-key>` | yes | Connector key. |
| `<object-name>` | yes | Object name (for example, `tickets`). Find names with `resources list`. |

### Options

| Short | Long | Value | Default | Description |
|---|---|---|---|---|
| — | `--connection-id` | id | — | Scope to a connection (enables custom fields). |
| `-t` | `--tenant` | name | session default | Override the tenant. |
| — | `--operation` | enum | — | `List`, `Retrieve`, `Create`, `Update`, `Delete`, or `Replace`. |
| — | `--refresh` | flag | off | Force re-fetch from the API, ignoring cache. |

### Examples

```bash
# List operations available on this object
uip is resources describe uipath-zoho-desk tickets

# Field schema for the Create operation
uip is resources describe uipath-zoho-desk tickets --operation Create

# Required request fields, scripting-friendly
uip is resources describe uipath-zoho-desk tickets --operation Create \
    --output-filter 'Data.requestFields[?required].name'
```

### Data shape (--output json)

Without `--operation`:

```json
{
  "Code": "ResourceMetadata",
  "Data": {
    "name": "tickets",
    "displayName": "Tickets",
    "elementKey": "uipath-zoho-desk",
    "availableOperations": [
      { "method": "GET", "name": "List", "description": "Search for Tickets", "path": "/tickets" },
      { "method": "POST", "name": "Create", "description": "Create a Tickets", "path": "/tickets" }
    ],
    "hint": "Use --operation <Create|List|Retrieve|Update|Delete|Replace> to see fields for a specific operation."
  }
}
```

With `--operation Create`, the same `Code: "ResourceMetadata"` is returned, but instead of `availableOperations` the payload carries `operation`, `parameters`, `requestFields`, and `responseFields`.

## uip is resources execute

Call the connector's data plane. `execute` itself is a group; the actual verbs are `create`, `list`, `get`, `update`, `replace`, and `delete`. Every verb requires `--connection-id`; `create`, `update`, and `replace` additionally require `--body` with a JSON request body.

```
uip is resources execute create   <connector-key> <object-name> --connection-id <id> --body <json>
uip is resources execute list     <connector-key> <object-name> --connection-id <id>
uip is resources execute get      <connector-key> <object-name> --connection-id <id> [--query <params>]
uip is resources execute update   <connector-key> <object-name> --connection-id <id> --body <json>
uip is resources execute replace  <connector-key> <object-name> --connection-id <id> --body <json>
uip is resources execute delete   <connector-key> <object-name> --connection-id <id> [--query <params>]
```

HTTP method mapping: `create` → POST, `list` → GET (collection), `get` → GET-by-id, `update` → PATCH, `replace` → PUT, `delete` → DELETE.

### Arguments

| Name | Required | Purpose |
|---|---|---|
| `<connector-key>` | yes | Connector key. |
| `<object-name>` | yes | Object name (for example, `tickets`). |

### Shared options

| Short | Long | Value | Default | Description |
|---|---|---|---|---|
| — | `--connection-id` | id | required | Connection used to authorize the data-plane call. |
| `-t` | `--tenant` | name | session default | Override the tenant. |
| — | `--query` | params | — | Query parameters. Accepts `key=value&key=value` or a JSON object. |
| — | `--body` | JSON | — | Request body. Required for `create`, `update`, `replace`. |

### Examples

```bash
# Create a ticket
uip is resources execute create uipath-zoho-desk tickets \
    --connection-id a1b2c3d4-0000-0000-0000-000000000001 \
    --body '{"subject":"New issue","departmentId":"DEP-1"}'

# List tickets — first page
uip is resources execute list uipath-zoho-desk tickets \
    --connection-id a1b2c3d4-0000-0000-0000-000000000001

# Delete a ticket by ID
uip is resources execute delete uipath-zoho-desk tickets \
    --connection-id a1b2c3d4-0000-0000-0000-000000000001 \
    --query 'id=TK-1001'
```

### Data shape (--output json)

```json
{
  "Code": "ExecuteOperation",
  "Data": { "id": "TK-1001", "subject": "New issue", "status": "Open" }
}
```

`list` operations return `{ "items": [...] }` and, when the backend signals more pages via `Elements-Has-More` / `Elements-Next-Page-Token` headers, include a `Pagination` object with `HasMore` and `NextPageToken`.

Failed calls surface with `Failure`, the HTTP status as `Message`, and the server body as `Instructions`.

## Related

- [`uip is connections`](./uip-is-connections.md) — `--connection-id` values come from `connections list` / `connections create`.
- [`uip is connectors`](./uip-is-connectors.md) — discover the connector key first.
- [`uip is activities`](./uip-is-activities.md) — see the named operations a connector exposes.
- [`uip is triggers`](./uip-is-triggers.md) — event-driven counterparts to the data-plane verbs here.

## See also

- [Integration Service tool overview](./uip-is.md)
- [Global options](./global-options.md)
- [Exit codes](./exit-codes.md)
