## MedplumClient.readReference() method

Reads a resource by `Reference`.

This is a convenience method for `readResource()` that accepts a `Reference` object.

**Signature:**

```typescript
readReference<T extends Resource>(reference: Reference<T>, options?: MedplumRequestOptions): ReadablePromise<WithId<T>>;
```

## Parameters

| Parameter | Type | Description |
| --- | --- | --- |
| reference | Reference<T> | The FHIR reference object. |
| options | [MedplumRequestOptions](/content/docs/sdk/core.medplumrequestoptions) | _(Optional)_ Optional fetch options. |

**Returns:**

[ReadablePromise](/content/docs/sdk/core.readablepromise) < [WithId](/content/docs/sdk/core.withid) <T>>

The resource if available.

## Example

Example:

```typescript
const serviceRequest = await medplum.readResource('ServiceRequest', '123');

const patient = await medplum.readReference(serviceRequest.subject);

console.log(patient);
```

See the FHIR "read" operation for full details: [https://www.hl7.org/fhir/http.html\#read](https://www.hl7.org/fhir/http.html%5C#read)
