Skip to main content
object

Requires read_customers access scope or read_companies access scope. Also: The shop must have access to B2B. Some operations may require additional plan capabilities.

A person who acts on behalf of a Company to make B2B purchases. Company contacts are associated with Customer accounts and can place orders on behalf of their company.

Each contact can be assigned to one or more CompanyLocation objects with specific roles that determine their permissions and access to catalogs, pricing, and payment terms configured for those locations.

•Company!
non-null

The company to which the contact belongs.

•DateTime!
non-null

The date and time (ISO 8601 format) at which the company contact was created at Shopify.

•Customer!
non-null

The customer associated to this contact.

•DraftOrderConnection!
non-null

The list of draft orders for the company contact.

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.

•String

A filter made up of terms, connectives, modifiers, and comparators.

nametypedescriptionacceptable_valuesdefault_valueexample_use
defaultstringFilter by a case-insensitive search of multiple fields
in a document.- query=Bob Norman
- query=title:green hoodie
created_attime
customer_idid
ididFilter by id range.- id:1234
- id:>=1234
- id:<=1234
sourcestring
statusstring
tagstring
updated_attime
You can apply one or more filters to a query. Learn more about [Shopify API
search syntax](https://shopify.dev/api/usage/search-syntax).
•Boolean
Default:false

Reverse the order of the underlying list.

•DraftOrderSortKeys
Default:ID

Sort the underlying list using a key. If your query is slow or returns an error, then try specifying a sort key that matches the field used in the search.


•ID!
non-null

A globally-unique ID.

•Boolean!
non-null

Whether the contact is the main contact of the company.

•String!
non-null

The lifetime duration of the company contact, since its creation date on Shopify. Examples: 1 year, 2 months, 3 days.

•String

The company contact's locale (language).

•OrderConnection!
non-null

The list of orders for the company contact.

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.

•Boolean
Default:false

Reverse the order of the underlying list.

•OrderSortKeys
Default:ID

Sort the underlying list using a key. If your query is slow or returns an error, then try specifying a sort key that matches the field used in the search.


•CompanyContactRoleAssignmentConnection!
non-null

The list of roles assigned to this company contact.

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.

•String

A filter made up of terms, connectives, modifiers, and comparators.

nametypedescriptionacceptable_valuesdefault_valueexample_use
defaultstringFilter by a case-insensitive search of multiple fields
in a document.- query=Bob Norman
- query=title:green hoodie
company_contact_idid
company_contact_role_idid
company_idid
company_location_idid
created_attime
ididFilter by id range.- id:1234
- id:>=1234
- id:<=1234
location_namestring
role_namestring
updated_attime
You can apply one or more filters to a query. Learn more about [Shopify API
search syntax](https://shopify.dev/api/usage/search-syntax).
•Boolean
Default:false

Reverse the order of the underlying list.

•CompanyContactRoleAssignmentSortKeys
Default:ID

Sort the underlying list by the given key.


•String

The company contact's job title.

•DateTime!
non-null

The date and time (ISO 8601 format) at which the company contact was last updated.


Was this section helpful?

•query

Returns a CompanyContact resource by ID.

Arguments

•ID!
required

The ID of the CompanyContact to return.



Was this section helpful?

•mutation

Adds an existing Customer as a contact to a Company. Companies are business entities that make purchases from the merchant's store. Use this mutation when you have a customer who needs to be associated with a B2B company to make purchases on behalf of that company.

The mutation returns the newly created CompanyContact that links the customer to the company. After assignment, the customer becomes a company contact who can place orders on behalf of the company with access to any catalogs, pricing, and payment terms configured for the company's locations.

Arguments

•ID!
required

The ID of the company to assign the contact to.

•ID!
required

The ID of the customer to assign as the contact.


•mutation

Creates a company contact and the associated customer.

Arguments

•ID!
required

The ID of the company that the company contact belongs to.

•CompanyContactInput!
required

The fields to use to create the company contact.


•mutation

Sends the company contact a welcome email.

Arguments

•ID!
required

The ID of the company contact to send welcome email to.

•EmailInput

The welcome email fields.


•mutation

Updates a company contact.

Arguments

•ID!
required

The ID of the company contact to be updated.

•CompanyContactInput!
required

The fields to use to update the company contact.



Was this section helpful?

•interface

Was this section helpful?