> For clean Markdown content of this page, append .md to this URL. For the complete documentation index, see https://learning.postman.com/llms.txt.

# Read and write gRPC data using the Postman JSON interface

When sending or receiving a gRPC request or response, the messages being sent back and forth are transmitted in a format called [protobuf (protocol buffers)](https://developers.google.com/protocol-buffers). Unlike other data formats such as JSON or XML, which are text-based, protobuf uses a binary format. Binary formats aren't meant to be read by humans, so Postman provides a **JSON interface** that enables you to read and write data when using gRPC.

## JSON interface

| Protobuf type                                      | JSON type                                                | JSON example                 | Notes                                                                                                             |
| -------------------------------------------------- | -------------------------------------------------------- | ---------------------------- | ----------------------------------------------------------------------------------------------------------------- |
| `message`                                          | `object`                                                 | `{ "field": 123 }`           | `null` is an accepted value for all field types and treated as the default value of the corresponding field type. |
| `enum`                                             | `string or number`                                       | `"an_enum"`                  | Both enum names and integer values are accepted.                                                                  |
| `repeated V`                                       | array                                                    | `[v, ...]`                   |                                                                                                                   |
| `map&lt;K, V&gt;`                                  | object                                                   | `{ "k": v }`                 | All keys are converted to strings.                                                                                |
| `bool`                                             | `boolean`                                                | `true`, `false`              |                                                                                                                   |
| `string`                                           | string                                                   | `"Hello World!"`             |                                                                                                                   |
| `bytes`                                            | base64 string *or* array of bytes (numbers \[0, 255])    | `"SGVsbG8gZ1JQQw=="`         |                                                                                                                   |
| `int32`, `sint32`, `uint32`, `fixed32`, `sfixed32` | number                                                   | `1`, `-10`, `0`              |                                                                                                                   |
| `int64`, `sint64`, `uint64`, `fixed64`, `sfixed64` | number *or* string                                       | `"-1152921504606847254"`     | Decimal strings are used to increase compatibility with languages that lack a 64-bit integer.                     |
| `float`, `double`                                  | number *or* `"NaN"` *or* `"Infinity"` *or* `"-Infinity"` | `1.1`, `-10.0`, `0`, `"NaN"` |                                                                                                                   |

## Inspecting fields and types

When composing a message for a gRPC request, you input the data as JSON. Internally, that JSON represents protobuf (protocol buffers) data. For example, you can enter a base64 JSON string to represent `bytes` in protobuf data.

Postman uses the [service definition you select](/docs/use/send-requests/protocols/grpc/using-service-definition/) to provide rich type information as you compose your message. Hover over any JSON field or value to expose a tooltip that explains the underlying protobuf type. This can help you remember how to enter certain types of data, or to understand what's going on internally.

<img src="https://assets.postman.com/postman-docs/v11/inspecting-types-v11.jpg" alt="gRPC Type Inspection" />