# Get Member
> Source: /api-reference/partner/members/get
> Retrieve a single member by external ID
> Endpoint: GET /partner/members/:externalId
> Status: PREVIEW
> Note: Preview. GET /v1/partner/members/{externalId} is live and authoritative for tier; the response is still gaining fields.

## Overview [#overview]

Retrieve a single member's full profile by their external ID. The member must be associated with the calling key's organization.

## Authentication [#authentication]

Requires a partner API key with the `partner:guests:read` scope, sent as `X-API-Key`.

## Path Parameters [#path-parameters]

<ParamField path="externalId" type="string" required>
  Member's external ID (ULID)
</ParamField>

## Query Parameters [#query-parameters]

<ParamField query="organizationId" type="string">
  External org ID for superadmin keys. Ignored for org-scoped keys.
</ParamField>

## Response [#response]

Returns the same member object shape as [List Members](/api-reference/partner/members/list#response) — a single record (not an array).

<RequestExample>

```bash cURL
curl "https://api-prd.cf.journey.com/v1/partner/members/01J5XYZ" \
  -H "X-API-Key: jny_xxxx"
```

```typescript TypeScript
const memberData = await fetch(
  'https://api-prd.cf.journey.com/v1/partner/members/01J5XYZ',
  { headers: { 'X-API-Key': apiKey } }
).then(r => r.json());

console.log(`${memberData.member.firstName} — ${memberData.loyalty.tierName}`);
console.log(`Points: ${memberData.wallet?.spendablePoints}`);
```

</RequestExample>

## Error Responses [#error-responses]

| Status | Description |
|--------|-------------|
| 404 | Member not found or not associated with your organization |
