# US 2014/0196060 A1 · Web service api for unified contact store

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2014/0196060 A1
- Document ID: US20140196060A1
- Status: Published application
- Kind: A1
- Application number: 14/203,984
- Filed: 2014-03-11
- Published: 2014-07-10
- Earliest claimed: 2011-11-04
- Assignees: Microsoft Corporation
- Applicants: Microsoft Corporation
- Inventors: Bogdan Gheorghe; Alfred Kenneth S. Gopez; Brendan C. Fields; Komal Kashiramka; Matthew C. Kuzior; Jucheng Xiao
- Web page: https://patentgrep.com/patent/US20140196060A1

## CPC

- G06F 9/541: {via adapters, e.g. between incompatible applications}
- G06Q 10/10: Office automation; Time management
- H04L 51/04: Real-time or near real-time messaging, e.g. instant messaging [IM]
- H04L 51/48: Message addressing, e.g. address format or anonymous messages, aliases
- H04L 51/56: Unified messaging, e.g. interactions between e-mail, instant messaging or converged IP messaging [CPM]
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G06Q: INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

An Application Programming Interface (API) provides functions for interacting with contact lists and contacts that are stored in a unified contact store by a primary contact service. For example, a client of a unified communications service may use the API to access contact information that is stored with a primary contact service (e.g. a messaging application/service). The contact information is maintained by the primary contact service. The API includes functions such as, but not limited to: adding a new IM contact to a group, adding a new IM group, removing an IM contact from a group, adding a distribution group to an IM list, getting an IM item list, and tagging an IM contact. The contacts may be obtained from the primary contact service and temporarily stored by the client (e.g. within a cache) of a different service.

## Claims

### Claim 1

A method comprising:
receiving a call at a primary contact service from a different service through an Application Programming Interface (API) that includes functions for interacting with contacts at the primary contact service;
determining a request parameter and a context parameter that is associated with the call that specifies authentication information that is used to authenticate a user and associate the user with the primary contact service;
performing an operation at the primary contact service as determined by the call that affects at least one contact that is stored with the primary service and used by the different service; and
providing information to the different service in response to the call.

### Claim 2 (depends on 1)

The method of claim 1, further comprising determining when to migrate contacts from the different service to the primary contact service.

### Claim 3 (depends on 1)

The method of claim 1, wherein the functions further comprise at least two of a function to add a new IM contact to a group, a function to add a new IM group, a function to remove an IM contact from a group, a function to add a distribution group to an IM list, a function to get an IM item list, and a function to tag an IM contact.

### Claim 4 (depends on 1)

The method of claim 1, further comprising parsing the call to determine the context parameter.

### Claim 5 (depends on 1)

The method of claim 1, further comprising storing a cached copy of a contact list at the different service.

### Claim 6 (depends on 1)

The method of claim 1, further comprising adding a new IM contact to a group using the call that includes the context parameter and the request parameter that specifies an IM contact to add to a group that is stored with the primary contact service.

### Claim 7 (depends on 1)

The method of claim 1, further comprising removing an IM contact from a group using the call that includes the context parameter and the request parameter that specifies an IM contact to remove from a group that is stored with the primary contact service.

### Claim 8 (depends on 1)

The method of claim 1, further comprising adding a distribution group to an IM list using the call that includes the context parameter and the request parameter that specifies a distribution group to add to an IM list that is stored with the primary contact service.

### Claim 9 (depends on 1)

The method of claim 1, further comprising getting an IM item list using the call that includes the context parameter and the request parameter that specifies an item list to get from an IM item list that is stored with the primary contact service.

### Claim 10 (depends on 1)

The method of claim 1, further comprising tagging an IM contact using the call that includes the context parameter and the request parameter that specifies an IM contact to tag that is stored with the primary contact service.

### Claim 11

A system configured to:
receive a call at a primary contact service from a different service through an API that includes functions for interacting with contacts at the primary contact service;
determine a request parameter and a context parameter that is associated with the call that specifies authentication information that is used to authenticate a user and associate the user with the primary contact service;
perform an operation at the primary contact service as determined by the call that affects at least one contact that is stored with the primary service and used by the different service; and
provide information to the different service in response to the call.

### Claim 12 (depends on 11)

The system of claim 11, further configured to determine when to migrate contacts from the different service to the primary contact service.

### Claim 13 (depends on 11)

The system of claim 11, further configured to use the functions comprising at least two of a function to add a new IM contact to a group, a function to add a new IM group, a function to remove an IM contact from a group, a function to add a distribution group to an IM list, a function to get an IM item list, and a function to tag an IM contact.

### Claim 14 (depends on 11)

The system of claim 11, further configured to add a new IM contact to a group using the call that specifies an IM contact to add to a group that is stored with the primary contact service.

### Claim 15 (depends on 11)

The system of claim 11, further configured to remove an IM contact from a group using the call that specifies an IM contact to remove from a group that is stored with the primary contact service.

### Claim 16 (depends on 11)

The system of claim 11, further configured to add a distribution group to an IM list using the call that specifies a distribution group to add to an IM list that is stored with the primary contact service.

### Claim 17 (depends on 11)

The system of claim 11, further configured to get an IM item list using the call that specifies an item list to get from an IM item list that is stored with the primary contact service.

### Claim 18 (depends on 11)

The system of claim 11, further configured to tag an IM contact using the call that specifies an IM contact to tag that stored with the primary contact service.

### Claim 19

A method comprising:
sending a call to a primary contact service from a different service via an API that includes functions for interacting with contacts at the primary contact service;
providing authentication information that is used to authenticate and associate a user with the primary contact service;
using the call to perform an operation that affects at least one contact that is stored with the primary service and used by the different service; and
receiving information from the primary contact service for the different service in response to the call.

### Claim 20 (depends on 19)

The method of claim 19, further comprising using the functions that include a plurality of: a function to add a new IM contact to a group, a function to add a new IM group, a function to remove an IM contact from a group, a function to add a distribution group to an IM list, a function to get an IM item list, and a function to tag an IM contact.
