API 참조
Contacts
기기 연락처를 읽고, 만들고, 업데이트합니다.
타입 정의
bash
type Contact {
id: ID!
prefix: String!
firstName: String!
middleName: String!
lastName: String!
suffix: String!
nickname: String!
photoId: String! # use GET /fs?id=<photoId>
phoneNumbers: [ContactPhoneNumber!]!
emails: [ContentItem!]!
addresses: [ContentItem!]!
events: [ContentItem!]! # birthdays, anniversaries
source: String! # account type e.g. "com.google"
starred: Boolean!
contactId: ID!
thumbnailId: String!
notes: String!
groups: [ContactGroup!]!
organization: Organization
websites: [ContentItem!]!
ims: [ContentItem!]!
ringtone: String!
updatedAt: String!
}
type ContactPhoneNumber {
value: String!
type: Int! # 1=home 2=mobile 3=work
label: String!
normalizedNumber: String!
}
type ContentItem {
value: String!
type: Int!
label: String!
}
type Organization {
company: String!
title: String!
}
type ContactGroup {
id: ID!
name: String!
contactCount: Int!
}
type ContactSource {
name: String!
accountType: String!
}
input ContactInput {
firstName: String
lastName: String
phoneNumbers: [ContactPhoneNumberInput]
emails: [ContentItemInput]
organization: OrganizationInput
}작업
query
contacts
연락처를 검색합니다. 모두 나열하려면 쿼리를 비워 두십시오.
bash
query GetContacts($offset: Int!, $limit: Int!, $query: String!) {
contacts(offset: $offset, limit: $limit, query: $query) {
id firstName lastName phoneNumbers { value type }
emails { value } source starred updatedAt
}
}query
contactCount
쿼리와 일치하는 연락처 수를 셉니다.
bash
query GetContactCount($query: String!) {
contactCount(query: $query)
}query
contactSources
사용 가능한 연락처 계정 소스를 나열합니다.
bash
query GetContactSources {
contactSources { name accountType }
}query
contactGroups
모든 연락처 그룹을 나열합니다.
bash
query GetContactGroups {
contactGroups { id name contactCount }
}mutation
createContact
새 연락처를 만듭니다.
bash
mutation CreateContact($input: ContactInput!) {
createContact(input: $input) { id firstName lastName phoneNumbers { value } }
}mutation
updateContact
기존 연락처를 업데이트합니다. 제공된 필드만 수정됩니다.
bash
mutation UpdateContact($id: ID!, $input: ContactInput!) {
updateContact(id: $id, input: $input) { id firstName lastName updatedAt }
}mutation
deleteContacts
쿼리와 일치하는 모든 연락처를 삭제합니다.
bash
mutation DeleteContacts($query: String!) {
deleteContacts(query: $query)
}mutation
createContactGroup
특정 계정에 연락처 그룹을 만듭니다.
bash
mutation CreateContactGroup($name: String!, $accountName: String!, $accountType: String!) {
createContactGroup(name: $name, accountName: $accountName, accountType: $accountType) {
id name contactCount
}
}mutation
updateContactGroup
연락처 그룹의 이름을 바꿉니다.
bash
mutation UpdateContactGroup($id: ID!, $name: String!) {
updateContactGroup(id: $id, name: $name) { id name }
}mutation
deleteContactGroup
연락처 그룹을 삭제합니다. 그룹의 연락처는 삭제되지 않고 그룹 해제만 됩니다.
bash
mutation DeleteContactGroup($id: ID!) {
deleteContactGroup(id: $id)
}