---
title: entities.contactAccountAccountRoleRelation
description: Read contact account account role relation records with the contactAccountAccountRoleRelation repository, and change them with the contact account account role relation mutations. Same records as the REST ContactAccountAccountRoleRelations entity.
canonical: https://developers.coevera.com/reference/graphql/contact-account-account-role-relation/
section: graphql
verification: schema
generatedFrom: schema f155746 (2026-10-20)
publisher: Coevera
---

# entities.contactAccountAccountRoleRelation

Read contact account account role relation records with the contactAccountAccountRoleRelation repository, and change them with the contact account account role relation mutations. Same records as the REST ContactAccountAccountRoleRelations entity.

REST: [ContactAccountAccountRoleRelations](https://developers.coevera.com/reference/rest/contact-account-account-role-relations.md).

## Queries

- `getById(entityId: ID!): ContactAccountAccountRoleRelationEntity` Returns the record with the given id, or null when there is none. Deleted records are returned as well.
- `getByIds(entityIds: [ID!]!): [ContactAccountAccountRoleRelationEntity!]!` Returns the records with the given ids; ids without a record are left out. Deleted records are returned as well.
- `getAll(limit: Int, offset: Int, filter: ContactAccountAccountRoleRelationFilterInput, orderBy: [ContactAccountAccountRoleRelationOrderByInput!], includeDeleted: Boolean): [ContactAccountAccountRoleRelationEntity!]!` Returns the records that match the filter, paged with limit and offset.
- `getByCriteria(filter: ContactAccountAccountRoleRelationFilterInput, orderBy: [ContactAccountAccountRoleRelationOrderByInput!], includeDeleted: Boolean, before: String, after: String, first: Int, last: Int): ContactAccountAccountRoleRelationEntityConnection` Returns the records that match the filter as a cursor-paginated connection.
- `getChangedFieldsSinceRevision(id: UUID!, revision: Int!): [UUID!]!` Returns the ids of the fields of a record that changed after the given revision. Returns an empty list for entities without change tracking.

## Mutations

- `createContactAccountAccountRoleRelation(input: CreateContactAccountAccountRoleRelationInput!, validationLevel: [ValidationLevel!]): CreateContactAccountAccountRoleRelationPayload` Create one record.
- `updateContactAccountAccountRoleRelation(input: UpdateContactAccountAccountRoleRelationInput!, validationLevel: [ValidationLevel!], sessionIdToUpdate: String): UpdateContactAccountAccountRoleRelationPayload` Update fields.
- `bulkUpdateContactAccountAccountRoleRelation(input: [CreateOrUpdateContactAccountAccountRoleRelationInput!]!, deleteInput: [DeleteContactAccountAccountRoleRelationInput!], validationLevel: [ValidationLevel!], rollbackMethod: RollbackMethod, match: MatchingInput): BulkUpdateContactAccountAccountRoleRelationPayload` Create or update many; per-item results.
- `deleteContactAccountAccountRoleRelation(input: DeleteContactAccountAccountRoleRelationInput!): DeleteContactAccountAccountRoleRelationPayload` Soft-delete.

## Types

### ContactAccountAccountRoleRelationEntity (object)

Role assigned to a contact at an account, on the link between the contact and the account.

- `isDeleteProtected: Boolean!` True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.
- `id: ID!` Unique identifier of entity.
- `isDeleted: Boolean` Specifies if the entity is considered deleted.
- `modified: DateTime` Last modification time.
- `created: DateTime` Creation time.
- `accountRole: AccountRoleEntity` Role assigned to the contact at the account.
- `contactAccountRelation: ContactAccountRelationEntity` Contact-account link this role assignment belongs to.
- `accountRoleId: ID!` Id of the role assigned to the contact at the account.
- `contactAccountRelationId: ID!` Id of the contact-account link.
- `revision: Int` Revision when entity was lastly changed.
- `instancePermissions: [EntityPermsEnum!]! (1 args)` Permissions the current user has on this record, out of the requested ones.

### ContactAccountAccountRoleRelationEntityConnection (object)

Paginated list of ContactAccountAccountRoleRelation records.

- `pageInfo: PageInfo!` Pagination data for this connection.
- `edges: [ContactAccountAccountRoleRelationEntityEdge]!` Contains the nodes in this connection.
- `totalCount: Int` Total number of items in the connection.

### ContactAccountAccountRoleRelationEntityEdge (object)

A Relay edge containing a `ContactAccountAccountRoleRelationEntity` and its cursor.

- `node: ContactAccountAccountRoleRelationEntity` The item at the end of the edge
- `cursor: String!` A cursor for use in pagination

### ContactAccountAccountRoleRelationFilterInput (input)

Filter conditions for ContactAccountAccountRoleRelation records. Conditions on different fields are combined with AND; use OR, AND and NOT for other combinations.

- `OR: [ContactAccountAccountRoleRelationFilterInput!]` Matches records that meet at least one of the listed filters.
- `AND: [ContactAccountAccountRoleRelationFilterInput!]` Matches records that meet all of the listed filters.
- `NOT: ContactAccountAccountRoleRelationFilterInput` Matches records that do not meet this filter.
- `globalSearchQuery: String` Search term matched against the fields that the global search covers for this entity.
- `id: EntityFilterStringField` Unique identifier of entity.
- `isDeleted: Boolean` Specifies if the entity is considered deleted.
- `modified: EntityFilterDateTimeField` Last modification time.
- `created: EntityFilterDateTimeField` Creation time.
- `accountRoleId: EntityFilterStringField` Id of the role assigned to the contact at the account.
- `contactAccountRelationId: EntityFilterStringField` Id of the contact-account link.
- `revision: EntityFilterNumberField` Revision when entity was lastly changed.
- `accountRole: AccountRoleFilterInput` Role assigned to the contact at the account. Matches records where a related record meets these conditions.
- `contactAccountRelation: ContactAccountRelationFilterInput` Contact-account link this role assignment belongs to. Matches records where a related record meets these conditions.

### ContactAccountAccountRoleRelationOrderByInput (input)

Sorting of ContactAccountAccountRoleRelation records. Set exactly one field in each item; list several items to sort by more fields, in order of priority.

- `id: OrderByEnum` Unique identifier of entity.
- `isDeleted: OrderByEnum` Specifies if the entity is considered deleted.
- `modified: OrderByEnum` Last modification time.
- `created: OrderByEnum` Creation time.
- `accountRole: [AccountRoleOrderByNestedInput!]` Role assigned to the contact at the account. Sorts by fields of the related record, listed in order of priority.
- `contactAccountRelation: [ContactAccountRelationOrderByNestedInput!]` Contact-account link this role assignment belongs to. Sorts by fields of the related record, listed in order of priority.
- `accountRoleId: OrderByEnum` Id of the role assigned to the contact at the account.
- `contactAccountRelationId: OrderByEnum` Id of the contact-account link.
- `revision: OrderByEnum` Revision when entity was lastly changed.

### ContactAccountRelationOrderByNestedInput (input)

Sorting by a field of the related ContactAccountRelation record. Set exactly one field in each item.

- `id: OrderByEnum` Unique identifier of entity.
- `isDeleted: OrderByEnum` Specifies if the entity is considered deleted.
- `modified: OrderByEnum` Last modification time.
- `created: OrderByEnum` Creation time.
- `accountId: OrderByEnum` Id of the account the contact is linked to.
- `comment: OrderByEnum` Free-form note describing this contact-account link.
- `contactId: OrderByEnum` Id of the contact linked to the account.
- `isAssistant: OrderByEnum` True when the contact acts as an assistant on the account org chart. Assistant relations cannot have child relations.
- `isPrimary: OrderByEnum` True for the row that represents the primary related entity for this record. Setting isPrimary to true on a row automatically clears it on any other primary row.
- `isSibling: OrderByEnum` True when the contact is a sibling node on the account org chart (no parent/child reporting line).
- `position: OrderByEnum` Job title or position the contact holds at the account.
- `relationship: OrderByEnum` Org-chart relationship of the contact within the account hierarchy.
- `revision: OrderByEnum` Revision when entity was lastly changed.

### CreateContactAccountAccountRoleRelationInput (input)

Field values of a new ContactAccountAccountRoleRelation record.

- `clientMutationId: String` Optional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention).
- `modified: DateTime` Last modification time.
- `created: DateTime` Creation time.
- `contactAccountRelation: CreateContactAccountRelationInput!` Contact-account link this role assignment belongs to.
- `accountRoleId: ID!` Id of the role assigned to the contact at the account.
- `contactAccountRelationId: ID!` Id of the contact-account link.
- `revision: Int` Revision when entity was lastly changed.

### CreateOrUpdateContactAccountAccountRoleRelationInput (input)

Field values of a ContactAccountAccountRoleRelation record to create, or to update when its id is set.

- `clientMutationId: String` Optional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention).
- `id: ID` Unique identifier of entity.
- `modified: DateTime` Last modification time.
- `created: DateTime` Creation time.
- `contactAccountRelation: CreateContactAccountRelationInput` Contact-account link this role assignment belongs to.
- `accountRoleId: ID` Id of the role assigned to the contact at the account.
- `contactAccountRelationId: ID` Id of the contact-account link.
- `revision: Int` Revision when entity was lastly changed.

### DeleteContactAccountAccountRoleRelationInput (input)

Id of the ContactAccountAccountRoleRelation record to delete.

- `clientMutationId: String` Optional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention).
- `id: ID!` Unique identifier of entity.

### UpdateContactAccountAccountRoleRelationInput (input)

Id of a ContactAccountAccountRoleRelation record and the field values to change.

- `clientMutationId: String` Optional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention).
- `id: ID!` Unique identifier of entity.
- `modified: DateTime` Last modification time.
- `created: DateTime` Creation time.
- `contactAccountRelation: CreateContactAccountRelationInput` Contact-account link this role assignment belongs to.
- `accountRoleId: ID` Id of the role assigned to the contact at the account.
- `contactAccountRelationId: ID` Id of the contact-account link.
- `revision: Int` Revision when entity was lastly changed.

### BulkUpdateContactAccountAccountRoleRelationPayload (object)

Result of the bulkUpdateContactAccountAccountRoleRelation mutation.

- `result: BulkUpdateResults!` Ids of the created, updated and deleted records, and the items that failed.

### CreateContactAccountAccountRoleRelationPayload (object)

Result of the createContactAccountAccountRoleRelation mutation.

- `contactAccountAccountRoleRelation: ContactAccountAccountRoleRelationEntity` The created record.
- `clientMutationId: String` Optional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention).

### DeleteContactAccountAccountRoleRelationPayload (object)

Result of the deleteContactAccountAccountRoleRelation mutation.

- `contactAccountAccountRoleRelation: ContactAccountAccountRoleRelationEntity` The deleted record.
- `clientMutationId: String` Optional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention).

### UpdateContactAccountAccountRoleRelationPayload (object)

Result of the updateContactAccountAccountRoleRelation mutation.

- `contactAccountAccountRoleRelation: ContactAccountAccountRoleRelationEntity` The updated record.
- `clientMutationId: String` Optional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention).

Types several repositories share, such as `PageInfo` and the filter fields, are in the [types index](https://developers.coevera.com/reference/graphql/types.md). The [SDL](https://developers.coevera.com/graphql/schema.graphql) has the whole schema in one file.

## Example

```graphql
query FirstContactAccountAccountRoleRelations {
  entities {
    contactAccountAccountRoleRelation {
      getByCriteria(first: 3, orderBy: [{ modified: Desc }]) {
        totalCount
        edges { node { id modified } }
      }
    }
  }
}
```

```bash
curl 'https://{region}.api.coevera.com/api/v100/app/space/{space_id}/graphql/public' \
  --user "$COEVERA_API_KEY:$COEVERA_API_SECRET" \
  --header 'Content-Type: application/json' \
  --data '{"query":"query FirstContactAccountAccountRoleRelations { entities { contactAccountAccountRoleRelation { getByCriteria(first: 3, orderBy: [{ modified: Desc }]) { totalCount edges { node { id modified } } } } } }"}'
```
