# `Medplum.Resources.PractitionerRole`
[🔗](https://github.com/CodeDuckers-LLC/medplum_elixir/blob/v0.3.0/lib/medplum/resources/practitioner_role.ex#L1)

Convenience helpers for FHIR `PractitionerRole` resource.

## Examples

    alias Medplum.Resources.PractitionerRole

    {:ok, roles} = PractitionerRole.search_by_practitioner(client, "Practitioner/practitioner-123")
    {:ok, by_org} = PractitionerRole.search_by_organization(client, "Organization/org-123")

# `create`

```elixir
@spec create(Medplum.Client.t(), map()) :: Medplum.result()
```

# `delete`

```elixir
@spec delete(Medplum.Client.t(), String.t()) :: Medplum.result()
```

# `get`

```elixir
@spec get(Medplum.Client.t(), String.t()) :: Medplum.result()
```

# `search`

```elixir
@spec search(Medplum.Client.t(), map()) :: Medplum.result()
```

# `search_by_location`

```elixir
@spec search_by_location(Medplum.Client.t(), String.t(), map()) :: Medplum.result()
```

# `search_by_organization`

```elixir
@spec search_by_organization(Medplum.Client.t(), String.t(), map()) ::
  Medplum.result()
```

# `search_by_practitioner`

```elixir
@spec search_by_practitioner(Medplum.Client.t(), String.t(), map()) ::
  Medplum.result()
```

# `update`

```elixir
@spec update(Medplum.Client.t(), String.t(), map()) :: Medplum.result()
```

# `upsert`

```elixir
@spec upsert(Medplum.Client.t(), map()) :: Medplum.result()
```

# `upsert_by_identifier`

```elixir
@spec upsert_by_identifier(Medplum.Client.t(), String.t(), String.t(), map()) ::
  Medplum.result()
```

---

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