# `api.contacts.get` > `GET /contacts/{id}` — ACPortal **Python** ```python api.contacts.get(contact_id: str) -> ContactSimple ``` **CLI** ```bash ab contacts get ``` GET /contacts/{id} ## Response Returns `ContactSimple`. | Field | Type | Required | Description | |---|---|---|---| | `id` | `str \| int \| None` | no | Unique identifier | | `firstName` | `Optional[str]` | no | First name | | `lastName` | `Optional[str]` | no | Last name | | `fullName` | `Optional[str]` | no | Full display name (from /contacts/user) | | `email` | `Optional[str]` | no | Email address | | `phone` | `Optional[str]` | no | Phone number | | `companyId` | `Optional[str]` | no | Associated company UUID | | `companyName` | `Optional[str]` | no | Associated company name | | `addressesList` | `Optional[list[dict]]` | no | Contact addresses list | | `assistant` | `Optional[str]` | no | Assistant name | | `birthDate` | `Optional[str]` | no | Birth date | | `bolNotes` | `Optional[str]` | no | BOL notes | | `careOf` | `Optional[str]` | no | Care-of / attention line | | `company` | `Optional[dict]` | no | Full company object | | `contactDisplayId` | `Optional[str]` | no | Display ID | | `contactTypeId` | `Optional[int]` | no | Contact type identifier | | `department` | `Optional[str]` | no | Department name | | `editable` | `Optional[bool]` | no | Whether the contact is editable | | `emailsList` | `Optional[list[dict]]` | no | Email addresses list | | `fax` | `Optional[str]` | no | Fax number | | `fullNameUpdateRequired` | `Optional[bool]` | no | Whether full name needs update | | `isActive` | `Optional[bool]` | no | Whether the contact is active | | `isBusiness` | `Optional[bool]` | no | Whether this is a business contact | | `isEmpty` | `Optional[bool]` | no | Whether the contact record is empty | | `isPayer` | `Optional[bool]` | no | Whether this contact is a payer | | `isPrefered` | `Optional[bool]` | no | Whether this contact is preferred | | `isPrimary` | `Optional[bool]` | no | Whether this is the primary contact | | `isPrivate` | `Optional[bool]` | no | Whether this contact is private | | `jobTitle` | `Optional[str]` | no | Job title | | `jobTitleId` | `Optional[int]` | no | Job title identifier | | `legacyGuid` | `Optional[str]` | no | Legacy system GUID | | `ownerFranchiseeId` | `Optional[str]` | no | Owner franchisee UUID | | `phonesList` | `Optional[list[dict]]` | no | Phone numbers list | | `primaryEmail` | `Optional[str]` | no | Primary email address | | `primaryPhone` | `Optional[str]` | no | Primary phone number | | `rootContactId` | `Optional[int]` | no | Root contact identifier | | `taxId` | `Optional[str]` | no | Tax ID | | `webSite` | `Optional[str]` | no | Website URL | --- [← Back to api.contacts](../contacts.md)