---
title: Auth
---

## Encrypted credentials

<ResponseField name="type" type="'encryptedCredentials'" required>
  The authentication type.
</ResponseField>

<ResponseField name="name" type="string" required>
  The name of the credentials. I.e. `Twitter account`, `OpenAI account`, `Stripe
  keys`, etc.
</ResponseField>

<ResponseField name="schema" type="z.ZodObject<any>" required>
  The schema of the data that needs to be stored. See [Options](./options) for
  more information.

Example:

```ts
option.object({
  apiKey: option.string.layout({
    isRequired: true,
    label: 'API key',
    withVariableButton: false,
  }),
})
```

</ResponseField>
