---
title: HttpRequestParts
description: "What the `request` of an `http` definition returns: the part of the request that changes for each run."
---

# `HttpRequestParts`

Type, in `@jr2/orchestrator/src/http-effect.ts`. The signature of an export, or a type that it names, names this type. The [Authoring surface](../authoring-surface.md) page lists each export. This type is not an export of `@jr2/orchestrator`, so a workflow module does not import it by name.

```ts
type HttpRequestParts = {
  path?: readonly string[];
  json?: unknown;
  text?: string;
};
```

What the `request` of an `http` definition returns: the part of the request that changes for
each run. The definition fixes the rest.

**Fields**

- `path` (optional): `readonly string[]`

  Path segments that jr2 adds to the end of the url. jr2 encodes each segment. A segment that
  is `.`, `..` or empty gives the output `refused`, and nothing is sent.
- `json` (optional): `unknown`

  A JSON body. Do not give `text` too. When it starts, the Effect refuses both: ``http:
  `request` returned both json and text``.
- `text` (optional): `string`

  A text body.
