> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.nvidia.com/nemo/guardrails/llms.txt.
> For full documentation content, see https://docs.nvidia.com/nemo/guardrails/llms-full.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.nvidia.com/nemo/guardrails/_mcp/server.

# nemoguardrails.library.clavata.request

Module for handling Clavata requests.

## Module Contents

### Classes

| Name                                                                             | Description                                                             |
| -------------------------------------------------------------------------------- | ----------------------------------------------------------------------- |
| [`AuthHeader`](#nemoguardrails-library-clavata-request-AuthHeader)               | Represents the authorization header structure for Clavata API requests. |
| [`ClavataClient`](#nemoguardrails-library-clavata-request-ClavataClient)         | A client for the Clavata API.                                           |
| [`ContentData`](#nemoguardrails-library-clavata-request-ContentData)             | Represents the content data structure for Clavata API requests.         |
| [`CreateJobResponse`](#nemoguardrails-library-clavata-request-CreateJobResponse) | Response from the Clavata Create Job API                                |
| [`Job`](#nemoguardrails-library-clavata-request-Job)                             | A job in Clavata                                                        |
| [`JobRequest`](#nemoguardrails-library-clavata-request-JobRequest)               | Represents the job request structure for Clavata API requests.          |
| [`Report`](#nemoguardrails-library-clavata-request-Report)                       | A report for a job result                                               |
| [`Result`](#nemoguardrails-library-clavata-request-Result)                       | A JobResult. One will be created for each content item submitted.       |
| [`SectionReport`](#nemoguardrails-library-clavata-request-SectionReport)         | A section report for a job result                                       |

### Data

[`JobStatus`](#nemoguardrails-library-clavata-request-JobStatus)

[`Outcome`](#nemoguardrails-library-clavata-request-Outcome)

[`ResponseModelT`](#nemoguardrails-library-clavata-request-ResponseModelT)

[`_CLAVATA_API_KEY`](#nemoguardrails-library-clavata-request-_CLAVATA_API_KEY)

[`log`](#nemoguardrails-library-clavata-request-log)

### API

```python
class nemoguardrails.library.clavata.request.AuthHeader(
    api_key: typing.Optional[str] = None
)
```

Dataclass

Represents the authorization header structure for Clavata API requests.

```python
nemoguardrails.library.clavata.request.AuthHeader.to_headers() -> typing.Dict[str, str]
```

Converts the auth token into a dictionary that can be used with aiohttp
to supply headers for the request.

```python
class nemoguardrails.library.clavata.request.ClavataClient(
    base_endpoint: str,
    api_key: typing.Optional[str] = None
)
```

A client for the Clavata API.

```python
nemoguardrails.library.clavata.request.ClavataClient._get_full_endpoint(
    endpoint: str
) -> str
```

```python
nemoguardrails.library.clavata.request.ClavataClient._get_headers() -> typing.Dict[str, str]
```

```python
nemoguardrails.library.clavata.request.ClavataClient._make_request(
    endpoint: str,
    payload: pydantic.BaseModel,
    response_model: typing.Type[nemoguardrails.library.clavata.request.ResponseModelT]
) -> nemoguardrails.library.clavata.request.ResponseModelT
```

async

```python
nemoguardrails.library.clavata.request.ClavataClient.create_job(
    text: str,
    policy_id: str
) -> nemoguardrails.library.clavata.request.Job
```

async

Create a job in Clavata.

**Parameters:**

The text to send to the Clavata API.

The policy ID to use for the request.

**Returns:** `Job`

The job that was created.

```python
class nemoguardrails.library.clavata.request.ContentData()
```

**Bases:** `BaseModel`

Represents the content data structure for Clavata API requests.

```python
class nemoguardrails.library.clavata.request.CreateJobResponse()
```

**Bases:** `BaseModel`

Response from the Clavata Create Job API

```python
class nemoguardrails.library.clavata.request.Job()
```

**Bases:** `BaseModel`

A job in Clavata

```python
class nemoguardrails.library.clavata.request.JobRequest()
```

**Bases:** `BaseModel`

Represents the job request structure for Clavata API requests.

```python
class nemoguardrails.library.clavata.request.Report()
```

**Bases:** `BaseModel`

A report for a job result

```python
class nemoguardrails.library.clavata.request.Result()
```

**Bases:** `BaseModel`

A JobResult. One will be created for each content item submitted.

```python
class nemoguardrails.library.clavata.request.SectionReport()
```

**Bases:** `BaseModel`

A section report for a job result

```python
nemoguardrails.library.clavata.request.JobStatus = Literal['JOB_STATUS_UNSPECIFIED', 'JOB_STATUS_PENDING', 'JOB_STATUS_RUNNING', 'J...
```

```python
nemoguardrails.library.clavata.request.Outcome = Literal['OUTCOME_UNSPECIFIED', 'OUTCOME_TRUE', 'OUTCOME_FALSE', 'OUTCOME_FAILED'...
```

```python
nemoguardrails.library.clavata.request.ResponseModelT = TypeVar('ResponseModelT', bound=BaseModel)
```

```python
nemoguardrails.library.clavata.request._CLAVATA_API_KEY = os.environ.get('CLAVATA_API_KEY')
```

```python
nemoguardrails.library.clavata.request.log = logging.getLogger(__name__)
```