# `Twilio.Messaging.V1.A2p.BrandRegistrationService`
[🔗](https://github.com/jeffhuen/twilio_elixir/blob/main/lib/twilio/messaging/v1/a2p/brand_registration_service.ex#L2)

A Messaging Service resource to add and fetch Brand Registrations.

Operations: `list`, `create`, `fetch`, `update`

# `create`

```elixir
@spec create(Twilio.Client.t(), map(), keyword()) ::
  {:ok, Twilio.Resources.Messaging.V1.A2p.BrandRegistration.t()}
  | {:ok, map(), map()}
  | :ok
  | {:error, Twilio.Error.t()}
```

Operation: `CreateBrandRegistrations` | Tags: MessagingV1BrandRegistration

## Required Parameters

| Parameter | Type | Description |
|-----------|------|-------------|
| `A2PProfileBundleSid` | string | A2P Messaging Profile Bundle Sid. |
| `CustomerProfileBundleSid` | string | Customer Profile Bundle Sid. |
## Optional Parameters

| Parameter | Type | Description |
|-----------|------|-------------|
# credo:disable-for-next-line Credo.Check.Readability.MaxLineLength
| `BrandType` | string | Type of brand being created. One of: "STANDARD", "SOLE_PROPRIETOR". SOLE_PROPRIETOR is for low volume, SOLE_PROPRIETOR use cases. STANDARD is for all other use cases. |
# credo:disable-for-next-line Credo.Check.Readability.MaxLineLength
| `Mock` | boolean | A boolean that specifies whether brand should be a mock or not. If true, brand will be registered as a mock brand. Defaults to false if no value is provided. |
# credo:disable-for-next-line Credo.Check.Readability.MaxLineLength
| `SkipAutomaticSecVet` | boolean | A flag to disable automatic secondary vetting for brands which it would otherwise be done. |

# `fetch`

```elixir
@spec fetch(Twilio.Client.t(), String.t(), keyword()) ::
  {:ok, Twilio.Resources.Messaging.V1.A2p.BrandRegistration.t()}
  | {:ok, map(), map()}
  | :ok
  | {:error, Twilio.Error.t()}
```

Operation: `FetchBrandRegistrations` | Tags: MessagingV1BrandRegistration

# `list`

```elixir
@spec list(Twilio.Client.t(), map(), keyword()) ::
  {:ok, Twilio.Page.t()}
  | {:ok, map(), map()}
  | :ok
  | {:error, Twilio.Error.t()}
```

Operation: `ListBrandRegistrations` | Tags: MessagingV1BrandRegistration

# `stream`

```elixir
@spec stream(Twilio.Client.t(), map(), keyword()) :: Enumerable.t()
```

Stream:  (lazy auto-pagination).

# `update`

```elixir
@spec update(Twilio.Client.t(), String.t(), map(), keyword()) ::
  {:ok, Twilio.Resources.Messaging.V1.A2p.BrandRegistration.t()}
  | {:ok, map(), map()}
  | :ok
  | {:error, Twilio.Error.t()}
```

Operation: `UpdateBrandRegistrations` | Tags: MessagingV1BrandRegistration

---

*Consult [api-reference.md](api-reference.md) for complete listing*
