Skip to content

Latest commit

 

History

History
682 lines (541 loc) · 50.7 KB

File metadata and controls

682 lines (541 loc) · 50.7 KB

Crm

Overview

Available Operations

create_contact

Create Contact

Example Usage

require 'stackone_client'

Models = ::StackOne::Models
s = ::StackOne::StackOne.new(
  security: Models::Shared::Security.new(
    password: '',
    username: ''
  )
)
res = s.crm.create_contact(crm_create_contact_request_dto: Models::Shared::CrmCreateContactRequestDto.new(
  account_ids: [
    'account-123',
    'account-456',
  ],
  company_name: 'Apple Inc.',
  custom_fields: [
    Models::Shared::CustomFields.new(
      id: '8187e5da-dc77-475e-9949-af0f1fa4e4e3',
      name: 'Training Completion Status',
      remote_id: '8187e5da-dc77-475e-9949-af0f1fa4e4e3',
      remote_value_id: 'e3cb75bf-aa84-466e-a6c1-b8322b257a48',
      value: 'Completed',
      value_id: 'value_456'
    ),
  ],
  deal_ids: [
    'deal-001',
    'deal-002',
  ],
  emails: [
    'steve@apple.com',
  ],
  first_name: 'Steve',
  last_name: 'Wozniak',
  passthrough: {
    'other_known_names' => 'John Doe',
  },
  phone_numbers: [
    '123-456-7890',
  ]
), x_account_id: '<id>', prefer: 'heartbeat')

unless res.contact_result.nil?
  # handle response
end

Parameters

Parameter Type Required Description Example
crm_create_contact_request_dto Models::Shared::CrmCreateContactRequestDto ✔️ N/A
x_account_id ::String ✔️ The account identifier
prefer T.nilable(::String) Set to "heartbeat" to enable keep-alive newline heartbeats during long-running requests. Response includes Preference-Applied: heartbeat header when honored. (RFC 7240) heartbeat

Response

T.nilable(Models::Operations::CrmCreateContactResponse)

Errors

Error Type Status Code Content Type
Models::Errors::BadRequestResponse 400 application/json
Models::Errors::UnauthorizedResponse 401 application/json
Models::Errors::ForbiddenResponse 403 application/json
Models::Errors::NotFoundResponse 404 application/json
Models::Errors::RequestTimedOutResponse 408 application/json
Models::Errors::ConflictResponse 409 application/json
Models::Errors::PreconditionFailedResponse 412 application/json
Models::Errors::UnprocessableEntityResponse 422 application/json
Models::Errors::TooManyRequestsResponse 429 application/json
Models::Errors::InternalServerErrorResponse 500 application/json
Models::Errors::NotImplementedResponse 501 application/json
Models::Errors::BadGatewayResponse 502 application/json
Errors::APIError 4XX, 5XX */*

get_account

Get Account

Example Usage

require 'stackone_client'

Models = ::StackOne::Models
s = ::StackOne::StackOne.new(
  security: Models::Shared::Security.new(
    password: '',
    username: ''
  )
)

req = Models::Operations::CrmGetAccountRequest.new(
  prefer: 'heartbeat',
  fields_: 'id,remote_id,owner_id,remote_owner_id,name,description,industries,annual_revenue,website,addresses,phone_numbers,created_at,updated_at,unified_custom_fields',
  id: '<id>',
  x_account_id: '<id>'
)
res = s.crm.get_account(request: req)

unless res.account_result.nil?
  # handle response
end

Parameters

Parameter Type Required Description
request Models::Operations::CrmGetAccountRequest ✔️ The request object to use for the request.

Response

T.nilable(Models::Operations::CrmGetAccountResponse)

Errors

Error Type Status Code Content Type
Models::Errors::BadRequestResponse 400 application/json
Models::Errors::UnauthorizedResponse 401 application/json
Models::Errors::ForbiddenResponse 403 application/json
Models::Errors::NotFoundResponse 404 application/json
Models::Errors::RequestTimedOutResponse 408 application/json
Models::Errors::ConflictResponse 409 application/json
Models::Errors::PreconditionFailedResponse 412 application/json
Models::Errors::UnprocessableEntityResponse 422 application/json
Models::Errors::TooManyRequestsResponse 429 application/json
Models::Errors::InternalServerErrorResponse 500 application/json
Models::Errors::NotImplementedResponse 501 application/json
Models::Errors::BadGatewayResponse 502 application/json
Errors::APIError 4XX, 5XX */*

get_contact

Get Contact

Example Usage

require 'stackone_client'

Models = ::StackOne::Models
s = ::StackOne::StackOne.new(
  security: Models::Shared::Security.new(
    password: '',
    username: ''
  )
)

req = Models::Operations::CrmGetContactRequest.new(
  prefer: 'heartbeat',
  fields_: 'id,remote_id,first_name,last_name,company_name,emails,phone_numbers,deal_ids,remote_deal_ids,account_ids,remote_account_ids,custom_fields,created_at,updated_at,unified_custom_fields',
  id: '<id>',
  include: 'custom_fields',
  x_account_id: '<id>'
)
res = s.crm.get_contact(request: req)

unless res.contact_result.nil?
  # handle response
end

Parameters

Parameter Type Required Description
request Models::Operations::CrmGetContactRequest ✔️ The request object to use for the request.

Response

T.nilable(Models::Operations::CrmGetContactResponse)

Errors

Error Type Status Code Content Type
Models::Errors::BadRequestResponse 400 application/json
Models::Errors::UnauthorizedResponse 401 application/json
Models::Errors::ForbiddenResponse 403 application/json
Models::Errors::NotFoundResponse 404 application/json
Models::Errors::RequestTimedOutResponse 408 application/json
Models::Errors::ConflictResponse 409 application/json
Models::Errors::PreconditionFailedResponse 412 application/json
Models::Errors::UnprocessableEntityResponse 422 application/json
Models::Errors::TooManyRequestsResponse 429 application/json
Models::Errors::InternalServerErrorResponse 500 application/json
Models::Errors::NotImplementedResponse 501 application/json
Models::Errors::BadGatewayResponse 502 application/json
Errors::APIError 4XX, 5XX */*

get_contact_custom_field_definition

Get Contact Custom Field Definition

Example Usage

require 'stackone_client'

Models = ::StackOne::Models
s = ::StackOne::StackOne.new(
  security: Models::Shared::Security.new(
    password: '',
    username: ''
  )
)

req = Models::Operations::CrmGetContactCustomFieldDefinitionRequest.new(
  prefer: 'heartbeat',
  fields_: 'id,remote_id,name,description,type,options,unified_custom_fields',
  filter: Models::Operations::CrmGetContactCustomFieldDefinitionQueryParamFilter.new(
    updated_after: DateTime.iso8601('2020-01-01T00:00:00.000Z')
  ),
  id: '<id>',
  x_account_id: '<id>'
)
res = s.crm.get_contact_custom_field_definition(request: req)

unless res.custom_field_definition_result_api_model.nil?
  # handle response
end

Parameters

Parameter Type Required Description
request Models::Operations::CrmGetContactCustomFieldDefinitionRequest ✔️ The request object to use for the request.

Response

T.nilable(Models::Operations::CrmGetContactCustomFieldDefinitionResponse)

Errors

Error Type Status Code Content Type
Models::Errors::BadRequestResponse 400 application/json
Models::Errors::UnauthorizedResponse 401 application/json
Models::Errors::ForbiddenResponse 403 application/json
Models::Errors::NotFoundResponse 404 application/json
Models::Errors::RequestTimedOutResponse 408 application/json
Models::Errors::ConflictResponse 409 application/json
Models::Errors::PreconditionFailedResponse 412 application/json
Models::Errors::UnprocessableEntityResponse 422 application/json
Models::Errors::TooManyRequestsResponse 429 application/json
Models::Errors::InternalServerErrorResponse 500 application/json
Models::Errors::NotImplementedResponse 501 application/json
Models::Errors::BadGatewayResponse 502 application/json
Errors::APIError 4XX, 5XX */*

get_list

Get List

Example Usage

require 'stackone_client'

Models = ::StackOne::Models
s = ::StackOne::StackOne.new(
  security: Models::Shared::Security.new(
    password: '',
    username: ''
  )
)

req = Models::Operations::CrmGetListRequest.new(
  prefer: 'heartbeat',
  fields_: 'id,remote_id,name,created_at,updated_at,items,type,unified_custom_fields',
  id: '<id>',
  x_account_id: '<id>'
)
res = s.crm.get_list(request: req)

unless res.list_result.nil?
  # handle response
end

Parameters

Parameter Type Required Description
request Models::Operations::CrmGetListRequest ✔️ The request object to use for the request.

Response

T.nilable(Models::Operations::CrmGetListResponse)

Errors

Error Type Status Code Content Type
Models::Errors::BadRequestResponse 400 application/json
Models::Errors::UnauthorizedResponse 401 application/json
Models::Errors::ForbiddenResponse 403 application/json
Models::Errors::NotFoundResponse 404 application/json
Models::Errors::RequestTimedOutResponse 408 application/json
Models::Errors::ConflictResponse 409 application/json
Models::Errors::PreconditionFailedResponse 412 application/json
Models::Errors::UnprocessableEntityResponse 422 application/json
Models::Errors::TooManyRequestsResponse 429 application/json
Models::Errors::InternalServerErrorResponse 500 application/json
Models::Errors::NotImplementedResponse 501 application/json
Models::Errors::BadGatewayResponse 502 application/json
Errors::APIError 4XX, 5XX */*

list_accounts

List Accounts

Example Usage

require 'stackone_client'

Models = ::StackOne::Models
s = ::StackOne::StackOne.new(
  security: Models::Shared::Security.new(
    password: '',
    username: ''
  )
)

req = Models::Operations::CrmListAccountsRequest.new(
  prefer: 'heartbeat',
  fields_: 'id,remote_id,owner_id,remote_owner_id,name,description,industries,annual_revenue,website,addresses,phone_numbers,created_at,updated_at,unified_custom_fields',
  filter: Models::Operations::CrmListAccountsQueryParamFilter.new(
    updated_after: DateTime.iso8601('2020-01-01T00:00:00.000Z')
  ),
  x_account_id: '<id>'
)
res = s.crm.list_accounts(request: req)

unless res.accounts_paginated.nil?
  # handle response
end

Parameters

Parameter Type Required Description
request Models::Operations::CrmListAccountsRequest ✔️ The request object to use for the request.

Response

T.nilable(Models::Operations::CrmListAccountsResponse)

Errors

Error Type Status Code Content Type
Models::Errors::BadRequestResponse 400 application/json
Models::Errors::UnauthorizedResponse 401 application/json
Models::Errors::ForbiddenResponse 403 application/json
Models::Errors::NotFoundResponse 404 application/json
Models::Errors::RequestTimedOutResponse 408 application/json
Models::Errors::ConflictResponse 409 application/json
Models::Errors::PreconditionFailedResponse 412 application/json
Models::Errors::UnprocessableEntityResponse 422 application/json
Models::Errors::TooManyRequestsResponse 429 application/json
Models::Errors::InternalServerErrorResponse 500 application/json
Models::Errors::NotImplementedResponse 501 application/json
Models::Errors::BadGatewayResponse 502 application/json
Errors::APIError 4XX, 5XX */*

list_contact_custom_field_definitions

List Contact Custom Field Definitions

Example Usage

require 'stackone_client'

Models = ::StackOne::Models
s = ::StackOne::StackOne.new(
  security: Models::Shared::Security.new(
    password: '',
    username: ''
  )
)

req = Models::Operations::CrmListContactCustomFieldDefinitionsRequest.new(
  prefer: 'heartbeat',
  fields_: 'id,remote_id,name,description,type,options,unified_custom_fields',
  filter: Models::Operations::CrmListContactCustomFieldDefinitionsQueryParamFilter.new(
    updated_after: DateTime.iso8601('2020-01-01T00:00:00.000Z')
  ),
  x_account_id: '<id>'
)
res = s.crm.list_contact_custom_field_definitions(request: req)

unless res.custom_field_definitions_paginated.nil?
  # handle response
end

Parameters

Parameter Type Required Description
request Models::Operations::CrmListContactCustomFieldDefinitionsRequest ✔️ The request object to use for the request.

Response

T.nilable(Models::Operations::CrmListContactCustomFieldDefinitionsResponse)

Errors

Error Type Status Code Content Type
Models::Errors::BadRequestResponse 400 application/json
Models::Errors::UnauthorizedResponse 401 application/json
Models::Errors::ForbiddenResponse 403 application/json
Models::Errors::NotFoundResponse 404 application/json
Models::Errors::RequestTimedOutResponse 408 application/json
Models::Errors::ConflictResponse 409 application/json
Models::Errors::PreconditionFailedResponse 412 application/json
Models::Errors::UnprocessableEntityResponse 422 application/json
Models::Errors::TooManyRequestsResponse 429 application/json
Models::Errors::InternalServerErrorResponse 500 application/json
Models::Errors::NotImplementedResponse 501 application/json
Models::Errors::BadGatewayResponse 502 application/json
Errors::APIError 4XX, 5XX */*

list_contacts

List Contacts

Example Usage

require 'stackone_client'

Models = ::StackOne::Models
s = ::StackOne::StackOne.new(
  security: Models::Shared::Security.new(
    password: '',
    username: ''
  )
)

req = Models::Operations::CrmListContactsRequest.new(
  prefer: 'heartbeat',
  fields_: 'id,remote_id,first_name,last_name,company_name,emails,phone_numbers,deal_ids,remote_deal_ids,account_ids,remote_account_ids,custom_fields,created_at,updated_at,unified_custom_fields',
  filter: Models::Operations::CrmListContactsQueryParamFilter.new(
    updated_after: DateTime.iso8601('2020-01-01T00:00:00.000Z')
  ),
  include: 'custom_fields',
  x_account_id: '<id>'
)
res = s.crm.list_contacts(request: req)

unless res.contacts_paginated.nil?
  # handle response
end

Parameters

Parameter Type Required Description
request Models::Operations::CrmListContactsRequest ✔️ The request object to use for the request.

Response

T.nilable(Models::Operations::CrmListContactsResponse)

Errors

Error Type Status Code Content Type
Models::Errors::BadRequestResponse 400 application/json
Models::Errors::UnauthorizedResponse 401 application/json
Models::Errors::ForbiddenResponse 403 application/json
Models::Errors::NotFoundResponse 404 application/json
Models::Errors::RequestTimedOutResponse 408 application/json
Models::Errors::ConflictResponse 409 application/json
Models::Errors::PreconditionFailedResponse 412 application/json
Models::Errors::UnprocessableEntityResponse 422 application/json
Models::Errors::TooManyRequestsResponse 429 application/json
Models::Errors::InternalServerErrorResponse 500 application/json
Models::Errors::NotImplementedResponse 501 application/json
Models::Errors::BadGatewayResponse 502 application/json
Errors::APIError 4XX, 5XX */*

list_lists

Get all Lists

Example Usage

require 'stackone_client'

Models = ::StackOne::Models
s = ::StackOne::StackOne.new(
  security: Models::Shared::Security.new(
    password: '',
    username: ''
  )
)

req = Models::Operations::CrmListListsRequest.new(
  prefer: 'heartbeat',
  fields_: 'id,remote_id,name,created_at,updated_at,items,type,unified_custom_fields',
  filter: Models::Operations::CrmListListsQueryParamFilter.new(
    updated_after: DateTime.iso8601('2020-01-01T00:00:00.000Z')
  ),
  x_account_id: '<id>'
)
res = s.crm.list_lists(request: req)

unless res.lists_paginated.nil?
  # handle response
end

Parameters

Parameter Type Required Description
request Models::Operations::CrmListListsRequest ✔️ The request object to use for the request.

Response

T.nilable(Models::Operations::CrmListListsResponse)

Errors

Error Type Status Code Content Type
Models::Errors::BadRequestResponse 400 application/json
Models::Errors::UnauthorizedResponse 401 application/json
Models::Errors::ForbiddenResponse 403 application/json
Models::Errors::NotFoundResponse 404 application/json
Models::Errors::RequestTimedOutResponse 408 application/json
Models::Errors::ConflictResponse 409 application/json
Models::Errors::PreconditionFailedResponse 412 application/json
Models::Errors::UnprocessableEntityResponse 422 application/json
Models::Errors::TooManyRequestsResponse 429 application/json
Models::Errors::InternalServerErrorResponse 500 application/json
Models::Errors::NotImplementedResponse 501 application/json
Models::Errors::BadGatewayResponse 502 application/json
Errors::APIError 4XX, 5XX */*

update_contact

Update Contact (early access)

Example Usage

require 'stackone_client'

Models = ::StackOne::Models
s = ::StackOne::StackOne.new(
  security: Models::Shared::Security.new(
    password: '',
    username: ''
  )
)
res = s.crm.update_contact(crm_create_contact_request_dto: Models::Shared::CrmCreateContactRequestDto.new(
  account_ids: [
    'account-123',
    'account-456',
  ],
  company_name: 'Apple Inc.',
  custom_fields: [
    Models::Shared::CustomFields.new(
      id: '8187e5da-dc77-475e-9949-af0f1fa4e4e3',
      name: 'Training Completion Status',
      remote_id: '8187e5da-dc77-475e-9949-af0f1fa4e4e3',
      remote_value_id: 'e3cb75bf-aa84-466e-a6c1-b8322b257a48',
      value: 'Completed',
      value_id: 'value_456'
    ),
  ],
  deal_ids: [
    'deal-001',
    'deal-002',
  ],
  emails: [
    'steve@apple.com',
  ],
  first_name: 'Steve',
  last_name: 'Wozniak',
  passthrough: {
    'other_known_names' => 'John Doe',
  },
  phone_numbers: [
    '123-456-7890',
  ]
), id: '<id>', x_account_id: '<id>', prefer: 'heartbeat')

unless res.contact_result.nil?
  # handle response
end

Parameters

Parameter Type Required Description Example
crm_create_contact_request_dto Models::Shared::CrmCreateContactRequestDto ✔️ N/A
id ::String ✔️ N/A
x_account_id ::String ✔️ The account identifier
prefer T.nilable(::String) Set to "heartbeat" to enable keep-alive newline heartbeats during long-running requests. Response includes Preference-Applied: heartbeat header when honored. (RFC 7240) heartbeat

Response

T.nilable(Models::Operations::CrmUpdateContactResponse)

Errors

Error Type Status Code Content Type
Models::Errors::BadRequestResponse 400 application/json
Models::Errors::UnauthorizedResponse 401 application/json
Models::Errors::ForbiddenResponse 403 application/json
Models::Errors::NotFoundResponse 404 application/json
Models::Errors::RequestTimedOutResponse 408 application/json
Models::Errors::ConflictResponse 409 application/json
Models::Errors::PreconditionFailedResponse 412 application/json
Models::Errors::UnprocessableEntityResponse 422 application/json
Models::Errors::TooManyRequestsResponse 429 application/json
Models::Errors::InternalServerErrorResponse 500 application/json
Models::Errors::NotImplementedResponse 501 application/json
Models::Errors::BadGatewayResponse 502 application/json
Errors::APIError 4XX, 5XX */*