v1

latestOpenAPI 3.0.3RingCentral API License Agreement2026-08-064871,2921.5 MB
Internal Contacts

Get Company Directory Entries

Returns contact information on corporate users of federated accounts. Please note: 1. User, DigitalUser, VirtualUser and FaxUser types are returned as User type. 2. ApplicationExtension type is not returned. 3. Only extensions in Enabled, Disabled and NotActivated state are returned.

get/restapi/v1.0/account/{accountId}/directory/entries

Path parameters

accountIdstring required

Internal identifier of the RingCentral account (can be set to "~" to indicate that the account associated with current authorization session should be used)

Query parameters

showFederatedboolean

If true then contacts of all accounts in federation are returned. If false then only contacts of the current account are returned, and account section is eliminated in this case

type'User' | 'Department' | 'Announcement' | 'Voicemail' | 'SharedLinesGroup' | 'PagingOnly' | 'IvrMenu' | 'ParkLocation' | 'Limited' | 'External'

Type of an extension. Please note that legacy 'Department' extension type corresponds to 'Call Queue' extensions in modern RingCentral product terminology

typeGroup'User' | 'NonUser'

Type of extension group

pageinteger

Page number

integer
OR
'max' | 'all'

Records count to be returned per one page. It can be either integer or string with the specific keyword values:

  • all - all records are returned in one page
  • max - maximum count of records that can be returned in one page
siteIdstring

Internal identifier of the business site to which extensions belong

Headers

If-None-Matchstring

User in GET requests to skip retrieving the data if the provided value matches current ETag associated with this resource. The server checks the current resource ETag and returns the data only if mismatches the If-None-Match value, otherwise HTTP 304 Not Modified status is returned.

Response

Paged collection of all contacts information for a given account. Records can be empty if no data found.

Example response

{
  "paging": {
    "perPage": 50,
    "page": 5,
    "pageEnd": 5,
    "totalPages": 25,
    "totalElements": 25
  },
  "records": [
    {
      "id": "865706371004",
      "type": "User",
      "status": "Enabled",
      "account": {
        "companyName": "My lovely company",
        "federatedName": "Lovely Holding",
        "id": "400131426008",
        "mainNumber": {
          "formattedPhoneNumber": "+1 (205) 6812029",
          "phoneNumber": "+12056812029",
          "type": "VoiceFax",
          "label": "Boss",
          "usageType": "DirectNumber"
        }
      },
      "department": "External",
      "email": "john.doe@mycompany.com",
      "extensionNumber": "103",
      "firstName": "John",
      "lastName": "Doe",
      "name": "Conference room ?5",
      "jobTitle": "Sales manager",
      "phoneNumbers": [
        {
          "formattedPhoneNumber": "+1 (205) 6812029",
          "phoneNumber": "+12056812029",
          "type": "VoiceFax",
          "label": "Boss",
          "usageType": "DirectNumber"
        }
      ],
      "profileImage": {
        "etag": "tag"
      },
      "site": {
        "id": "872781820006",
        "name": "Sales site",
        "code": "1007"
      },
      "callQueues": [
        {
          "id": "873014540006",
          "name": "Sales CQ"
        }
      ],
      "customFields": [
        {
          "id": "1032854",
          "name": "Rank",
          "value": "5"
        }
      ],
      "groups": [
        {
          "id": "63723034",
          "name": "Leaders"
        }
      ],
      "costCenter": {
        "id": "83266549237542",
        "code": "Main",
        "name": "Cost Center A"
      },
      "integration": {
        "id": "9813",
        "typeId": "1",
        "type": "External",
        "displayName": "Integration X",
        "routingType": "Account",
        "outboundEdgeId": "1726"
      },
      "subType": "Unknown"
    }
  ]
}