@lap v0.3
# Machine-readable API spec. Each @endpoint block is one API call.
@api CRM API
@base https://unify.apideck.com
@version 10.24.14
@auth ApiKey Authorization in header | ApiKey x-apideck-app-id in header | ApiKey x-apideck-consumer-id in header
@common_fields {x-apideck-consumer-id: str, x-apideck-app-id: str, raw: bool=false, x-apideck-service-id: str}
@endpoints 50
@hint download_for_search
@toc crm(50)

@endpoint GET /crm/companies
@optional {cursor: str, limit: int=20, filter: map, sort: map, pass_through: map, fields: str}
@returns(200) {status_code: int, status: str, service: str, resource: str, operation: str, data: [map], meta: map{items_on_page: int, cursors: map{previous: str?, current: str?, next: str?}}, links: map{previous: str?, current: str, next: str?}, _raw: map?}
@errors {400, 401, 402, 404, 422}

@endpoint POST /crm/companies
@required {name: str}
@optional {id: str, interaction_count: int, owner_id: str, image: str, description: str, vat_number: str, currency: str(UNKNOWN_CURRENCY/AED/AFN/ALL/AMD/ANG/AOA/ARS/AUD/AWG/AZN/BAM/BBD/BDT/BGN/BHD/BIF/BMD/BND/BOB/BOV/BRL/BSD/BTN/BWP/BYR/BZD/CAD/CDF/CHE/CHF/CHW/CLF/CLP/CNY/COP/COU/CRC/CUC/CUP/CVE/CZK/DJF/DKK/DOP/DZD/EGP/ERN/ETB/EUR/FJD/FKP/GBP/GEL/GHS/GIP/GMD/GNF/GTQ/GYD/HKD/HNL/HRK/HTG/HUF/IDR/ILS/INR/IQD/IRR/ISK/JMD/JOD/JPY/KES/KGS/KHR/KMF/KPW/KRW/KWD/KYD/KZT/LAK/LBP/LKR/LRD/LSL/LTL/LVL/LYD/MAD/MDL/MGA/MKD/MMK/MNT/MOP/MRO/MUR/MVR/MWK/MXN/MXV/MYR/MZN/NAD/NGN/NIO/NOK/NPR/NZD/OMR/PAB/PEN/PGK/PHP/PKR/PLN/PYG/QAR/RON/RSD/RUB/RWF/SAR/SBD/SCR/SDG/SEK/SGD/SHP/SLL/SOS/SRD/SSP/STD/SVC/SYP/SZL/THB/TJS/TMT/TND/TOP/TRC/TRY/TTD/TWD/TZS/UAH/UGX/USD/USN/USS/UYI/UYU/UZS/VEF/VND/VUV/WST/XAF/XAG/XAU/XBA/XBB/XBC/XBD/XCD/XDR/XOF/XPD/XPF/XPT/XTS/XXX/YER/ZAR/ZMK/ZMW/BTC/ETH), status: str, fax: str, annual_revenue: str, number_of_employees: str, industry: str, ownership: str, sales_tax_number: str, payee_number: str, abn_or_tfn: str, abn_branch: str, acn: str, first_name: str, last_name: str, parent_id: str, bank_accounts: [map{bank_name: str, account_number: str, account_name: str, account_type: str, iban: str, bic: str, routing_number: str, bsb_number: str, branch_identifier: str, bank_code: str, currency: str, country: str}], websites: [map{id: str, url!: str, type: str}], addresses: [map{id: str, type: str, string: str, name: str, line1: str, line2: str, line3: str, line4: str, line5: str, street_number: str, city: str, state: str, postal_code: str, country: str, latitude: str, longitude: str, county: str, contact_name: str, salutation: str, phone_number: str, fax: str, email: str, website: str, notes: str, row_version: str}], social_links: [map{id: str, url!: str, type: str}], phone_numbers: [map{id: str, country_code: str, area_code: str, number!: str, extension: str, type: str}], emails: [map{id: str, email!: str(email), type: str}], row_type: map{id: str, name: str}, custom_fields: [map{id: str, name: str, description: str, value: any}], tags: [str], read_only: bool, last_activity_at: str(date-time), deleted: bool, salutation: str, birthday: str(date), custom_mappings: map, updated_by: str, created_by: str, updated_at: str(date-time), created_at: str(date-time), pass_through: [map{service_id!: str, operation_id: str, extend_object: map, extend_paths: [map]}]}
@returns(201) {status_code: int, status: str, service: str, resource: str, operation: str, data: map{id: str}, _raw: map?}
@errors {400, 401, 402, 404, 422}

@endpoint GET /crm/companies/{id}
@required {id: str}
@optional {fields: str}
@returns(200) {status_code: int, status: str, service: str, resource: str, operation: str, data: map{id: str, name: str?, interaction_count: int?, owner_id: str?, image: str?, description: str?, vat_number: str?, currency: str?, status: str?, fax: str?, annual_revenue: str?, number_of_employees: str?, industry: str?, ownership: str?, sales_tax_number: str?, payee_number: str?, abn_or_tfn: str?, abn_branch: str?, acn: str?, first_name: str?, last_name: str?, parent_id: str?, bank_accounts: [map], websites: [map], addresses: [map], social_links: [map], phone_numbers: [map], emails: [map], row_type: map{id: str?, name: str?}, custom_fields: [map], tags: [str]?, read_only: bool?, last_activity_at: str(date-time)?, deleted: bool, salutation: str?, birthday: str(date)?, custom_mappings: map?, updated_by: str?, created_by: str?, updated_at: str(date-time)?, created_at: str(date-time)?, pass_through: [map]}, _raw: map?}
@errors {400, 401, 402, 404, 422}

@endpoint PATCH /crm/companies/{id}
@required {id: str, name: str}
@optional {id: str, interaction_count: int, owner_id: str, image: str, description: str, vat_number: str, currency: str(UNKNOWN_CURRENCY/AED/AFN/ALL/AMD/ANG/AOA/ARS/AUD/AWG/AZN/BAM/BBD/BDT/BGN/BHD/BIF/BMD/BND/BOB/BOV/BRL/BSD/BTN/BWP/BYR/BZD/CAD/CDF/CHE/CHF/CHW/CLF/CLP/CNY/COP/COU/CRC/CUC/CUP/CVE/CZK/DJF/DKK/DOP/DZD/EGP/ERN/ETB/EUR/FJD/FKP/GBP/GEL/GHS/GIP/GMD/GNF/GTQ/GYD/HKD/HNL/HRK/HTG/HUF/IDR/ILS/INR/IQD/IRR/ISK/JMD/JOD/JPY/KES/KGS/KHR/KMF/KPW/KRW/KWD/KYD/KZT/LAK/LBP/LKR/LRD/LSL/LTL/LVL/LYD/MAD/MDL/MGA/MKD/MMK/MNT/MOP/MRO/MUR/MVR/MWK/MXN/MXV/MYR/MZN/NAD/NGN/NIO/NOK/NPR/NZD/OMR/PAB/PEN/PGK/PHP/PKR/PLN/PYG/QAR/RON/RSD/RUB/RWF/SAR/SBD/SCR/SDG/SEK/SGD/SHP/SLL/SOS/SRD/SSP/STD/SVC/SYP/SZL/THB/TJS/TMT/TND/TOP/TRC/TRY/TTD/TWD/TZS/UAH/UGX/USD/USN/USS/UYI/UYU/UZS/VEF/VND/VUV/WST/XAF/XAG/XAU/XBA/XBB/XBC/XBD/XCD/XDR/XOF/XPD/XPF/XPT/XTS/XXX/YER/ZAR/ZMK/ZMW/BTC/ETH), status: str, fax: str, annual_revenue: str, number_of_employees: str, industry: str, ownership: str, sales_tax_number: str, payee_number: str, abn_or_tfn: str, abn_branch: str, acn: str, first_name: str, last_name: str, parent_id: str, bank_accounts: [map{bank_name: str, account_number: str, account_name: str, account_type: str, iban: str, bic: str, routing_number: str, bsb_number: str, branch_identifier: str, bank_code: str, currency: str, country: str}], websites: [map{id: str, url!: str, type: str}], addresses: [map{id: str, type: str, string: str, name: str, line1: str, line2: str, line3: str, line4: str, line5: str, street_number: str, city: str, state: str, postal_code: str, country: str, latitude: str, longitude: str, county: str, contact_name: str, salutation: str, phone_number: str, fax: str, email: str, website: str, notes: str, row_version: str}], social_links: [map{id: str, url!: str, type: str}], phone_numbers: [map{id: str, country_code: str, area_code: str, number!: str, extension: str, type: str}], emails: [map{id: str, email!: str(email), type: str}], row_type: map{id: str, name: str}, custom_fields: [map{id: str, name: str, description: str, value: any}], tags: [str], read_only: bool, last_activity_at: str(date-time), deleted: bool, salutation: str, birthday: str(date), custom_mappings: map, updated_by: str, created_by: str, updated_at: str(date-time), created_at: str(date-time), pass_through: [map{service_id!: str, operation_id: str, extend_object: map, extend_paths: [map]}]}
@returns(200) {status_code: int, status: str, service: str, resource: str, operation: str, data: map{id: str}, _raw: map?}
@errors {400, 401, 402, 404, 422}

@endpoint DELETE /crm/companies/{id}
@required {id: str}
@returns(200) {status_code: int, status: str, service: str, resource: str, operation: str, data: map{id: str}, _raw: map?}
@errors {400, 401, 402, 404, 422}

@endpoint GET /crm/contacts
@optional {cursor: str, limit: int=20, filter: map, sort: map, pass_through: map, fields: str}
@returns(200) {status_code: int, status: str, service: str, resource: str, operation: str, data: [map], meta: map{items_on_page: int, cursors: map{previous: str?, current: str?, next: str?}}, links: map{previous: str?, current: str, next: str?}, _raw: map?}
@errors {400, 401, 402, 404, 422}

@endpoint POST /crm/contacts
@optional {id: str, name: str, owner_id: str, type: str(customer/supplier/employee/personal), company_id: str, company_name: str, lead_id: str, first_name: str, middle_name: str, last_name: str, prefix: str, suffix: str, title: str, department: str, language: str, gender: str(male/female/unisex), birthday: str, image: str, photo_url: str, lead_source: str, fax: str, description: str, current_balance: num, status: str, active: bool, websites: [map{id: str, url!: str, type: str}], addresses: [map{id: str, type: str, string: str, name: str, line1: str, line2: str, line3: str, line4: str, line5: str, street_number: str, city: str, state: str, postal_code: str, country: str, latitude: str, longitude: str, county: str, contact_name: str, salutation: str, phone_number: str, fax: str, email: str, website: str, notes: str, row_version: str}], social_links: [map{id: str, url!: str, type: str}], phone_numbers: [map{id: str, country_code: str, area_code: str, number!: str, extension: str, type: str}], emails: [map{id: str, email!: str(email), type: str}], email_domain: str, custom_fields: [map{id: str, name: str, description: str, value: any}], tags: [str], first_call_at: str(date-time), first_email_at: str(date-time), last_activity_at: str(date-time), custom_mappings: map, updated_at: str(date-time), created_at: str(date-time), opportunity_ids: [str], pass_through: [map{service_id!: str, operation_id: str, extend_object: map, extend_paths: [map]}]}
@returns(201) {status_code: int, status: str, service: str, resource: str, operation: str, data: map{id: str}, _raw: map?}
@errors {400, 401, 402, 404, 422}

@endpoint GET /crm/contacts/{id}
@required {id: str}
@optional {fields: str, filter: map}
@returns(200) {status_code: int, status: str, service: str, resource: str, operation: str, data: map{id: str, name: str?, owner_id: str?, type: str?, company_id: str?, company_name: str?, lead_id: str?, first_name: str?, middle_name: str?, last_name: str?, prefix: str?, suffix: str?, title: str?, department: str?, language: str?, gender: str?, birthday: str?, image: str?, photo_url: str?, lead_source: str?, fax: str?, description: str?, current_balance: num?, status: str?, active: bool?, websites: [map], addresses: [map], social_links: [map], phone_numbers: [map], emails: [map], email_domain: str?, custom_fields: [map]?, tags: [str]?, first_call_at: str(date-time)?, first_email_at: str(date-time)?, last_activity_at: str(date-time)?, custom_mappings: map?, updated_at: str(date-time)?, created_at: str(date-time)?, opportunity_ids: [str], pass_through: [map]}, _raw: map?}
@errors {400, 401, 402, 404, 422}

@endpoint PATCH /crm/contacts/{id}
@required {id: str}
@optional {id: str, name: str, owner_id: str, type: str(customer/supplier/employee/personal), company_id: str, company_name: str, lead_id: str, first_name: str, middle_name: str, last_name: str, prefix: str, suffix: str, title: str, department: str, language: str, gender: str(male/female/unisex), birthday: str, image: str, photo_url: str, lead_source: str, fax: str, description: str, current_balance: num, status: str, active: bool, websites: [map{id: str, url!: str, type: str}], addresses: [map{id: str, type: str, string: str, name: str, line1: str, line2: str, line3: str, line4: str, line5: str, street_number: str, city: str, state: str, postal_code: str, country: str, latitude: str, longitude: str, county: str, contact_name: str, salutation: str, phone_number: str, fax: str, email: str, website: str, notes: str, row_version: str}], social_links: [map{id: str, url!: str, type: str}], phone_numbers: [map{id: str, country_code: str, area_code: str, number!: str, extension: str, type: str}], emails: [map{id: str, email!: str(email), type: str}], email_domain: str, custom_fields: [map{id: str, name: str, description: str, value: any}], tags: [str], first_call_at: str(date-time), first_email_at: str(date-time), last_activity_at: str(date-time), custom_mappings: map, updated_at: str(date-time), created_at: str(date-time), opportunity_ids: [str], pass_through: [map{service_id!: str, operation_id: str, extend_object: map, extend_paths: [map]}]}
@returns(200) {status_code: int, status: str, service: str, resource: str, operation: str, data: map{id: str}, _raw: map?}
@errors {400, 401, 402, 404, 422}

@endpoint DELETE /crm/contacts/{id}
@required {id: str}
@returns(200) {status_code: int, status: str, service: str, resource: str, operation: str, data: map{id: str}, _raw: map?}
@errors {400, 401, 402, 404, 422}

@endpoint GET /crm/opportunities
@optional {cursor: str, limit: int=20, filter: map, sort: map, pass_through: map, fields: str}
@returns(200) {status_code: int, status: str, service: str, resource: str, operation: str, data: [map], _raw: map?, meta: map{items_on_page: int, cursors: map{previous: str?, current: str?, next: str?}}, links: map{previous: str?, current: str, next: str?}}
@errors {400, 401, 402, 404, 422}

@endpoint POST /crm/opportunities
@required {title: str}
@optional {id: str, primary_contact_id: str, description: str, type: str, monetary_amount: num, currency: str(UNKNOWN_CURRENCY/AED/AFN/ALL/AMD/ANG/AOA/ARS/AUD/AWG/AZN/BAM/BBD/BDT/BGN/BHD/BIF/BMD/BND/BOB/BOV/BRL/BSD/BTN/BWP/BYR/BZD/CAD/CDF/CHE/CHF/CHW/CLF/CLP/CNY/COP/COU/CRC/CUC/CUP/CVE/CZK/DJF/DKK/DOP/DZD/EGP/ERN/ETB/EUR/FJD/FKP/GBP/GEL/GHS/GIP/GMD/GNF/GTQ/GYD/HKD/HNL/HRK/HTG/HUF/IDR/ILS/INR/IQD/IRR/ISK/JMD/JOD/JPY/KES/KGS/KHR/KMF/KPW/KRW/KWD/KYD/KZT/LAK/LBP/LKR/LRD/LSL/LTL/LVL/LYD/MAD/MDL/MGA/MKD/MMK/MNT/MOP/MRO/MUR/MVR/MWK/MXN/MXV/MYR/MZN/NAD/NGN/NIO/NOK/NPR/NZD/OMR/PAB/PEN/PGK/PHP/PKR/PLN/PYG/QAR/RON/RSD/RUB/RWF/SAR/SBD/SCR/SDG/SEK/SGD/SHP/SLL/SOS/SRD/SSP/STD/SVC/SYP/SZL/THB/TJS/TMT/TND/TOP/TRC/TRY/TTD/TWD/TZS/UAH/UGX/USD/USN/USS/UYI/UYU/UZS/VEF/VND/VUV/WST/XAF/XAG/XAU/XBA/XBB/XBC/XBD/XCD/XDR/XOF/XPD/XPF/XPT/XTS/XXX/YER/ZAR/ZMK/ZMW/BTC/ETH), win_probability: num, expected_revenue: num, close_date: str(date), loss_reason_id: str, loss_reason: str, won_reason_id: str, won_reason: str, pipeline_id: str, pipeline_stage_id: str, source_id: str, lead_id: str, lead_source: str, contact_id: str, contact_ids: [str], company_id: str, company_name: str, owner_id: str, priority: str, status: str, status_id: str, tags: [str], interaction_count: num, custom_fields: [map{id: str, name: str, description: str, value: any}], stage_last_changed_at: str(date-time), last_activity_at: str, deleted: bool, date_stage_changed: str(date-time), date_last_contacted: str(date-time), date_lead_created: str(date-time), custom_mappings: map, updated_by: str, created_by: str, updated_at: str(date-time), created_at: str(date-time), pass_through: [map{service_id!: str, operation_id: str, extend_object: map, extend_paths: [map]}]}
@returns(201) {status_code: int, status: str, service: str, resource: str, operation: str, data: map{id: str}, _raw: map?}
@errors {400, 401, 402, 404, 422}

@endpoint GET /crm/opportunities/{id}
@required {id: str}
@optional {fields: str}
@returns(200) {status_code: int, status: str, service: str, resource: str, operation: str, data: map{id: str, title: str, primary_contact_id: str?, description: str?, type: str?, monetary_amount: num?, currency: str?, win_probability: num?, expected_revenue: num?, close_date: str(date)?, loss_reason_id: str?, loss_reason: str?, won_reason_id: str?, won_reason: str?, pipeline_id: str?, pipeline_stage_id: str?, source_id: str?, lead_id: str?, lead_source: str?, contact_id: str?, contact_ids: [str], company_id: str?, company_name: str?, owner_id: str?, priority: str?, status: str?, status_id: str?, tags: [str]?, interaction_count: num?, custom_fields: [map], stage_last_changed_at: str(date-time)?, last_activity_at: str?, deleted: bool, date_stage_changed: str(date-time)?, date_last_contacted: str(date-time)?, date_lead_created: str(date-time)?, custom_mappings: map?, updated_by: str?, created_by: str?, updated_at: str(date-time)?, created_at: str(date-time)?, pass_through: [map]}, _raw: map?}
@errors {400, 401, 402, 404, 422}

@endpoint PATCH /crm/opportunities/{id}
@required {id: str, title: str}
@optional {id: str, primary_contact_id: str, description: str, type: str, monetary_amount: num, currency: str(UNKNOWN_CURRENCY/AED/AFN/ALL/AMD/ANG/AOA/ARS/AUD/AWG/AZN/BAM/BBD/BDT/BGN/BHD/BIF/BMD/BND/BOB/BOV/BRL/BSD/BTN/BWP/BYR/BZD/CAD/CDF/CHE/CHF/CHW/CLF/CLP/CNY/COP/COU/CRC/CUC/CUP/CVE/CZK/DJF/DKK/DOP/DZD/EGP/ERN/ETB/EUR/FJD/FKP/GBP/GEL/GHS/GIP/GMD/GNF/GTQ/GYD/HKD/HNL/HRK/HTG/HUF/IDR/ILS/INR/IQD/IRR/ISK/JMD/JOD/JPY/KES/KGS/KHR/KMF/KPW/KRW/KWD/KYD/KZT/LAK/LBP/LKR/LRD/LSL/LTL/LVL/LYD/MAD/MDL/MGA/MKD/MMK/MNT/MOP/MRO/MUR/MVR/MWK/MXN/MXV/MYR/MZN/NAD/NGN/NIO/NOK/NPR/NZD/OMR/PAB/PEN/PGK/PHP/PKR/PLN/PYG/QAR/RON/RSD/RUB/RWF/SAR/SBD/SCR/SDG/SEK/SGD/SHP/SLL/SOS/SRD/SSP/STD/SVC/SYP/SZL/THB/TJS/TMT/TND/TOP/TRC/TRY/TTD/TWD/TZS/UAH/UGX/USD/USN/USS/UYI/UYU/UZS/VEF/VND/VUV/WST/XAF/XAG/XAU/XBA/XBB/XBC/XBD/XCD/XDR/XOF/XPD/XPF/XPT/XTS/XXX/YER/ZAR/ZMK/ZMW/BTC/ETH), win_probability: num, expected_revenue: num, close_date: str(date), loss_reason_id: str, loss_reason: str, won_reason_id: str, won_reason: str, pipeline_id: str, pipeline_stage_id: str, source_id: str, lead_id: str, lead_source: str, contact_id: str, contact_ids: [str], company_id: str, company_name: str, owner_id: str, priority: str, status: str, status_id: str, tags: [str], interaction_count: num, custom_fields: [map{id: str, name: str, description: str, value: any}], stage_last_changed_at: str(date-time), last_activity_at: str, deleted: bool, date_stage_changed: str(date-time), date_last_contacted: str(date-time), date_lead_created: str(date-time), custom_mappings: map, updated_by: str, created_by: str, updated_at: str(date-time), created_at: str(date-time), pass_through: [map{service_id!: str, operation_id: str, extend_object: map, extend_paths: [map]}]}
@returns(200) {status_code: int, status: str, service: str, resource: str, operation: str, data: map{id: str}, _raw: map?}
@errors {400, 401, 402, 404, 422}

@endpoint DELETE /crm/opportunities/{id}
@required {id: str}
@returns(200) {status_code: int, status: str, service: str, resource: str, operation: str, data: map{id: str}, _raw: map?}
@errors {400, 401, 402, 404, 422}

@endpoint GET /crm/leads
@optional {cursor: str, limit: int=20, filter: map, sort: map, pass_through: map, fields: str}
@returns(200) {status_code: int, status: str, service: str, resource: str, operation: str, data: [map], meta: map{items_on_page: int, cursors: map{previous: str?, current: str?, next: str?}}, links: map{previous: str?, current: str, next: str?}, _raw: map?}
@errors {400, 401, 402, 404, 422}

@endpoint POST /crm/leads
@required {name: str}
@optional {id: str, company_name: str, owner_id: str, owner_name: str, company_id: str, contact_id: str, lead_id: str, lead_source: str, first_name: str, last_name: str, description: str, prefix: str, title: str, language: str, status: str, monetary_amount: num, currency: str(UNKNOWN_CURRENCY/AED/AFN/ALL/AMD/ANG/AOA/ARS/AUD/AWG/AZN/BAM/BBD/BDT/BGN/BHD/BIF/BMD/BND/BOB/BOV/BRL/BSD/BTN/BWP/BYR/BZD/CAD/CDF/CHE/CHF/CHW/CLF/CLP/CNY/COP/COU/CRC/CUC/CUP/CVE/CZK/DJF/DKK/DOP/DZD/EGP/ERN/ETB/EUR/FJD/FKP/GBP/GEL/GHS/GIP/GMD/GNF/GTQ/GYD/HKD/HNL/HRK/HTG/HUF/IDR/ILS/INR/IQD/IRR/ISK/JMD/JOD/JPY/KES/KGS/KHR/KMF/KPW/KRW/KWD/KYD/KZT/LAK/LBP/LKR/LRD/LSL/LTL/LVL/LYD/MAD/MDL/MGA/MKD/MMK/MNT/MOP/MRO/MUR/MVR/MWK/MXN/MXV/MYR/MZN/NAD/NGN/NIO/NOK/NPR/NZD/OMR/PAB/PEN/PGK/PHP/PKR/PLN/PYG/QAR/RON/RSD/RUB/RWF/SAR/SBD/SCR/SDG/SEK/SGD/SHP/SLL/SOS/SRD/SSP/STD/SVC/SYP/SZL/THB/TJS/TMT/TND/TOP/TRC/TRY/TTD/TWD/TZS/UAH/UGX/USD/USN/USS/UYI/UYU/UZS/VEF/VND/VUV/WST/XAF/XAG/XAU/XBA/XBB/XBC/XBD/XCD/XDR/XOF/XPD/XPF/XPT/XTS/XXX/YER/ZAR/ZMK/ZMW/BTC/ETH), fax: str, websites: [map{id: str, url!: str, type: str}], addresses: [map{id: str, type: str, string: str, name: str, line1: str, line2: str, line3: str, line4: str, line5: str, street_number: str, city: str, state: str, postal_code: str, country: str, latitude: str, longitude: str, county: str, contact_name: str, salutation: str, phone_number: str, fax: str, email: str, website: str, notes: str, row_version: str}], social_links: [map{id: str, url!: str, type: str}], phone_numbers: [map{id: str, country_code: str, area_code: str, number!: str, extension: str, type: str}], emails: [map{id: str, email!: str(email), type: str}], custom_fields: [map{id: str, name: str, description: str, value: any}], tags: [str], custom_mappings: map, updated_at: str, created_at: str, pass_through: [map{service_id!: str, operation_id: str, extend_object: map, extend_paths: [map]}]}
@returns(201) {status_code: int, status: str, service: str, resource: str, operation: str, data: map{id: str}, _raw: map?}
@errors {400, 401, 402, 404, 422}

@endpoint GET /crm/leads/{id}
@required {id: str}
@optional {fields: str}
@returns(200) {status_code: int, status: str, service: str, resource: str, operation: str, data: map{id: str, name: str, company_name: str?, owner_id: str?, owner_name: str?, company_id: str?, contact_id: str?, lead_id: str?, lead_source: str?, first_name: str?, last_name: str?, description: str?, prefix: str?, title: str?, language: str?, status: str?, monetary_amount: num?, currency: str?, fax: str?, websites: [map], addresses: [map], social_links: [map], phone_numbers: [map], emails: [map], custom_fields: [map]?, tags: [str]?, custom_mappings: map?, updated_at: str?, created_at: str?, pass_through: [map]}, _raw: map?}
@errors {400, 401, 402, 404, 422}

@endpoint PATCH /crm/leads/{id}
@required {id: str, name: str}
@optional {id: str, company_name: str, owner_id: str, owner_name: str, company_id: str, contact_id: str, lead_id: str, lead_source: str, first_name: str, last_name: str, description: str, prefix: str, title: str, language: str, status: str, monetary_amount: num, currency: str(UNKNOWN_CURRENCY/AED/AFN/ALL/AMD/ANG/AOA/ARS/AUD/AWG/AZN/BAM/BBD/BDT/BGN/BHD/BIF/BMD/BND/BOB/BOV/BRL/BSD/BTN/BWP/BYR/BZD/CAD/CDF/CHE/CHF/CHW/CLF/CLP/CNY/COP/COU/CRC/CUC/CUP/CVE/CZK/DJF/DKK/DOP/DZD/EGP/ERN/ETB/EUR/FJD/FKP/GBP/GEL/GHS/GIP/GMD/GNF/GTQ/GYD/HKD/HNL/HRK/HTG/HUF/IDR/ILS/INR/IQD/IRR/ISK/JMD/JOD/JPY/KES/KGS/KHR/KMF/KPW/KRW/KWD/KYD/KZT/LAK/LBP/LKR/LRD/LSL/LTL/LVL/LYD/MAD/MDL/MGA/MKD/MMK/MNT/MOP/MRO/MUR/MVR/MWK/MXN/MXV/MYR/MZN/NAD/NGN/NIO/NOK/NPR/NZD/OMR/PAB/PEN/PGK/PHP/PKR/PLN/PYG/QAR/RON/RSD/RUB/RWF/SAR/SBD/SCR/SDG/SEK/SGD/SHP/SLL/SOS/SRD/SSP/STD/SVC/SYP/SZL/THB/TJS/TMT/TND/TOP/TRC/TRY/TTD/TWD/TZS/UAH/UGX/USD/USN/USS/UYI/UYU/UZS/VEF/VND/VUV/WST/XAF/XAG/XAU/XBA/XBB/XBC/XBD/XCD/XDR/XOF/XPD/XPF/XPT/XTS/XXX/YER/ZAR/ZMK/ZMW/BTC/ETH), fax: str, websites: [map{id: str, url!: str, type: str}], addresses: [map{id: str, type: str, string: str, name: str, line1: str, line2: str, line3: str, line4: str, line5: str, street_number: str, city: str, state: str, postal_code: str, country: str, latitude: str, longitude: str, county: str, contact_name: str, salutation: str, phone_number: str, fax: str, email: str, website: str, notes: str, row_version: str}], social_links: [map{id: str, url!: str, type: str}], phone_numbers: [map{id: str, country_code: str, area_code: str, number!: str, extension: str, type: str}], emails: [map{id: str, email!: str(email), type: str}], custom_fields: [map{id: str, name: str, description: str, value: any}], tags: [str], custom_mappings: map, updated_at: str, created_at: str, pass_through: [map{service_id!: str, operation_id: str, extend_object: map, extend_paths: [map]}]}
@returns(200) {status_code: int, status: str, service: str, resource: str, operation: str, data: map{id: str}, _raw: map?}
@errors {400, 401, 402, 404, 422}

@endpoint DELETE /crm/leads/{id}
@required {id: str}
@returns(200) {status_code: int, status: str, service: str, resource: str, operation: str, data: map{id: str}, _raw: map?}
@errors {400, 401, 402, 404, 422}

@endpoint GET /crm/pipelines
@optional {cursor: str, limit: int=20, pass_through: map, fields: str}
@returns(200) {status_code: int, status: str, service: str, resource: str, operation: str, data: [map], _raw: map?, meta: map{items_on_page: int, cursors: map{previous: str?, current: str?, next: str?}}, links: map{previous: str?, current: str, next: str?}}
@errors {400, 401, 402, 404, 422}

@endpoint POST /crm/pipelines
@required {name: str}
@optional {id: str, currency: str(UNKNOWN_CURRENCY/AED/AFN/ALL/AMD/ANG/AOA/ARS/AUD/AWG/AZN/BAM/BBD/BDT/BGN/BHD/BIF/BMD/BND/BOB/BOV/BRL/BSD/BTN/BWP/BYR/BZD/CAD/CDF/CHE/CHF/CHW/CLF/CLP/CNY/COP/COU/CRC/CUC/CUP/CVE/CZK/DJF/DKK/DOP/DZD/EGP/ERN/ETB/EUR/FJD/FKP/GBP/GEL/GHS/GIP/GMD/GNF/GTQ/GYD/HKD/HNL/HRK/HTG/HUF/IDR/ILS/INR/IQD/IRR/ISK/JMD/JOD/JPY/KES/KGS/KHR/KMF/KPW/KRW/KWD/KYD/KZT/LAK/LBP/LKR/LRD/LSL/LTL/LVL/LYD/MAD/MDL/MGA/MKD/MMK/MNT/MOP/MRO/MUR/MVR/MWK/MXN/MXV/MYR/MZN/NAD/NGN/NIO/NOK/NPR/NZD/OMR/PAB/PEN/PGK/PHP/PKR/PLN/PYG/QAR/RON/RSD/RUB/RWF/SAR/SBD/SCR/SDG/SEK/SGD/SHP/SLL/SOS/SRD/SSP/STD/SVC/SYP/SZL/THB/TJS/TMT/TND/TOP/TRC/TRY/TTD/TWD/TZS/UAH/UGX/USD/USN/USS/UYI/UYU/UZS/VEF/VND/VUV/WST/XAF/XAG/XAU/XBA/XBB/XBC/XBD/XCD/XDR/XOF/XPD/XPF/XPT/XTS/XXX/YER/ZAR/ZMK/ZMW/BTC/ETH), archived: bool, active: bool, display_order: int, win_probability_enabled: bool, stages: [map{id: str, name: str, value: str, win_probability: int, display_order: int, archived: bool, created_at: str(date-time), updated_at: str(date-time)}], updated_at: str(date-time), created_at: str(date-time), pass_through: [map{service_id!: str, operation_id: str, extend_object: map, extend_paths: [map]}]}
@returns(201) {status_code: int, status: str, service: str, resource: str, operation: str, data: map{id: str}, _raw: map?}
@errors {400, 401, 402, 404, 422}

@endpoint GET /crm/pipelines/{id}
@required {id: str}
@optional {fields: str}
@returns(200) {status_code: int, status: str, service: str, resource: str, operation: str, data: map{id: str, name: str, currency: str?, archived: bool, active: bool, display_order: int?, win_probability_enabled: bool, stages: [map], updated_at: str(date-time)?, created_at: str(date-time)?, pass_through: [map]}, _raw: map?}
@errors {400, 401, 402, 404, 422}

@endpoint PATCH /crm/pipelines/{id}
@required {id: str, name: str}
@optional {id: str, currency: str(UNKNOWN_CURRENCY/AED/AFN/ALL/AMD/ANG/AOA/ARS/AUD/AWG/AZN/BAM/BBD/BDT/BGN/BHD/BIF/BMD/BND/BOB/BOV/BRL/BSD/BTN/BWP/BYR/BZD/CAD/CDF/CHE/CHF/CHW/CLF/CLP/CNY/COP/COU/CRC/CUC/CUP/CVE/CZK/DJF/DKK/DOP/DZD/EGP/ERN/ETB/EUR/FJD/FKP/GBP/GEL/GHS/GIP/GMD/GNF/GTQ/GYD/HKD/HNL/HRK/HTG/HUF/IDR/ILS/INR/IQD/IRR/ISK/JMD/JOD/JPY/KES/KGS/KHR/KMF/KPW/KRW/KWD/KYD/KZT/LAK/LBP/LKR/LRD/LSL/LTL/LVL/LYD/MAD/MDL/MGA/MKD/MMK/MNT/MOP/MRO/MUR/MVR/MWK/MXN/MXV/MYR/MZN/NAD/NGN/NIO/NOK/NPR/NZD/OMR/PAB/PEN/PGK/PHP/PKR/PLN/PYG/QAR/RON/RSD/RUB/RWF/SAR/SBD/SCR/SDG/SEK/SGD/SHP/SLL/SOS/SRD/SSP/STD/SVC/SYP/SZL/THB/TJS/TMT/TND/TOP/TRC/TRY/TTD/TWD/TZS/UAH/UGX/USD/USN/USS/UYI/UYU/UZS/VEF/VND/VUV/WST/XAF/XAG/XAU/XBA/XBB/XBC/XBD/XCD/XDR/XOF/XPD/XPF/XPT/XTS/XXX/YER/ZAR/ZMK/ZMW/BTC/ETH), archived: bool, active: bool, display_order: int, win_probability_enabled: bool, stages: [map{id: str, name: str, value: str, win_probability: int, display_order: int, archived: bool, created_at: str(date-time), updated_at: str(date-time)}], updated_at: str(date-time), created_at: str(date-time), pass_through: [map{service_id!: str, operation_id: str, extend_object: map, extend_paths: [map]}]}
@returns(200) {status_code: int, status: str, service: str, resource: str, operation: str, data: map{id: str}, _raw: map?}
@errors {400, 401, 402, 404, 422}

@endpoint DELETE /crm/pipelines/{id}
@required {id: str}
@returns(200) {status_code: int, status: str, service: str, resource: str, operation: str, data: map{id: str}, _raw: map?}
@errors {400, 401, 402, 404, 422}

@endpoint GET /crm/notes
@optional {cursor: str, limit: int=20, pass_through: map, fields: str}
@returns(200) {status_code: int, status: str, service: str, resource: str, operation: str, data: [map], _raw: map?, meta: map{items_on_page: int, cursors: map{previous: str?, current: str?, next: str?}}, links: map{previous: str?, current: str, next: str?}}
@errors {400, 401, 402, 404, 422}

@endpoint POST /crm/notes
@optional {id: str, title: str, content: str, owner_id: str, contact_id: str, company_id: str, opportunity_id: str, activity_id: str, lead_id: str, active: bool, custom_mappings: map, updated_by: str, created_by: str, updated_at: str, created_at: str, pass_through: [map{service_id!: str, operation_id: str, extend_object: map, extend_paths: [map]}]}
@returns(201) {status_code: int, status: str, service: str, resource: str, operation: str, data: map{id: str}, _raw: map?}
@errors {400, 401, 402, 404, 422}

@endpoint GET /crm/notes/{id}
@required {id: str}
@optional {fields: str}
@returns(200) {status_code: int, status: str, service: str, resource: str, operation: str, data: map{id: str, title: str?, content: str?, owner_id: str?, contact_id: str?, company_id: str?, opportunity_id: str?, activity_id: str?, lead_id: str?, active: bool?, custom_mappings: map?, updated_by: str?, created_by: str?, updated_at: str?, created_at: str?, pass_through: [map]}, _raw: map?}
@errors {400, 401, 402, 404, 422}

@endpoint PATCH /crm/notes/{id}
@required {id: str}
@optional {id: str, title: str, content: str, owner_id: str, contact_id: str, company_id: str, opportunity_id: str, activity_id: str, lead_id: str, active: bool, custom_mappings: map, updated_by: str, created_by: str, updated_at: str, created_at: str, pass_through: [map{service_id!: str, operation_id: str, extend_object: map, extend_paths: [map]}]}
@returns(200) {status_code: int, status: str, service: str, resource: str, operation: str, data: map{id: str}, _raw: map?}
@errors {400, 401, 402, 404, 422}

@endpoint DELETE /crm/notes/{id}
@required {id: str}
@returns(200) {status_code: int, status: str, service: str, resource: str, operation: str, data: map{id: str}, _raw: map?}
@errors {400, 401, 402, 404, 422}

@endpoint GET /crm/users
@optional {cursor: str, limit: int=20, pass_through: map, fields: str}
@returns(200) {status_code: int, status: str, service: str, resource: str, operation: str, data: [map], _raw: map?, meta: map{items_on_page: int, cursors: map{previous: str?, current: str?, next: str?}}, links: map{previous: str?, current: str, next: str?}}
@errors {400, 401, 402, 404, 422}

@endpoint POST /crm/users
@required {emails: [map{id: str, email!: str(email), type: str}]}
@optional {id: str, parent_id: str, username: str, first_name: str, last_name: str, title: str, division: str, department: str, company_name: str, employee_number: str, description: str, image: str, language: str, status: str, password: str, addresses: [map{id: str, type: str, string: str, name: str, line1: str, line2: str, line3: str, line4: str, line5: str, street_number: str, city: str, state: str, postal_code: str, country: str, latitude: str, longitude: str, county: str, contact_name: str, salutation: str, phone_number: str, fax: str, email: str, website: str, notes: str, row_version: str}], phone_numbers: [map{id: str, country_code: str, area_code: str, number!: str, extension: str, type: str}], custom_mappings: map, updated_at: str, created_at: str, pass_through: [map{service_id!: str, operation_id: str, extend_object: map, extend_paths: [map]}]}
@returns(201) {status_code: int, status: str, service: str, resource: str, operation: str, data: map{id: str}, _raw: map?}
@errors {400, 401, 402, 404, 422}

@endpoint GET /crm/users/{id}
@required {id: str}
@optional {fields: str}
@returns(200) {status_code: int, status: str, service: str, resource: str, operation: str, data: map{id: str, parent_id: str?, username: str?, first_name: str?, last_name: str?, title: str?, division: str?, department: str?, company_name: str?, employee_number: str?, description: str?, image: str?, language: str?, status: str?, password: str?, addresses: [map], phone_numbers: [map], emails: [map], custom_mappings: map?, updated_at: str?, created_at: str?, pass_through: [map]}, _raw: map?}
@errors {400, 401, 402, 404, 422}

@endpoint PATCH /crm/users/{id}
@required {id: str, emails: [map{id: str, email!: str(email), type: str}]}
@optional {id: str, parent_id: str, username: str, first_name: str, last_name: str, title: str, division: str, department: str, company_name: str, employee_number: str, description: str, image: str, language: str, status: str, password: str, addresses: [map{id: str, type: str, string: str, name: str, line1: str, line2: str, line3: str, line4: str, line5: str, street_number: str, city: str, state: str, postal_code: str, country: str, latitude: str, longitude: str, county: str, contact_name: str, salutation: str, phone_number: str, fax: str, email: str, website: str, notes: str, row_version: str}], phone_numbers: [map{id: str, country_code: str, area_code: str, number!: str, extension: str, type: str}], custom_mappings: map, updated_at: str, created_at: str, pass_through: [map{service_id!: str, operation_id: str, extend_object: map, extend_paths: [map]}]}
@returns(200) {status_code: int, status: str, service: str, resource: str, operation: str, data: map{id: str}, _raw: map?}
@errors {400, 401, 402, 404, 422}

@endpoint DELETE /crm/users/{id}
@required {id: str}
@returns(200) {status_code: int, status: str, service: str, resource: str, operation: str, data: map{id: str}, _raw: map?}
@errors {400, 401, 402, 404, 422}

@endpoint GET /crm/activities
@optional {cursor: str, limit: int=20, filter: map, sort: map, pass_through: map, fields: str}
@returns(200) {status_code: int, status: str, service: str, resource: str, operation: str, data: [map], _raw: map?, meta: map{items_on_page: int, cursors: map{previous: str?, current: str?, next: str?}}, links: map{previous: str?, current: str, next: str?}}
@errors {400, 401, 402, 404, 422}

@endpoint POST /crm/activities
@required {type: str(call/meeting/email/note/task/deadline/send-letter/send-quote/other)}
@optional {id: str, downstream_id: str, activity_datetime: str, duration_seconds: int, user_id: str, account_id: str, contact_id: str, company_id: str, opportunity_id: str, lead_id: str, owner_id: str, campaign_id: str, case_id: str, asset_id: str, contract_id: str, product_id: str, solution_id: str, custom_object_id: str, title: str, description: str, note: str, location: str, location_address: map{id: str, type: str, string: str, name: str, line1: str, line2: str, line3: str, line4: str, line5: str, street_number: str, city: str, state: str, postal_code: str, country: str, latitude: str, longitude: str, county: str, contact_name: str, salutation: str, phone_number: str, fax: str, email: str, website: str, notes: str, row_version: str}, all_day_event: bool, private: bool, group_event: bool, event_sub_type: str, group_event_type: str, child: bool, archived: bool, deleted: bool, show_as: str(free/busy), done: bool, start_datetime: str, end_datetime: str, duration_minutes: int, activity_date: str, end_date: str, recurrent: bool, reminder_datetime: str, reminder_set: bool, video_conference_url: str, video_conference_id: str, custom_fields: [map{id: str, name: str, description: str, value: any}], attendees: [map{id: str, name: str, first_name: str, middle_name: str, last_name: str, prefix: str, suffix: str, email_address: str, is_organizer: bool, status: str, user_id: str, contact_id: str, updated_at: str(date-time), created_at: str(date-time)}], custom_mappings: map, updated_by: str, created_by: str, updated_at: str, created_at: str, pass_through: [map{service_id!: str, operation_id: str, extend_object: map, extend_paths: [map]}]}
@returns(201) {status_code: int, status: str, service: str, resource: str, operation: str, data: map{id: str}, _raw: map?}
@errors {400, 401, 402, 404, 422}

@endpoint GET /crm/activities/{id}
@required {id: str}
@optional {fields: str}
@returns(200) {status_code: int, status: str, service: str, resource: str, operation: str, data: map{id: str, downstream_id: str?, activity_datetime: str?, duration_seconds: int?, user_id: str?, account_id: str?, contact_id: str?, company_id: str?, opportunity_id: str?, lead_id: str?, owner_id: str?, campaign_id: str?, case_id: str?, asset_id: str?, contract_id: str?, product_id: str?, solution_id: str?, custom_object_id: str?, type: str?, title: str?, description: str?, note: str?, location: str?, location_address: map{id: str?, type: str?, string: str?, name: str?, line1: str?, line2: str?, line3: str?, line4: str?, line5: str?, street_number: str?, city: str?, state: str?, postal_code: str?, country: str?, latitude: str?, longitude: str?, county: str?, contact_name: str?, salutation: str?, phone_number: str?, fax: str?, email: str?, website: str?, notes: str?, row_version: str?}, all_day_event: bool?, private: bool?, group_event: bool?, event_sub_type: str?, group_event_type: str?, child: bool?, archived: bool?, deleted: bool?, show_as: str?, done: bool?, start_datetime: str?, end_datetime: str?, duration_minutes: int?, activity_date: str?, end_date: str?, recurrent: bool, reminder_datetime: str?, reminder_set: bool?, video_conference_url: str?, video_conference_id: str?, custom_fields: [map], attendees: [map], custom_mappings: map?, updated_by: str?, created_by: str?, updated_at: str?, created_at: str?, pass_through: [map]}, _raw: map?}
@errors {400, 401, 402, 404, 422}

@endpoint PATCH /crm/activities/{id}
@required {id: str, type: str(call/meeting/email/note/task/deadline/send-letter/send-quote/other)}
@optional {id: str, downstream_id: str, activity_datetime: str, duration_seconds: int, user_id: str, account_id: str, contact_id: str, company_id: str, opportunity_id: str, lead_id: str, owner_id: str, campaign_id: str, case_id: str, asset_id: str, contract_id: str, product_id: str, solution_id: str, custom_object_id: str, title: str, description: str, note: str, location: str, location_address: map{id: str, type: str, string: str, name: str, line1: str, line2: str, line3: str, line4: str, line5: str, street_number: str, city: str, state: str, postal_code: str, country: str, latitude: str, longitude: str, county: str, contact_name: str, salutation: str, phone_number: str, fax: str, email: str, website: str, notes: str, row_version: str}, all_day_event: bool, private: bool, group_event: bool, event_sub_type: str, group_event_type: str, child: bool, archived: bool, deleted: bool, show_as: str(free/busy), done: bool, start_datetime: str, end_datetime: str, duration_minutes: int, activity_date: str, end_date: str, recurrent: bool, reminder_datetime: str, reminder_set: bool, video_conference_url: str, video_conference_id: str, custom_fields: [map{id: str, name: str, description: str, value: any}], attendees: [map{id: str, name: str, first_name: str, middle_name: str, last_name: str, prefix: str, suffix: str, email_address: str, is_organizer: bool, status: str, user_id: str, contact_id: str, updated_at: str(date-time), created_at: str(date-time)}], custom_mappings: map, updated_by: str, created_by: str, updated_at: str, created_at: str, pass_through: [map{service_id!: str, operation_id: str, extend_object: map, extend_paths: [map]}]}
@returns(200) {status_code: int, status: str, service: str, resource: str, operation: str, data: map{id: str}, _raw: map?}
@errors {400, 401, 402, 404, 422}

@endpoint DELETE /crm/activities/{id}
@required {id: str}
@returns(200) {status_code: int, status: str, service: str, resource: str, operation: str, data: map{id: str}, _raw: map?}
@errors {400, 401, 402, 404, 422}

@endpoint GET /crm/custom-object-schemas
@optional {cursor: str, limit: int=20, pass_through: map}
@returns(200) {status_code: int, status: str, service: str, resource: str, operation: str, data: [map], _raw: map?, meta: map{items_on_page: int, cursors: map{previous: str?, current: str?, next: str?}}, links: map{previous: str?, current: str, next: str?}}
@errors {400, 401, 402, 404, 422}

@endpoint POST /crm/custom-object-schemas
@optional {id: str, name: str, description: str, fields: [map{id: str, name: str, description: str, type: str, required: bool, options: [map], default_value: str}], visible: bool, active: bool, created_by: str, updated_by: str, updated_at: str, created_at: str, pass_through: [map{service_id!: str, operation_id: str, extend_object: map, extend_paths: [map]}]}
@returns(201) {status_code: int, status: str, service: str, resource: str, operation: str, data: map{id: str, name: str?, description: str?, fields: [map], visible: bool?, active: bool?, created_by: str?, updated_by: str?, updated_at: str?, created_at: str?, pass_through: [map]}, _raw: map?}
@errors {400, 401, 402, 404, 422}

@endpoint GET /crm/custom-object-schemas/{id}
@required {id: str}
@returns(200) {status_code: int, status: str, service: str, resource: str, operation: str, data: map{id: str, name: str?, description: str?, fields: [map], visible: bool?, active: bool?, created_by: str?, updated_by: str?, updated_at: str?, created_at: str?, pass_through: [map]}, _raw: map?}
@errors {400, 401, 402, 404, 422}

@endpoint PATCH /crm/custom-object-schemas/{id}
@required {id: str}
@optional {id: str, name: str, description: str, fields: [map{id: str, name: str, description: str, type: str, required: bool, options: [map], default_value: str}], visible: bool, active: bool, created_by: str, updated_by: str, updated_at: str, created_at: str, pass_through: [map{service_id!: str, operation_id: str, extend_object: map, extend_paths: [map]}]}
@returns(200) {status_code: int, status: str, service: str, resource: str, operation: str, data: map{id: str}, _raw: map?}
@errors {400, 401, 402, 404, 422}

@endpoint DELETE /crm/custom-object-schemas/{id}
@required {id: str}
@returns(200) {status_code: int, status: str, service: str, resource: str, operation: str, data: map{id: str}, _raw: map?}
@errors {400, 401, 402, 404, 422}

@endpoint GET /crm/custom-objects/{object_id}
@required {object_id: str}
@optional {cursor: str, limit: int=20, pass_through: map, fields: str}
@returns(200) {status_code: int, status: str, service: str, resource: str, operation: str, data: [map], _raw: map?, meta: map{items_on_page: int, cursors: map{previous: str?, current: str?, next: str?}}, links: map{previous: str?, current: str, next: str?}}
@errors {400, 401, 402, 404, 422}

@endpoint POST /crm/custom-objects/{object_id}
@required {object_id: str}
@optional {id: str, owner_id: str, name: str, fields: [map{name: str, value: str}], updated_by: str, created_by: str, updated_at: str, created_at: str, pass_through: [map{service_id!: str, operation_id: str, extend_object: map, extend_paths: [map]}]}
@returns(201) {status_code: int, status: str, service: str, resource: str, operation: str, data: map{id: str}, _raw: map?}
@errors {400, 401, 402, 404, 422}

@endpoint GET /crm/custom-objects/{object_id}/{id}
@required {id: str, object_id: str}
@returns(200) {status_code: int, status: str, service: str, resource: str, operation: str, data: map{id: str, owner_id: str, name: str?, fields: [map], updated_by: str, created_by: str, updated_at: str?, created_at: str?, pass_through: [map]}, _raw: map?}
@errors {400, 401, 402, 404, 422}

@endpoint PATCH /crm/custom-objects/{object_id}/{id}
@required {id: str, object_id: str}
@optional {id: str, owner_id: str, name: str, fields: [map{name: str, value: str}], updated_by: str, created_by: str, updated_at: str, created_at: str, pass_through: [map{service_id!: str, operation_id: str, extend_object: map, extend_paths: [map]}]}
@returns(200) {status_code: int, status: str, service: str, resource: str, operation: str, data: map{id: str}, _raw: map?}
@errors {400, 401, 402, 404, 422}

@endpoint DELETE /crm/custom-objects/{object_id}/{id}
@required {id: str, object_id: str}
@returns(200) {status_code: int, status: str, service: str, resource: str, operation: str, data: map{id: str}, _raw: map?}
@errors {400, 401, 402, 404, 422}

@end
