StackOne Contacts API
The Contacts API from StackOne — 2 operation(s) for contacts.
The Contacts API from StackOne — 2 operation(s) for contacts.
openapi: 3.0.0
info:
title: Marketing Accounts Contacts API
description: The documentation for the StackOne Unified API - MARKETING
contact: {}
version: 1.0.0
servers:
- url: https://api.stackone.com
tags:
- name: Contacts
paths:
/unified/crm/contacts/{id}:
get:
tags:
- Contacts
summary: Get Contact
operationId: crm_get_contact
parameters:
- name: id
in: path
required: true
schema:
type: string
- name: page
in: query
description: The page number of the results to fetch
schema:
type: string
- name: page_size
in: query
description: The number of results per page
schema:
type: string
default: '25'
- name: raw
in: query
description: Indicates that the raw request result is returned
schema:
type: boolean
default: false
- name: fields
in: query
description: The comma separated list of fields to return in the response (if empty, all fields are returned)
schema:
type: string
default: ''
example: id,first_name,last_name,company_name,emails,phone_numbers,deal_ids,account_ids,created_at,updated_at
- name: sync_token
in: query
description: The sync token to select the only updated results
schema:
type: string
- name: updated_after
in: query
description: Use a string with a date to only select results updated after that given date
schema:
type: string
example: '2020-01-01T00:00:00.000Z'
- name: proxy
in: query
description: Query parameters that can be used to pass through parameters to the underlying provider request by surrounding them with "proxy" key
style: deepObject
explode: true
schema:
type: object
additionalProperties: true
example:
proxy:
custom_filter_param: '123'
filter[eq][name]: Luke
- name: x-account-id
in: header
description: The account identifier
required: true
schema:
type: string
responses:
'400':
description: Invalid request.
'403':
description: Forbidden.
'412':
description: 'Precondition failed: linked account belongs to a disabled integration.'
'429':
description: Too many requests.
'500':
description: Server error while executing the request.
'501':
description: This functionality is not implemented.
'200':
description: The contact with the given identifier was retrieved.
content:
application/json:
schema:
$ref: '#/components/schemas/ContactResult'
security:
- basic: []
x-speakeasy-group: crm
x-speakeasy-name-override: get_contact
patch:
tags:
- Contacts
summary: Update Contact (early access)
operationId: crm_update_contact
parameters:
- name: id
in: path
required: true
schema:
type: string
- name: x-account-id
in: header
description: The account identifier
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/CrmCreateContactRequestDto'
required: true
responses:
'200':
description: The contact was successfully updated.
content:
application/json:
schema:
$ref: '#/components/schemas/ContactResult'
'400':
description: Invalid request.
'403':
description: Forbidden.
'412':
description: 'Precondition failed: linked account belongs to a disabled integration.'
'429':
description: Too many requests.
'500':
description: Server error while executing the request.
'501':
description: This functionality is not implemented.
security:
- basic: []
x-speakeasy-group: crm
x-speakeasy-name-override: update_contact
/unified/crm/contacts:
get:
tags:
- Contacts
summary: List Contacts
operationId: crm_list_contacts
parameters:
- name: page
in: query
description: The page number of the results to fetch
schema:
type: string
- name: page_size
in: query
description: The number of results per page
schema:
type: string
default: '25'
- name: raw
in: query
description: Indicates that the raw request result is returned
schema:
type: boolean
default: false
- name: fields
in: query
description: The comma separated list of fields to return in the response (if empty, all fields are returned)
schema:
type: string
default: ''
example: id,first_name,last_name,company_name,emails,phone_numbers,deal_ids,account_ids,created_at,updated_at
- name: sync_token
in: query
description: The sync token to select the only updated results
schema:
type: string
- name: updated_after
in: query
description: Use a string with a date to only select results updated after that given date
schema:
type: string
example: '2020-01-01T00:00:00.000Z'
- name: proxy
in: query
description: Query parameters that can be used to pass through parameters to the underlying provider request by surrounding them with "proxy" key
style: deepObject
explode: true
schema:
type: object
additionalProperties: true
example:
proxy:
custom_filter_param: '123'
filter[eq][name]: Luke
- name: x-account-id
in: header
description: The account identifier
required: true
schema:
type: string
responses:
'403':
description: Forbidden.
'429':
description: Too many requests.
'500':
description: Server error while executing the request.
'501':
description: This functionality is not implemented.
'200':
description: The list of contacts was retrieved.
content:
application/json:
schema:
$ref: '#/components/schemas/ContactsPaginated'
'400':
description: Invalid request.
security:
- basic: []
x-speakeasy-group: crm
x-speakeasy-name-override: list_contacts
post:
tags:
- Contacts
summary: Creates a new Contact
operationId: crm_create_contact
parameters:
- name: x-account-id
in: header
description: The account identifier
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/CrmCreateContactRequestDto'
required: true
responses:
'500':
description: Server error while executing the request.
'501':
description: This functionality is not implemented.
'200':
description: The contact was successfully created.
content:
application/json:
schema:
$ref: '#/components/schemas/ContactResult'
'400':
description: Invalid request.
'403':
description: Forbidden.
'412':
description: 'Precondition failed: linked account belongs to a disabled integration.'
'429':
description: Too many requests.
security:
- basic: []
x-speakeasy-group: crm
x-speakeasy-name-override: create_contact
components:
schemas:
ContactsPaginated:
type: object
properties:
raw:
type: string
next_page:
type: string
data:
type: array
items:
$ref: '#/components/schemas/Contact'
required:
- next_page
- data
CrmCreateContactRequestDto:
type: object
properties:
phone_numbers:
type: array
items:
type: string
description: List of contact phone numbers
example:
- 123-456-7890
deal_ids:
type: array
items:
type: string
description: List of associated deal IDs
example:
- deal-001
- deal-002
account_ids:
type: array
items:
type: string
description: List of associated account IDs
example:
- account-123
- account-456
first_name:
type: string
description: The contact first name
example: Steve
last_name:
type: string
description: The contact last name
example: Wozniak
company_name:
type: string
description: The contact company name
example: Apple Inc.
emails:
type: array
items:
type: string
description: List of contact email addresses
example:
- steve@apple.com
Contact:
type: object
properties:
phone_numbers:
type: array
items:
type: string
description: List of contact phone numbers
example:
- 123-456-7890
id:
type: string
description: The contact ID
example: 1234-5678
last_name:
type: string
description: The contact last name
example: Wozniak
created_at:
type: string
description: Timestamp when the contact was created
example: '2023-08-24T10:00:00Z'
first_name:
type: string
description: The contact first name
example: Steve
emails:
type: array
items:
type: string
description: List of contact email addresses
example:
- steve@apple.com
deal_ids:
type: array
items:
type: string
description: List of associated deal IDs
example:
- deal-001
- deal-002
account_ids:
type: array
items:
type: string
description: List of associated account IDs
example:
- account-123
- account-456
company_name:
type: string
description: The contact company name
example: Apple Inc.
updated_at:
type: string
description: Timestamp when the contact was last updated
example: '2023-08-25T15:30:00Z'
ContactResult:
type: object
properties:
raw:
type: string
data:
$ref: '#/components/schemas/Contact'
required:
- data
securitySchemes:
basic:
type: http
scheme: basic