> ## Documentation Index
> Fetch the complete documentation index at: https://docs.alumio.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Parse from binary data

> Parses binary data into the output format.

export const FormField = ({property, label, required = false, diType, uiPatterns, children}) => {
  const patterns = Array.isArray(uiPatterns) ? uiPatterns : uiPatterns ? [uiPatterns] : [];
  return <div style={{
    margin: '1.5rem 0'
  }}>
      <div style={{
    display: 'flex',
    alignItems: 'baseline',
    flexWrap: 'wrap',
    gap: '0.5rem',
    marginBottom: '0.25rem'
  }}>
        <strong>{label}</strong>
        <span style={{
    fontSize: '0.7rem',
    fontWeight: 600,
    textTransform: 'uppercase',
    letterSpacing: '0.04em',
    color: required ? '#6241f5' : '#6b7280'
  }}>
          {required ? 'Required' : 'Optional'}
        </span>
      </div>

      <div>{children}</div>

      {diType || patterns.length > 0 ? <p style={{
    fontSize: '0.85rem',
    color: '#6b7280',
    marginBottom: 0
  }}>
          {diType ? <>
              See the <a href={`/references/${diType}`}>{diType}</a> reference.{' '}
            </> : null}
          {patterns.length > 0 ? <>
              Accepts a <a href={`/documentation/placeholders-and-patterns/patterns#${patterns[0]}`}>pattern</a>.
            </> : null}
        </p> : null}
    </div>;
};

Wraps raw binary content, such as an image, a PDF, or any file that is not text, into structured data you can carry through your flow. The content is placed under a `data` field so it can travel alongside the rest of your data. Because some target systems and message formats cannot carry raw binary safely, you can optionally encode the content as Base64 text first.

This documentation describes: [Schema](/schemas/deserializer/binary)

## Fields

<FormField property="processor" label="Process data">
  Chooses how the content is handled. "None" keeps the content as-is under a `data` field. "Encode Base64" converts the content to Base64 text first and records that choice, adding an `encoding` field set to `base64` alongside the data. Choose Base64 when the receiving system or format needs the content as plain text rather than raw bytes.
</FormField>

## Sample data

| Field        | Value         |
| ------------ | ------------- |
| Process data | Encode Base64 |

Input:

```json theme={null}
"Hello world"
```

Output:

```json theme={null}
{
    "encoding": "base64",
    "data": "SGVsbG8gd29ybGQ="
}
```

With "None" selected instead, the same input returns `{ "data": "Hello world" }`.

```json Configuration theme={null}
{
  "prototype": "binary",
  "parameters": {
    "processor": "base64"
  }
}
```
