Connector calls, semantic rules, and DuckDB memory keep long runs stable, and stream retry stops chats from stalling. Co-authored-by: Cursor <cursoragent@cursor.com>
5103 lines
152 KiB
JSON
5103 lines
152 KiB
JSON
[
|
|
{
|
|
"name": "create_product",
|
|
"title": "Create Product",
|
|
"description": "Create a product. Disabled in v1.",
|
|
"entity": "product",
|
|
"effect": "write",
|
|
"enabled": false,
|
|
"method": "POST",
|
|
"path": "/api/product/save",
|
|
"input_schema": {
|
|
"type": "object",
|
|
"description": "Create a product.",
|
|
"properties": {
|
|
"Product": {
|
|
"type": "object",
|
|
"description": "Product payload.",
|
|
"properties": {
|
|
"Title": {
|
|
"type": "string",
|
|
"description": "Product title."
|
|
},
|
|
"Code": {
|
|
"type": "string",
|
|
"description": "Product code. Official sample sends a numeric-looking string."
|
|
},
|
|
"Unit": {
|
|
"type": "string",
|
|
"description": "Unit name."
|
|
},
|
|
"ProductCategoryId": {
|
|
"type": "string",
|
|
"description": "Category id from get_product_categories."
|
|
},
|
|
"TitleForInvoice": {
|
|
"type": "string",
|
|
"description": "Title printed on invoices."
|
|
},
|
|
"Description": {
|
|
"type": "string",
|
|
"description": "Description."
|
|
},
|
|
"UnitPrice": {
|
|
"type": "number",
|
|
"description": "Unit price."
|
|
},
|
|
"IsActive": {
|
|
"type": "boolean",
|
|
"description": "Whether the product is active."
|
|
},
|
|
"Fields": {
|
|
"type": "object",
|
|
"description": "Product custom fields keyed by field Key.",
|
|
"additionalProperties": true
|
|
},
|
|
"ProductPrices": {
|
|
"type": "array",
|
|
"description": "Prices per currency.",
|
|
"items": {
|
|
"type": "object",
|
|
"description": "One currency price.",
|
|
"properties": {
|
|
"CurrencyId": {
|
|
"type": "string",
|
|
"description": "Currency id."
|
|
},
|
|
"Price": {
|
|
"type": "number",
|
|
"description": "Price in that currency."
|
|
},
|
|
"decimalLength": {
|
|
"type": "number",
|
|
"description": "Decimal length."
|
|
}
|
|
},
|
|
"required": [
|
|
"CurrencyId",
|
|
"Price"
|
|
]
|
|
}
|
|
},
|
|
"Variants": {
|
|
"type": "array",
|
|
"description": "Product variants.",
|
|
"items": {
|
|
"type": "object",
|
|
"description": "One product variant.",
|
|
"properties": {
|
|
"Title": {
|
|
"type": "string",
|
|
"description": "Variant title."
|
|
},
|
|
"TitleForInvoice": {
|
|
"type": "string",
|
|
"description": "Variant title on invoices."
|
|
},
|
|
"IsDeleted": {
|
|
"type": "boolean",
|
|
"description": "Whether the variant is deleted."
|
|
},
|
|
"IsDefault": {
|
|
"type": "boolean",
|
|
"description": "Whether this is the default variant."
|
|
},
|
|
"UnitPrice": {
|
|
"type": "number",
|
|
"description": "Variant unit price."
|
|
},
|
|
"VariantCode": {
|
|
"type": "string",
|
|
"description": "Variant code."
|
|
},
|
|
"Fields": {
|
|
"type": "object",
|
|
"description": "Variant custom fields.",
|
|
"additionalProperties": true
|
|
}
|
|
},
|
|
"required": [
|
|
"Title",
|
|
"TitleForInvoice",
|
|
"IsDefault",
|
|
"UnitPrice",
|
|
"VariantCode"
|
|
]
|
|
}
|
|
}
|
|
},
|
|
"required": [
|
|
"Title",
|
|
"Unit",
|
|
"ProductCategoryId"
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"Product"
|
|
]
|
|
},
|
|
"tags": [
|
|
"product"
|
|
],
|
|
"content_type": "application/json",
|
|
"response_root": "Response",
|
|
"timeout_seconds": 30
|
|
},
|
|
{
|
|
"name": "search_products",
|
|
"title": "Search Products",
|
|
"description": "Search products by title keywords with From/Limit pagination.",
|
|
"entity": "product",
|
|
"effect": "read",
|
|
"enabled": true,
|
|
"method": "POST",
|
|
"path": "/api/product/search",
|
|
"input_schema": {
|
|
"type": "object",
|
|
"description": "Search products.",
|
|
"properties": {
|
|
"Criteria": {
|
|
"type": "object",
|
|
"description": "Product search criteria.",
|
|
"properties": {
|
|
"Keywords": {
|
|
"type": "string",
|
|
"description": "Title text to match."
|
|
}
|
|
}
|
|
},
|
|
"From": {
|
|
"type": "integer",
|
|
"description": "Zero-based offset."
|
|
},
|
|
"Limit": {
|
|
"type": "integer",
|
|
"description": "Page size."
|
|
}
|
|
}
|
|
},
|
|
"pagination": {
|
|
"type": "offset_limit",
|
|
"offset_field": "From",
|
|
"limit_field": "Limit"
|
|
},
|
|
"tags": [
|
|
"product"
|
|
],
|
|
"content_type": "application/json",
|
|
"response_root": "Response",
|
|
"timeout_seconds": 30
|
|
},
|
|
{
|
|
"name": "get_product_categories",
|
|
"title": "Get Product Categories",
|
|
"description": "List product categories. Official docs: no request body.",
|
|
"entity": "product",
|
|
"effect": "read",
|
|
"enabled": true,
|
|
"method": "POST",
|
|
"path": "/api/product/categories",
|
|
"input_schema": {
|
|
"type": "object",
|
|
"description": "Official Didar docs: this request has no body.",
|
|
"additionalProperties": false
|
|
},
|
|
"tags": [
|
|
"product"
|
|
],
|
|
"content_type": "application/json",
|
|
"response_root": "Response",
|
|
"timeout_seconds": 30
|
|
},
|
|
{
|
|
"name": "get_products_by_code",
|
|
"title": "Get Products By Code",
|
|
"description": "Fetch products by exact product codes.",
|
|
"entity": "product",
|
|
"effect": "read",
|
|
"enabled": true,
|
|
"method": "POST",
|
|
"path": "/api/product/getproductbycodes",
|
|
"input_schema": {
|
|
"type": "object",
|
|
"description": "Products by code.",
|
|
"properties": {
|
|
"Code": {
|
|
"type": "array",
|
|
"description": "Product codes.",
|
|
"items": {
|
|
"type": "string",
|
|
"description": "Exact product code."
|
|
}
|
|
}
|
|
},
|
|
"required": [
|
|
"Code"
|
|
]
|
|
},
|
|
"tags": [
|
|
"product"
|
|
],
|
|
"content_type": "application/json",
|
|
"response_root": "Response",
|
|
"timeout_seconds": 30
|
|
},
|
|
{
|
|
"name": "get_activity_types",
|
|
"title": "Get Activity Types",
|
|
"description": "List activity types. Official docs: no request body.",
|
|
"entity": "activity",
|
|
"effect": "read",
|
|
"enabled": true,
|
|
"method": "POST",
|
|
"path": "/api/activity/GetActivityType",
|
|
"input_schema": {
|
|
"type": "object",
|
|
"description": "Official Didar docs: this request has no body.",
|
|
"additionalProperties": false
|
|
},
|
|
"tags": [
|
|
"activity"
|
|
],
|
|
"content_type": "application/json",
|
|
"response_root": "Response",
|
|
"timeout_seconds": 30
|
|
},
|
|
{
|
|
"name": "create_activity",
|
|
"title": "Create Activity",
|
|
"description": "Create an activity. Disabled in v1.",
|
|
"entity": "activity",
|
|
"effect": "write",
|
|
"enabled": false,
|
|
"method": "POST",
|
|
"path": "/api/activity/save",
|
|
"input_schema": {
|
|
"type": "object",
|
|
"description": "Create or update an activity.",
|
|
"properties": {
|
|
"Activity": {
|
|
"type": "object",
|
|
"description": "Activity payload.",
|
|
"properties": {
|
|
"ActivityTypeId": {
|
|
"type": "string",
|
|
"description": "Activity type id from get_activity_types."
|
|
},
|
|
"Title": {
|
|
"type": "string",
|
|
"description": "Activity title."
|
|
},
|
|
"OwnerId": {
|
|
"type": "string",
|
|
"description": "UserId of the owner."
|
|
},
|
|
"Note": {
|
|
"type": "string",
|
|
"description": "Activity note."
|
|
},
|
|
"IsDone": {
|
|
"type": "boolean",
|
|
"description": "Whether the activity is done."
|
|
},
|
|
"ResultNote": {
|
|
"type": "string",
|
|
"description": "Result note."
|
|
},
|
|
"IsDeleted": {
|
|
"type": "boolean",
|
|
"description": "Whether the activity is deleted."
|
|
},
|
|
"IsPinned": {
|
|
"type": "boolean",
|
|
"description": "Whether the activity is pinned."
|
|
},
|
|
"DueDate": {
|
|
"type": "string",
|
|
"description": "Due date/time."
|
|
},
|
|
"Duration": {
|
|
"type": "number",
|
|
"description": "Duration."
|
|
},
|
|
"DoneDate": {
|
|
"type": "string",
|
|
"description": "Done date/time."
|
|
},
|
|
"DealId": {
|
|
"type": "string",
|
|
"description": "Related deal id."
|
|
},
|
|
"CaseId": {
|
|
"type": "string",
|
|
"description": "Related case id."
|
|
},
|
|
"ContactIds": {
|
|
"type": "array",
|
|
"description": "Related contact ids.",
|
|
"items": {
|
|
"type": "string",
|
|
"description": "Contact id."
|
|
}
|
|
},
|
|
"CreatorId": {
|
|
"type": "string",
|
|
"description": "UserId of the creator."
|
|
},
|
|
"RecurrenceType": {
|
|
"type": "string",
|
|
"description": "Recurrence type. Official sample uses OneTime."
|
|
},
|
|
"RecurrenceData": {
|
|
"type": "number",
|
|
"description": "Recurrence data."
|
|
},
|
|
"RecurrenceEndDate": {
|
|
"type": "string",
|
|
"description": "Recurrence end date/time."
|
|
},
|
|
"Tags": {
|
|
"type": "array",
|
|
"description": "Tags.",
|
|
"items": {
|
|
"type": "object",
|
|
"description": "One tag reference.",
|
|
"properties": {
|
|
"TagId": {
|
|
"type": "string",
|
|
"description": "Tag id from get_tags."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"required": [
|
|
"ActivityTypeId",
|
|
"Title"
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"Activity"
|
|
]
|
|
},
|
|
"tags": [
|
|
"activity"
|
|
],
|
|
"content_type": "application/json",
|
|
"response_root": "Response",
|
|
"timeout_seconds": 30
|
|
},
|
|
{
|
|
"name": "update_activity",
|
|
"title": "Update Activity",
|
|
"description": "Update an activity. Disabled in v1.",
|
|
"entity": "activity",
|
|
"effect": "write",
|
|
"enabled": false,
|
|
"method": "POST",
|
|
"path": "/api/activity/save",
|
|
"input_schema": {
|
|
"type": "object",
|
|
"description": "Create or update an activity.",
|
|
"properties": {
|
|
"Activity": {
|
|
"type": "object",
|
|
"description": "Activity payload.",
|
|
"properties": {
|
|
"Id": {
|
|
"type": "string",
|
|
"description": "Activity id."
|
|
},
|
|
"ActivityTypeId": {
|
|
"type": "string",
|
|
"description": "Activity type id from get_activity_types."
|
|
},
|
|
"Title": {
|
|
"type": "string",
|
|
"description": "Activity title."
|
|
},
|
|
"OwnerId": {
|
|
"type": "string",
|
|
"description": "UserId of the owner."
|
|
},
|
|
"Note": {
|
|
"type": "string",
|
|
"description": "Activity note."
|
|
},
|
|
"IsDone": {
|
|
"type": "boolean",
|
|
"description": "Whether the activity is done."
|
|
},
|
|
"ResultNote": {
|
|
"type": "string",
|
|
"description": "Result note."
|
|
},
|
|
"IsDeleted": {
|
|
"type": "boolean",
|
|
"description": "Whether the activity is deleted."
|
|
},
|
|
"IsPinned": {
|
|
"type": "boolean",
|
|
"description": "Whether the activity is pinned."
|
|
},
|
|
"DueDate": {
|
|
"type": "string",
|
|
"description": "Due date/time."
|
|
},
|
|
"Duration": {
|
|
"type": "number",
|
|
"description": "Duration."
|
|
},
|
|
"DoneDate": {
|
|
"type": "string",
|
|
"description": "Done date/time."
|
|
},
|
|
"DealId": {
|
|
"type": "string",
|
|
"description": "Related deal id."
|
|
},
|
|
"CaseId": {
|
|
"type": "string",
|
|
"description": "Related case id."
|
|
},
|
|
"ContactIds": {
|
|
"type": "array",
|
|
"description": "Related contact ids.",
|
|
"items": {
|
|
"type": "string",
|
|
"description": "Contact id."
|
|
}
|
|
},
|
|
"CreatorId": {
|
|
"type": "string",
|
|
"description": "UserId of the creator."
|
|
},
|
|
"RecurrenceType": {
|
|
"type": "string",
|
|
"description": "Recurrence type. Official sample uses OneTime."
|
|
},
|
|
"RecurrenceData": {
|
|
"type": "number",
|
|
"description": "Recurrence data."
|
|
},
|
|
"RecurrenceEndDate": {
|
|
"type": "string",
|
|
"description": "Recurrence end date/time."
|
|
},
|
|
"Tags": {
|
|
"type": "array",
|
|
"description": "Tags.",
|
|
"items": {
|
|
"type": "object",
|
|
"description": "One tag reference.",
|
|
"properties": {
|
|
"TagId": {
|
|
"type": "string",
|
|
"description": "Tag id from get_tags."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"required": [
|
|
"Id",
|
|
"ActivityTypeId",
|
|
"Title"
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"Activity"
|
|
]
|
|
},
|
|
"tags": [
|
|
"activity"
|
|
],
|
|
"content_type": "application/json",
|
|
"response_root": "Response",
|
|
"timeout_seconds": 30
|
|
},
|
|
{
|
|
"name": "search_activities",
|
|
"title": "Search Activities",
|
|
"description": "Search activities by time range, type, contact, owner, tag, and related records.",
|
|
"entity": "activity",
|
|
"effect": "read",
|
|
"enabled": true,
|
|
"method": "POST",
|
|
"path": "/api/activity/search",
|
|
"input_schema": {
|
|
"type": "object",
|
|
"description": "Search activities. Filters are top-level, not inside Criteria.",
|
|
"properties": {
|
|
"FromDate": {
|
|
"type": "string",
|
|
"description": "Range start."
|
|
},
|
|
"ToDate": {
|
|
"type": "string",
|
|
"description": "Range end."
|
|
},
|
|
"SortType": {
|
|
"type": "integer",
|
|
"description": "Sort mode."
|
|
},
|
|
"From": {
|
|
"type": "integer",
|
|
"description": "Zero-based offset."
|
|
},
|
|
"Limit": {
|
|
"type": "integer",
|
|
"description": "Page size."
|
|
},
|
|
"ActivityTypeIds": {
|
|
"type": "array",
|
|
"description": "Activity type filter.",
|
|
"items": {
|
|
"type": "string",
|
|
"description": "Activity type id."
|
|
}
|
|
},
|
|
"ContactIds": {
|
|
"type": "array",
|
|
"description": "Related contacts.",
|
|
"items": {
|
|
"type": "string",
|
|
"description": "Person or company id."
|
|
}
|
|
},
|
|
"TagIds": {
|
|
"type": "array",
|
|
"description": "Tag filter.",
|
|
"items": {
|
|
"type": "string",
|
|
"description": "Tag id."
|
|
}
|
|
},
|
|
"OwnerId": {
|
|
"type": "string",
|
|
"description": "Owner UserId."
|
|
},
|
|
"CreatorId": {
|
|
"type": "string",
|
|
"description": "Creator UserId."
|
|
},
|
|
"IsDone": {
|
|
"type": "boolean",
|
|
"description": "true returns done activities. false returns not-done activities."
|
|
},
|
|
"IsDeleted": {
|
|
"type": "boolean",
|
|
"description": "true returns deleted activities. false returns active activities."
|
|
},
|
|
"DealId": {
|
|
"type": "string",
|
|
"description": "Related deal id."
|
|
},
|
|
"CaseId": {
|
|
"type": "string",
|
|
"description": "Related case id."
|
|
}
|
|
}
|
|
},
|
|
"pagination": {
|
|
"type": "offset_limit",
|
|
"offset_field": "From",
|
|
"limit_field": "Limit"
|
|
},
|
|
"tags": [
|
|
"activity"
|
|
],
|
|
"content_type": "application/json",
|
|
"response_root": "Response",
|
|
"timeout_seconds": 30
|
|
},
|
|
{
|
|
"name": "attach_file_to_activity",
|
|
"title": "Attach File To Activity",
|
|
"description": "Attach files to an activity with multipart form fields activityId and uploads. Disabled in v1.",
|
|
"entity": "activity",
|
|
"effect": "write",
|
|
"enabled": false,
|
|
"method": "POST",
|
|
"path": "/api/activity/AttachFilesToActivity",
|
|
"content_type": "multipart/form-data",
|
|
"input_schema": {
|
|
"type": "object",
|
|
"description": "Multipart attachment.",
|
|
"properties": {
|
|
"activityId": {
|
|
"type": "string",
|
|
"description": "Activity id."
|
|
},
|
|
"uploads": {
|
|
"type": "string",
|
|
"description": "File upload. The official request is multipart/form-data."
|
|
}
|
|
},
|
|
"required": [
|
|
"activityId",
|
|
"uploads"
|
|
]
|
|
},
|
|
"tags": [
|
|
"activity"
|
|
],
|
|
"response_root": "Response",
|
|
"timeout_seconds": 30
|
|
},
|
|
{
|
|
"name": "get_activity",
|
|
"title": "Get Activity",
|
|
"description": "Get one activity by id.",
|
|
"entity": "activity",
|
|
"effect": "read",
|
|
"enabled": true,
|
|
"method": "POST",
|
|
"path": "/api/Activity/GetActivityAndNoteById",
|
|
"input_schema": {
|
|
"type": "object",
|
|
"description": "Get activity.",
|
|
"properties": {
|
|
"Id": {
|
|
"type": "string",
|
|
"description": "Activity id."
|
|
}
|
|
},
|
|
"required": [
|
|
"Id"
|
|
]
|
|
},
|
|
"tags": [
|
|
"activity"
|
|
],
|
|
"content_type": "application/json",
|
|
"response_root": "Response",
|
|
"timeout_seconds": 30
|
|
},
|
|
{
|
|
"name": "create_note",
|
|
"title": "Create Note",
|
|
"description": "Create a note through the activity save endpoint. Disabled in v1.",
|
|
"entity": "note",
|
|
"effect": "write",
|
|
"enabled": false,
|
|
"method": "POST",
|
|
"path": "/api/activity/save",
|
|
"input_schema": {
|
|
"type": "object",
|
|
"description": "Create or update a note.",
|
|
"properties": {
|
|
"Activity": {
|
|
"type": "object",
|
|
"description": "Note payload stored through the activity endpoint.",
|
|
"properties": {
|
|
"ActivityTypeId": {
|
|
"type": "string",
|
|
"description": "Activity type id. Official note samples use the zero GUID."
|
|
},
|
|
"OwnerId": {
|
|
"type": "string",
|
|
"description": "UserId of the owner."
|
|
},
|
|
"ResultNote": {
|
|
"type": "string",
|
|
"description": "Note text."
|
|
},
|
|
"IsDone": {
|
|
"type": "boolean",
|
|
"description": "Official note docs require true for a note."
|
|
},
|
|
"IsPinned": {
|
|
"type": "boolean",
|
|
"description": "Whether the note is pinned."
|
|
},
|
|
"IsDeleted": {
|
|
"type": "boolean",
|
|
"description": "Whether the note is deleted."
|
|
},
|
|
"DealId": {
|
|
"type": "string",
|
|
"description": "Related deal id."
|
|
},
|
|
"CaseId": {
|
|
"type": "string",
|
|
"description": "Related case id."
|
|
},
|
|
"ContactIds": {
|
|
"type": "array",
|
|
"description": "Related person or company ids.",
|
|
"items": {
|
|
"type": "string",
|
|
"description": "Contact id."
|
|
}
|
|
},
|
|
"Tags": {
|
|
"type": "array",
|
|
"description": "Tags.",
|
|
"items": {
|
|
"type": "object",
|
|
"description": "One tag reference.",
|
|
"properties": {
|
|
"TagId": {
|
|
"type": "string",
|
|
"description": "Tag id from get_tags."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"required": [
|
|
"ActivityTypeId",
|
|
"IsDone"
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"Activity"
|
|
]
|
|
},
|
|
"tags": [
|
|
"note"
|
|
],
|
|
"content_type": "application/json",
|
|
"response_root": "Response",
|
|
"timeout_seconds": 30
|
|
},
|
|
{
|
|
"name": "update_note",
|
|
"title": "Update Note",
|
|
"description": "Update a note through the activity save endpoint. Disabled in v1.",
|
|
"entity": "note",
|
|
"effect": "write",
|
|
"enabled": false,
|
|
"method": "POST",
|
|
"path": "/api/activity/save",
|
|
"input_schema": {
|
|
"type": "object",
|
|
"description": "Create or update a note.",
|
|
"properties": {
|
|
"Activity": {
|
|
"type": "object",
|
|
"description": "Note payload stored through the activity endpoint.",
|
|
"properties": {
|
|
"Id": {
|
|
"type": "string",
|
|
"description": "Note id."
|
|
},
|
|
"ActivityTypeId": {
|
|
"type": "string",
|
|
"description": "Activity type id. Official note samples use the zero GUID."
|
|
},
|
|
"OwnerId": {
|
|
"type": "string",
|
|
"description": "UserId of the owner."
|
|
},
|
|
"ResultNote": {
|
|
"type": "string",
|
|
"description": "Note text."
|
|
},
|
|
"IsDone": {
|
|
"type": "boolean",
|
|
"description": "Official note docs require true for a note."
|
|
},
|
|
"IsPinned": {
|
|
"type": "boolean",
|
|
"description": "Whether the note is pinned."
|
|
},
|
|
"IsDeleted": {
|
|
"type": "boolean",
|
|
"description": "Whether the note is deleted."
|
|
},
|
|
"DealId": {
|
|
"type": "string",
|
|
"description": "Related deal id."
|
|
},
|
|
"CaseId": {
|
|
"type": "string",
|
|
"description": "Related case id."
|
|
},
|
|
"ContactIds": {
|
|
"type": "array",
|
|
"description": "Related person or company ids.",
|
|
"items": {
|
|
"type": "string",
|
|
"description": "Contact id."
|
|
}
|
|
},
|
|
"Tags": {
|
|
"type": "array",
|
|
"description": "Tags.",
|
|
"items": {
|
|
"type": "object",
|
|
"description": "One tag reference.",
|
|
"properties": {
|
|
"TagId": {
|
|
"type": "string",
|
|
"description": "Tag id from get_tags."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"required": [
|
|
"Id",
|
|
"ActivityTypeId",
|
|
"IsDone"
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"Activity"
|
|
]
|
|
},
|
|
"tags": [
|
|
"note"
|
|
],
|
|
"content_type": "application/json",
|
|
"response_root": "Response",
|
|
"timeout_seconds": 30
|
|
},
|
|
{
|
|
"name": "attach_file_to_note",
|
|
"title": "Attach File To Note",
|
|
"description": "Attach files to a note using the activity attachment endpoint. Disabled in v1.",
|
|
"entity": "note",
|
|
"effect": "write",
|
|
"enabled": false,
|
|
"method": "POST",
|
|
"path": "/api/activity/AttachFilesToActivity",
|
|
"content_type": "multipart/form-data",
|
|
"input_schema": {
|
|
"type": "object",
|
|
"description": "Multipart note attachment.",
|
|
"properties": {
|
|
"activityId": {
|
|
"type": "string",
|
|
"description": "Note id. Official docs send it as activityId."
|
|
},
|
|
"uploads": {
|
|
"type": "string",
|
|
"description": "File upload. The official request is multipart/form-data."
|
|
}
|
|
},
|
|
"required": [
|
|
"activityId",
|
|
"uploads"
|
|
]
|
|
},
|
|
"tags": [
|
|
"note"
|
|
],
|
|
"response_root": "Response",
|
|
"timeout_seconds": 30
|
|
},
|
|
{
|
|
"name": "get_note",
|
|
"title": "Get Note",
|
|
"description": "Get one note by id.",
|
|
"entity": "note",
|
|
"effect": "read",
|
|
"enabled": true,
|
|
"method": "POST",
|
|
"path": "/api/Activity/GetActivityAndNoteById",
|
|
"input_schema": {
|
|
"type": "object",
|
|
"description": "Get note.",
|
|
"properties": {
|
|
"Id": {
|
|
"type": "string",
|
|
"description": "Note id."
|
|
}
|
|
},
|
|
"required": [
|
|
"Id"
|
|
]
|
|
},
|
|
"tags": [
|
|
"note"
|
|
],
|
|
"content_type": "application/json",
|
|
"response_root": "Response",
|
|
"timeout_seconds": 30
|
|
},
|
|
{
|
|
"name": "didaryab_search",
|
|
"title": "Didaryab Search",
|
|
"description": "Search contacts, companies, deals, cases, and attachments with one keyword.",
|
|
"entity": "search",
|
|
"effect": "read",
|
|
"enabled": true,
|
|
"method": "POST",
|
|
"path": "/api/search/search",
|
|
"input_schema": {
|
|
"type": "object",
|
|
"description": "Didaryab search.",
|
|
"properties": {
|
|
"Keyword": {
|
|
"type": "string",
|
|
"description": "Text to search."
|
|
},
|
|
"Types": {
|
|
"type": "array",
|
|
"description": "One or more record types.",
|
|
"items": {
|
|
"type": "string",
|
|
"description": "Record type.",
|
|
"enum": [
|
|
"contact",
|
|
"company",
|
|
"deal",
|
|
"case",
|
|
"attachment"
|
|
]
|
|
}
|
|
}
|
|
},
|
|
"required": [
|
|
"Keyword",
|
|
"Types"
|
|
]
|
|
},
|
|
"tags": [
|
|
"search"
|
|
],
|
|
"content_type": "application/json",
|
|
"response_root": "Response",
|
|
"timeout_seconds": 30
|
|
},
|
|
{
|
|
"name": "get_custom_fields",
|
|
"title": "Get Custom Fields",
|
|
"description": "List custom fields. Official docs: no request body.",
|
|
"entity": "custom_field",
|
|
"effect": "read",
|
|
"enabled": true,
|
|
"method": "POST",
|
|
"path": "/api/customfield/GetCustomfieldList",
|
|
"input_schema": {
|
|
"type": "object",
|
|
"description": "Official Didar docs: this request has no body.",
|
|
"additionalProperties": false
|
|
},
|
|
"tags": [
|
|
"custom_field"
|
|
],
|
|
"content_type": "application/json",
|
|
"response_root": "Response",
|
|
"timeout_seconds": 30
|
|
},
|
|
{
|
|
"name": "get_users",
|
|
"title": "Get Users",
|
|
"description": "List Didar users. Official docs: POST with no request body. Used to test the API key.",
|
|
"entity": "user",
|
|
"effect": "read",
|
|
"enabled": true,
|
|
"method": "POST",
|
|
"path": "/api/User/List",
|
|
"input_schema": {
|
|
"type": "object",
|
|
"description": "Official Didar docs: this request has no body.",
|
|
"additionalProperties": false
|
|
},
|
|
"tags": [
|
|
"user"
|
|
],
|
|
"content_type": "application/json",
|
|
"response_root": "Response",
|
|
"timeout_seconds": 30
|
|
},
|
|
{
|
|
"name": "create_person",
|
|
"title": "Create Person",
|
|
"description": "Create a person. Disabled in v1.",
|
|
"entity": "person",
|
|
"effect": "write",
|
|
"enabled": false,
|
|
"method": "POST",
|
|
"path": "/api/contact/save",
|
|
"input_schema": {
|
|
"type": "object",
|
|
"description": "Create a person.",
|
|
"properties": {
|
|
"Contact": {
|
|
"type": "object",
|
|
"description": "Person contact payload.",
|
|
"properties": {
|
|
"Type": {
|
|
"type": "string",
|
|
"description": "Person contact type.",
|
|
"enum": [
|
|
"Person"
|
|
]
|
|
},
|
|
"FirstName": {
|
|
"type": "string",
|
|
"description": "Given name."
|
|
},
|
|
"LastName": {
|
|
"type": "string",
|
|
"description": "Family name. Required by the official create/update person docs."
|
|
},
|
|
"Title": {
|
|
"type": "string",
|
|
"description": "Salutation or title."
|
|
},
|
|
"OwnerId": {
|
|
"type": "string",
|
|
"description": "UserId of the owner from get_users."
|
|
},
|
|
"CompanyName": {
|
|
"type": "string",
|
|
"description": "Related company name."
|
|
},
|
|
"CompanyId": {
|
|
"type": "string",
|
|
"description": "Id of the related company."
|
|
},
|
|
"BirthDate": {
|
|
"type": "string",
|
|
"description": "Birth date/time."
|
|
},
|
|
"BirthDateMessageId": {
|
|
"type": "string",
|
|
"description": "Birth-date message id."
|
|
},
|
|
"MobilePhone": {
|
|
"type": "string",
|
|
"description": "Mobile phone."
|
|
},
|
|
"WorkPhone": {
|
|
"type": "string",
|
|
"description": "Work phone."
|
|
},
|
|
"WorkPhoneExtension": {
|
|
"type": "string",
|
|
"description": "Work phone extension."
|
|
},
|
|
"Fax": {
|
|
"type": "string",
|
|
"description": "Fax."
|
|
},
|
|
"Email": {
|
|
"type": "string",
|
|
"description": "Email."
|
|
},
|
|
"IsVIP": {
|
|
"type": "boolean",
|
|
"description": "Whether the person is marked VIP."
|
|
},
|
|
"BackgroundInfo": {
|
|
"type": "string",
|
|
"description": "Background notes."
|
|
},
|
|
"Position": {
|
|
"type": "string",
|
|
"description": "Job title."
|
|
},
|
|
"CustomerCode": {
|
|
"type": "string",
|
|
"description": "Customer code."
|
|
},
|
|
"NationalCode": {
|
|
"type": "string",
|
|
"description": "National code."
|
|
},
|
|
"ZipCode": {
|
|
"type": "string",
|
|
"description": "Postal code."
|
|
},
|
|
"CityId": {
|
|
"type": "string",
|
|
"description": "City id from get_locations."
|
|
},
|
|
"ProvinceId": {
|
|
"type": "string",
|
|
"description": "Province id from get_locations."
|
|
},
|
|
"VisibilityType": {
|
|
"type": "string",
|
|
"description": "Visibility. Documented examples include Owner, OwnerGroup, OwnerSubGroup, All."
|
|
},
|
|
"Fields": {
|
|
"type": "object",
|
|
"description": "Custom field values keyed by the field Key from get_custom_fields.",
|
|
"additionalProperties": true
|
|
},
|
|
"OtherPhones": {
|
|
"type": "object",
|
|
"description": "Grouped key/value collection documented on contact save.",
|
|
"properties": {
|
|
"KeyValues": {
|
|
"type": "array",
|
|
"description": "Labeled key/value rows.",
|
|
"items": {
|
|
"type": "object",
|
|
"description": "One labeled value.",
|
|
"properties": {
|
|
"Key": {
|
|
"type": "string",
|
|
"description": "Label key."
|
|
},
|
|
"Value": {
|
|
"type": "string",
|
|
"description": "Value."
|
|
},
|
|
"Title": {
|
|
"type": "string",
|
|
"description": "Optional display title."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"OtherEmails": {
|
|
"type": "object",
|
|
"description": "Grouped key/value collection documented on contact save.",
|
|
"properties": {
|
|
"KeyValues": {
|
|
"type": "array",
|
|
"description": "Labeled key/value rows.",
|
|
"items": {
|
|
"type": "object",
|
|
"description": "One labeled value.",
|
|
"properties": {
|
|
"Key": {
|
|
"type": "string",
|
|
"description": "Label key."
|
|
},
|
|
"Value": {
|
|
"type": "string",
|
|
"description": "Value."
|
|
},
|
|
"Title": {
|
|
"type": "string",
|
|
"description": "Optional display title."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"Websites": {
|
|
"type": "object",
|
|
"description": "Grouped key/value collection documented on contact save.",
|
|
"properties": {
|
|
"KeyValues": {
|
|
"type": "array",
|
|
"description": "Labeled key/value rows.",
|
|
"items": {
|
|
"type": "object",
|
|
"description": "One labeled value.",
|
|
"properties": {
|
|
"Key": {
|
|
"type": "string",
|
|
"description": "Label key."
|
|
},
|
|
"Value": {
|
|
"type": "string",
|
|
"description": "Value."
|
|
},
|
|
"Title": {
|
|
"type": "string",
|
|
"description": "Optional display title."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"BankAccounts": {
|
|
"type": "object",
|
|
"description": "Bank accounts object.",
|
|
"properties": {
|
|
"Values": {
|
|
"type": "array",
|
|
"description": "Bank account rows.",
|
|
"items": {
|
|
"type": "object",
|
|
"description": "One bank-account row.",
|
|
"properties": {
|
|
"Value1": {
|
|
"type": "string",
|
|
"description": "Account row type, such as Card or Account."
|
|
},
|
|
"Value2": {
|
|
"type": "string",
|
|
"description": "Second documented value slot."
|
|
},
|
|
"Value3": {
|
|
"type": "string",
|
|
"description": "Third documented value slot."
|
|
},
|
|
"Value4": {
|
|
"type": "string",
|
|
"description": "Fourth documented value slot."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"Addresses": {
|
|
"type": "object",
|
|
"description": "Grouped key/value collection documented on contact save.",
|
|
"properties": {
|
|
"KeyValues": {
|
|
"type": "array",
|
|
"description": "Labeled key/value rows.",
|
|
"items": {
|
|
"type": "object",
|
|
"description": "One labeled value.",
|
|
"properties": {
|
|
"Key": {
|
|
"type": "string",
|
|
"description": "Label key."
|
|
},
|
|
"Value": {
|
|
"type": "string",
|
|
"description": "Value."
|
|
},
|
|
"Title": {
|
|
"type": "string",
|
|
"description": "Optional display title."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"required": [
|
|
"LastName",
|
|
"OwnerId"
|
|
]
|
|
},
|
|
"SegmentIds": {
|
|
"type": "array",
|
|
"description": "Segment ids.",
|
|
"items": {
|
|
"type": "string",
|
|
"description": "Segment id from get_segments."
|
|
}
|
|
}
|
|
},
|
|
"required": [
|
|
"Contact"
|
|
]
|
|
},
|
|
"tags": [
|
|
"person"
|
|
],
|
|
"content_type": "application/json",
|
|
"response_root": "Response",
|
|
"timeout_seconds": 30
|
|
},
|
|
{
|
|
"name": "update_person",
|
|
"title": "Update Person",
|
|
"description": "Update a person. Disabled in v1.",
|
|
"entity": "person",
|
|
"effect": "write",
|
|
"enabled": false,
|
|
"method": "POST",
|
|
"path": "/api/contact/save",
|
|
"input_schema": {
|
|
"type": "object",
|
|
"description": "Update a person.",
|
|
"properties": {
|
|
"Contact": {
|
|
"type": "object",
|
|
"description": "Person contact payload.",
|
|
"properties": {
|
|
"Id": {
|
|
"type": "string",
|
|
"description": "Person id."
|
|
},
|
|
"Type": {
|
|
"type": "string",
|
|
"description": "Person contact type.",
|
|
"enum": [
|
|
"Person"
|
|
]
|
|
},
|
|
"FirstName": {
|
|
"type": "string",
|
|
"description": "Given name."
|
|
},
|
|
"LastName": {
|
|
"type": "string",
|
|
"description": "Family name. Required by the official create/update person docs."
|
|
},
|
|
"Title": {
|
|
"type": "string",
|
|
"description": "Salutation or title."
|
|
},
|
|
"OwnerId": {
|
|
"type": "string",
|
|
"description": "UserId of the owner from get_users."
|
|
},
|
|
"CompanyName": {
|
|
"type": "string",
|
|
"description": "Related company name."
|
|
},
|
|
"CompanyId": {
|
|
"type": "string",
|
|
"description": "Id of the related company."
|
|
},
|
|
"BirthDate": {
|
|
"type": "string",
|
|
"description": "Birth date/time."
|
|
},
|
|
"BirthDateMessageId": {
|
|
"type": "string",
|
|
"description": "Birth-date message id."
|
|
},
|
|
"MobilePhone": {
|
|
"type": "string",
|
|
"description": "Mobile phone."
|
|
},
|
|
"WorkPhone": {
|
|
"type": "string",
|
|
"description": "Work phone."
|
|
},
|
|
"WorkPhoneExtension": {
|
|
"type": "string",
|
|
"description": "Work phone extension."
|
|
},
|
|
"Fax": {
|
|
"type": "string",
|
|
"description": "Fax."
|
|
},
|
|
"Email": {
|
|
"type": "string",
|
|
"description": "Email."
|
|
},
|
|
"IsVIP": {
|
|
"type": "boolean",
|
|
"description": "Whether the person is marked VIP."
|
|
},
|
|
"BackgroundInfo": {
|
|
"type": "string",
|
|
"description": "Background notes."
|
|
},
|
|
"Position": {
|
|
"type": "string",
|
|
"description": "Job title."
|
|
},
|
|
"CustomerCode": {
|
|
"type": "string",
|
|
"description": "Customer code."
|
|
},
|
|
"NationalCode": {
|
|
"type": "string",
|
|
"description": "National code."
|
|
},
|
|
"ZipCode": {
|
|
"type": "string",
|
|
"description": "Postal code."
|
|
},
|
|
"CityId": {
|
|
"type": "string",
|
|
"description": "City id from get_locations."
|
|
},
|
|
"ProvinceId": {
|
|
"type": "string",
|
|
"description": "Province id from get_locations."
|
|
},
|
|
"VisibilityType": {
|
|
"type": "string",
|
|
"description": "Visibility. Documented examples include Owner, OwnerGroup, OwnerSubGroup, All."
|
|
},
|
|
"Fields": {
|
|
"type": "object",
|
|
"description": "Custom field values keyed by the field Key from get_custom_fields.",
|
|
"additionalProperties": true
|
|
},
|
|
"OtherPhones": {
|
|
"type": "object",
|
|
"description": "Grouped key/value collection documented on contact save.",
|
|
"properties": {
|
|
"KeyValues": {
|
|
"type": "array",
|
|
"description": "Labeled key/value rows.",
|
|
"items": {
|
|
"type": "object",
|
|
"description": "One labeled value.",
|
|
"properties": {
|
|
"Key": {
|
|
"type": "string",
|
|
"description": "Label key."
|
|
},
|
|
"Value": {
|
|
"type": "string",
|
|
"description": "Value."
|
|
},
|
|
"Title": {
|
|
"type": "string",
|
|
"description": "Optional display title."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"OtherEmails": {
|
|
"type": "object",
|
|
"description": "Grouped key/value collection documented on contact save.",
|
|
"properties": {
|
|
"KeyValues": {
|
|
"type": "array",
|
|
"description": "Labeled key/value rows.",
|
|
"items": {
|
|
"type": "object",
|
|
"description": "One labeled value.",
|
|
"properties": {
|
|
"Key": {
|
|
"type": "string",
|
|
"description": "Label key."
|
|
},
|
|
"Value": {
|
|
"type": "string",
|
|
"description": "Value."
|
|
},
|
|
"Title": {
|
|
"type": "string",
|
|
"description": "Optional display title."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"Websites": {
|
|
"type": "object",
|
|
"description": "Grouped key/value collection documented on contact save.",
|
|
"properties": {
|
|
"KeyValues": {
|
|
"type": "array",
|
|
"description": "Labeled key/value rows.",
|
|
"items": {
|
|
"type": "object",
|
|
"description": "One labeled value.",
|
|
"properties": {
|
|
"Key": {
|
|
"type": "string",
|
|
"description": "Label key."
|
|
},
|
|
"Value": {
|
|
"type": "string",
|
|
"description": "Value."
|
|
},
|
|
"Title": {
|
|
"type": "string",
|
|
"description": "Optional display title."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"BankAccounts": {
|
|
"type": "object",
|
|
"description": "Bank accounts object.",
|
|
"properties": {
|
|
"Values": {
|
|
"type": "array",
|
|
"description": "Bank account rows.",
|
|
"items": {
|
|
"type": "object",
|
|
"description": "One bank-account row.",
|
|
"properties": {
|
|
"Value1": {
|
|
"type": "string",
|
|
"description": "Account row type, such as Card or Account."
|
|
},
|
|
"Value2": {
|
|
"type": "string",
|
|
"description": "Second documented value slot."
|
|
},
|
|
"Value3": {
|
|
"type": "string",
|
|
"description": "Third documented value slot."
|
|
},
|
|
"Value4": {
|
|
"type": "string",
|
|
"description": "Fourth documented value slot."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"Addresses": {
|
|
"type": "object",
|
|
"description": "Grouped key/value collection documented on contact save.",
|
|
"properties": {
|
|
"KeyValues": {
|
|
"type": "array",
|
|
"description": "Labeled key/value rows.",
|
|
"items": {
|
|
"type": "object",
|
|
"description": "One labeled value.",
|
|
"properties": {
|
|
"Key": {
|
|
"type": "string",
|
|
"description": "Label key."
|
|
},
|
|
"Value": {
|
|
"type": "string",
|
|
"description": "Value."
|
|
},
|
|
"Title": {
|
|
"type": "string",
|
|
"description": "Optional display title."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"required": [
|
|
"Id",
|
|
"LastName",
|
|
"OwnerId"
|
|
]
|
|
},
|
|
"SegmentIds": {
|
|
"type": "array",
|
|
"description": "Segment ids.",
|
|
"items": {
|
|
"type": "string",
|
|
"description": "Segment id from get_segments."
|
|
}
|
|
}
|
|
},
|
|
"required": [
|
|
"Contact"
|
|
]
|
|
},
|
|
"tags": [
|
|
"person"
|
|
],
|
|
"content_type": "application/json",
|
|
"response_root": "Response",
|
|
"timeout_seconds": 30
|
|
},
|
|
{
|
|
"name": "get_person_by_id",
|
|
"title": "Get Person By Id",
|
|
"description": "Get one person by id.",
|
|
"entity": "person",
|
|
"effect": "read",
|
|
"enabled": true,
|
|
"method": "POST",
|
|
"path": "/api/contact/GetContactDetail",
|
|
"input_schema": {
|
|
"type": "object",
|
|
"description": "Get person.",
|
|
"properties": {
|
|
"Id": {
|
|
"type": "string",
|
|
"description": "Person id."
|
|
}
|
|
},
|
|
"required": [
|
|
"Id"
|
|
]
|
|
},
|
|
"tags": [
|
|
"person"
|
|
],
|
|
"content_type": "application/json",
|
|
"response_root": "Response",
|
|
"timeout_seconds": 30
|
|
},
|
|
{
|
|
"name": "get_person_by_mobile",
|
|
"title": "Get Person By Mobile",
|
|
"description": "Find a person by the stored mobile number.",
|
|
"entity": "person",
|
|
"effect": "read",
|
|
"enabled": true,
|
|
"method": "POST",
|
|
"path": "/api/contact/getbyphonenumber",
|
|
"input_schema": {
|
|
"type": "object",
|
|
"description": "Find person by mobile.",
|
|
"properties": {
|
|
"MobilePhone": {
|
|
"type": "string",
|
|
"description": "Mobile number in the stored format."
|
|
}
|
|
},
|
|
"required": [
|
|
"MobilePhone"
|
|
]
|
|
},
|
|
"tags": [
|
|
"person"
|
|
],
|
|
"content_type": "application/json",
|
|
"response_root": "Response",
|
|
"timeout_seconds": 30
|
|
},
|
|
{
|
|
"name": "search_persons",
|
|
"title": "Search Persons",
|
|
"description": "Search persons by name, phone, email, codes, and registration time.",
|
|
"entity": "person",
|
|
"effect": "read",
|
|
"enabled": true,
|
|
"method": "POST",
|
|
"path": "/api/contact/PersonSearch",
|
|
"input_schema": {
|
|
"type": "object",
|
|
"description": "Search persons.",
|
|
"properties": {
|
|
"Criteria": {
|
|
"type": "object",
|
|
"description": "Person search criteria from the official Search Persons page.",
|
|
"properties": {
|
|
"IsDeleted": {
|
|
"type": "integer",
|
|
"description": "0 keeps active records. 1 keeps deleted records.",
|
|
"enum": [
|
|
0,
|
|
1
|
|
]
|
|
},
|
|
"IsPinned": {
|
|
"type": "integer",
|
|
"description": "-1 is not pinned. 1 is pinned.",
|
|
"enum": [
|
|
-1,
|
|
1
|
|
]
|
|
},
|
|
"IsVIP": {
|
|
"type": "integer",
|
|
"description": "-1 is not VIP. 1 is VIP.",
|
|
"enum": [
|
|
-1,
|
|
1
|
|
]
|
|
},
|
|
"SortOrder": {
|
|
"type": "integer",
|
|
"description": "Sort direction."
|
|
},
|
|
"Keywords": {
|
|
"type": "string",
|
|
"description": "Text matched against the documented name fields."
|
|
},
|
|
"MobilePhone": {
|
|
"type": "string",
|
|
"description": "Mobile phone filter."
|
|
},
|
|
"WorkPhone": {
|
|
"type": "string",
|
|
"description": "Work phone filter."
|
|
},
|
|
"Email": {
|
|
"type": "string",
|
|
"description": "Email filter."
|
|
},
|
|
"NationalCode": {
|
|
"type": "string",
|
|
"description": "National code filter shown in the official sample."
|
|
},
|
|
"ZipCode": {
|
|
"type": "string",
|
|
"description": "Postal code filter."
|
|
},
|
|
"CustomerCode": {
|
|
"type": "string",
|
|
"description": "Customer code filter."
|
|
},
|
|
"SearchFromTime": {
|
|
"type": "string",
|
|
"description": "Inclusive range start."
|
|
},
|
|
"SearchToTime": {
|
|
"type": "string",
|
|
"description": "Inclusive range end."
|
|
},
|
|
"CustomFields": {
|
|
"type": "array",
|
|
"description": "Custom-field filters.",
|
|
"items": {
|
|
"type": "object",
|
|
"description": "Official person/company search sample sends objects whose keys are custom-field keys such as Field_996_0_226.",
|
|
"additionalProperties": true
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"From": {
|
|
"type": "integer",
|
|
"description": "Zero-based offset."
|
|
},
|
|
"Limit": {
|
|
"type": "integer",
|
|
"description": "Page size."
|
|
}
|
|
}
|
|
},
|
|
"pagination": {
|
|
"type": "offset_limit",
|
|
"offset_field": "From",
|
|
"limit_field": "Limit"
|
|
},
|
|
"tags": [
|
|
"person"
|
|
],
|
|
"content_type": "application/json",
|
|
"response_root": "Response",
|
|
"timeout_seconds": 30
|
|
},
|
|
{
|
|
"name": "create_company",
|
|
"title": "Create Company",
|
|
"description": "Create a company. Disabled in v1.",
|
|
"entity": "company",
|
|
"effect": "write",
|
|
"enabled": false,
|
|
"method": "POST",
|
|
"path": "/api/contact/save",
|
|
"input_schema": {
|
|
"type": "object",
|
|
"description": "Create a company.",
|
|
"properties": {
|
|
"Contact": {
|
|
"type": "object",
|
|
"description": "Company contact payload.",
|
|
"properties": {
|
|
"Type": {
|
|
"type": "string",
|
|
"description": "Must be Company.",
|
|
"enum": [
|
|
"Company"
|
|
]
|
|
},
|
|
"FirstName": {
|
|
"type": "string",
|
|
"description": "Company name. Required by the official company docs."
|
|
},
|
|
"Title": {
|
|
"type": "string",
|
|
"description": "Title."
|
|
},
|
|
"OwnerId": {
|
|
"type": "string",
|
|
"description": "UserId of the owner from get_users."
|
|
},
|
|
"BirthDate": {
|
|
"type": "string",
|
|
"description": "Date field accepted by the official company sample."
|
|
},
|
|
"BirthDateMessageId": {
|
|
"type": "string",
|
|
"description": "Message id accepted by the official company sample."
|
|
},
|
|
"MobilePhone": {
|
|
"type": "string",
|
|
"description": "Mobile or secretary phone."
|
|
},
|
|
"WorkPhone": {
|
|
"type": "string",
|
|
"description": "Work phone."
|
|
},
|
|
"WorkPhoneExtension": {
|
|
"type": "string",
|
|
"description": "Work phone extension."
|
|
},
|
|
"Fax": {
|
|
"type": "string",
|
|
"description": "Fax."
|
|
},
|
|
"Email": {
|
|
"type": "string",
|
|
"description": "Email."
|
|
},
|
|
"IsVIP": {
|
|
"type": "boolean",
|
|
"description": "Whether the company is marked VIP."
|
|
},
|
|
"BackgroundInfo": {
|
|
"type": "string",
|
|
"description": "Background notes."
|
|
},
|
|
"Position": {
|
|
"type": "string",
|
|
"description": "Position field accepted by the official company sample."
|
|
},
|
|
"CustomerCode": {
|
|
"type": "string",
|
|
"description": "Customer code."
|
|
},
|
|
"EconomicIssue": {
|
|
"type": "string",
|
|
"description": "Economic code."
|
|
},
|
|
"RegistrationNumber": {
|
|
"type": "string",
|
|
"description": "Company registration number."
|
|
},
|
|
"NationalID": {
|
|
"type": "string",
|
|
"description": "Company national id."
|
|
},
|
|
"ZipCode": {
|
|
"type": "string",
|
|
"description": "Postal code."
|
|
},
|
|
"CityId": {
|
|
"type": "string",
|
|
"description": "City id from get_locations."
|
|
},
|
|
"ProvinceId": {
|
|
"type": "string",
|
|
"description": "Province id from get_locations."
|
|
},
|
|
"VisibilityType": {
|
|
"type": "string",
|
|
"description": "Visibility. Documented sample uses Owner."
|
|
},
|
|
"Fields": {
|
|
"type": "object",
|
|
"description": "Custom field values keyed by field Key.",
|
|
"additionalProperties": true
|
|
},
|
|
"OtherPhones": {
|
|
"type": "object",
|
|
"description": "Grouped key/value collection documented on contact save.",
|
|
"properties": {
|
|
"KeyValues": {
|
|
"type": "array",
|
|
"description": "Labeled key/value rows.",
|
|
"items": {
|
|
"type": "object",
|
|
"description": "One labeled value.",
|
|
"properties": {
|
|
"Key": {
|
|
"type": "string",
|
|
"description": "Label key."
|
|
},
|
|
"Value": {
|
|
"type": "string",
|
|
"description": "Value."
|
|
},
|
|
"Title": {
|
|
"type": "string",
|
|
"description": "Optional display title."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"OtherEmails": {
|
|
"type": "object",
|
|
"description": "Grouped key/value collection documented on contact save.",
|
|
"properties": {
|
|
"KeyValues": {
|
|
"type": "array",
|
|
"description": "Labeled key/value rows.",
|
|
"items": {
|
|
"type": "object",
|
|
"description": "One labeled value.",
|
|
"properties": {
|
|
"Key": {
|
|
"type": "string",
|
|
"description": "Label key."
|
|
},
|
|
"Value": {
|
|
"type": "string",
|
|
"description": "Value."
|
|
},
|
|
"Title": {
|
|
"type": "string",
|
|
"description": "Optional display title."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"Websites": {
|
|
"type": "object",
|
|
"description": "Grouped key/value collection documented on contact save.",
|
|
"properties": {
|
|
"KeyValues": {
|
|
"type": "array",
|
|
"description": "Labeled key/value rows.",
|
|
"items": {
|
|
"type": "object",
|
|
"description": "One labeled value.",
|
|
"properties": {
|
|
"Key": {
|
|
"type": "string",
|
|
"description": "Label key."
|
|
},
|
|
"Value": {
|
|
"type": "string",
|
|
"description": "Value."
|
|
},
|
|
"Title": {
|
|
"type": "string",
|
|
"description": "Optional display title."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"BankAccounts": {
|
|
"type": "object",
|
|
"description": "Bank accounts object.",
|
|
"properties": {
|
|
"Values": {
|
|
"type": "array",
|
|
"description": "Bank account rows.",
|
|
"items": {
|
|
"type": "object",
|
|
"description": "One bank-account row.",
|
|
"properties": {
|
|
"Value1": {
|
|
"type": "string",
|
|
"description": "Account row type, such as Card or Account."
|
|
},
|
|
"Value2": {
|
|
"type": "string",
|
|
"description": "Second documented value slot."
|
|
},
|
|
"Value3": {
|
|
"type": "string",
|
|
"description": "Third documented value slot."
|
|
},
|
|
"Value4": {
|
|
"type": "string",
|
|
"description": "Fourth documented value slot."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"Addresses": {
|
|
"type": "object",
|
|
"description": "Grouped key/value collection documented on contact save.",
|
|
"properties": {
|
|
"KeyValues": {
|
|
"type": "array",
|
|
"description": "Labeled key/value rows.",
|
|
"items": {
|
|
"type": "object",
|
|
"description": "One labeled value.",
|
|
"properties": {
|
|
"Key": {
|
|
"type": "string",
|
|
"description": "Label key."
|
|
},
|
|
"Value": {
|
|
"type": "string",
|
|
"description": "Value."
|
|
},
|
|
"Title": {
|
|
"type": "string",
|
|
"description": "Optional display title."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"required": [
|
|
"Type",
|
|
"FirstName",
|
|
"OwnerId"
|
|
]
|
|
},
|
|
"SegmentIds": {
|
|
"type": "array",
|
|
"description": "Segment ids.",
|
|
"items": {
|
|
"type": "string",
|
|
"description": "Segment id from get_segments."
|
|
}
|
|
}
|
|
},
|
|
"required": [
|
|
"Contact"
|
|
]
|
|
},
|
|
"tags": [
|
|
"company"
|
|
],
|
|
"content_type": "application/json",
|
|
"response_root": "Response",
|
|
"timeout_seconds": 30
|
|
},
|
|
{
|
|
"name": "update_company",
|
|
"title": "Update Company",
|
|
"description": "Update a company. Disabled in v1.",
|
|
"entity": "company",
|
|
"effect": "write",
|
|
"enabled": false,
|
|
"method": "POST",
|
|
"path": "/api/contact/save",
|
|
"input_schema": {
|
|
"type": "object",
|
|
"description": "Update a company.",
|
|
"properties": {
|
|
"Contact": {
|
|
"type": "object",
|
|
"description": "Company contact payload.",
|
|
"properties": {
|
|
"Id": {
|
|
"type": "string",
|
|
"description": "Company id."
|
|
},
|
|
"Type": {
|
|
"type": "string",
|
|
"description": "Must be Company.",
|
|
"enum": [
|
|
"Company"
|
|
]
|
|
},
|
|
"FirstName": {
|
|
"type": "string",
|
|
"description": "Company name. Required by the official company docs."
|
|
},
|
|
"Title": {
|
|
"type": "string",
|
|
"description": "Title."
|
|
},
|
|
"OwnerId": {
|
|
"type": "string",
|
|
"description": "UserId of the owner from get_users."
|
|
},
|
|
"BirthDate": {
|
|
"type": "string",
|
|
"description": "Date field accepted by the official company sample."
|
|
},
|
|
"BirthDateMessageId": {
|
|
"type": "string",
|
|
"description": "Message id accepted by the official company sample."
|
|
},
|
|
"MobilePhone": {
|
|
"type": "string",
|
|
"description": "Mobile or secretary phone."
|
|
},
|
|
"WorkPhone": {
|
|
"type": "string",
|
|
"description": "Work phone."
|
|
},
|
|
"WorkPhoneExtension": {
|
|
"type": "string",
|
|
"description": "Work phone extension."
|
|
},
|
|
"Fax": {
|
|
"type": "string",
|
|
"description": "Fax."
|
|
},
|
|
"Email": {
|
|
"type": "string",
|
|
"description": "Email."
|
|
},
|
|
"IsVIP": {
|
|
"type": "boolean",
|
|
"description": "Whether the company is marked VIP."
|
|
},
|
|
"BackgroundInfo": {
|
|
"type": "string",
|
|
"description": "Background notes."
|
|
},
|
|
"Position": {
|
|
"type": "string",
|
|
"description": "Position field accepted by the official company sample."
|
|
},
|
|
"CustomerCode": {
|
|
"type": "string",
|
|
"description": "Customer code."
|
|
},
|
|
"EconomicIssue": {
|
|
"type": "string",
|
|
"description": "Economic code."
|
|
},
|
|
"RegistrationNumber": {
|
|
"type": "string",
|
|
"description": "Company registration number."
|
|
},
|
|
"NationalID": {
|
|
"type": "string",
|
|
"description": "Company national id."
|
|
},
|
|
"ZipCode": {
|
|
"type": "string",
|
|
"description": "Postal code."
|
|
},
|
|
"CityId": {
|
|
"type": "string",
|
|
"description": "City id from get_locations."
|
|
},
|
|
"ProvinceId": {
|
|
"type": "string",
|
|
"description": "Province id from get_locations."
|
|
},
|
|
"VisibilityType": {
|
|
"type": "string",
|
|
"description": "Visibility. Documented sample uses Owner."
|
|
},
|
|
"Fields": {
|
|
"type": "object",
|
|
"description": "Custom field values keyed by field Key.",
|
|
"additionalProperties": true
|
|
},
|
|
"OtherPhones": {
|
|
"type": "object",
|
|
"description": "Grouped key/value collection documented on contact save.",
|
|
"properties": {
|
|
"KeyValues": {
|
|
"type": "array",
|
|
"description": "Labeled key/value rows.",
|
|
"items": {
|
|
"type": "object",
|
|
"description": "One labeled value.",
|
|
"properties": {
|
|
"Key": {
|
|
"type": "string",
|
|
"description": "Label key."
|
|
},
|
|
"Value": {
|
|
"type": "string",
|
|
"description": "Value."
|
|
},
|
|
"Title": {
|
|
"type": "string",
|
|
"description": "Optional display title."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"OtherEmails": {
|
|
"type": "object",
|
|
"description": "Grouped key/value collection documented on contact save.",
|
|
"properties": {
|
|
"KeyValues": {
|
|
"type": "array",
|
|
"description": "Labeled key/value rows.",
|
|
"items": {
|
|
"type": "object",
|
|
"description": "One labeled value.",
|
|
"properties": {
|
|
"Key": {
|
|
"type": "string",
|
|
"description": "Label key."
|
|
},
|
|
"Value": {
|
|
"type": "string",
|
|
"description": "Value."
|
|
},
|
|
"Title": {
|
|
"type": "string",
|
|
"description": "Optional display title."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"Websites": {
|
|
"type": "object",
|
|
"description": "Grouped key/value collection documented on contact save.",
|
|
"properties": {
|
|
"KeyValues": {
|
|
"type": "array",
|
|
"description": "Labeled key/value rows.",
|
|
"items": {
|
|
"type": "object",
|
|
"description": "One labeled value.",
|
|
"properties": {
|
|
"Key": {
|
|
"type": "string",
|
|
"description": "Label key."
|
|
},
|
|
"Value": {
|
|
"type": "string",
|
|
"description": "Value."
|
|
},
|
|
"Title": {
|
|
"type": "string",
|
|
"description": "Optional display title."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"BankAccounts": {
|
|
"type": "object",
|
|
"description": "Bank accounts object.",
|
|
"properties": {
|
|
"Values": {
|
|
"type": "array",
|
|
"description": "Bank account rows.",
|
|
"items": {
|
|
"type": "object",
|
|
"description": "One bank-account row.",
|
|
"properties": {
|
|
"Value1": {
|
|
"type": "string",
|
|
"description": "Account row type, such as Card or Account."
|
|
},
|
|
"Value2": {
|
|
"type": "string",
|
|
"description": "Second documented value slot."
|
|
},
|
|
"Value3": {
|
|
"type": "string",
|
|
"description": "Third documented value slot."
|
|
},
|
|
"Value4": {
|
|
"type": "string",
|
|
"description": "Fourth documented value slot."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"Addresses": {
|
|
"type": "object",
|
|
"description": "Grouped key/value collection documented on contact save.",
|
|
"properties": {
|
|
"KeyValues": {
|
|
"type": "array",
|
|
"description": "Labeled key/value rows.",
|
|
"items": {
|
|
"type": "object",
|
|
"description": "One labeled value.",
|
|
"properties": {
|
|
"Key": {
|
|
"type": "string",
|
|
"description": "Label key."
|
|
},
|
|
"Value": {
|
|
"type": "string",
|
|
"description": "Value."
|
|
},
|
|
"Title": {
|
|
"type": "string",
|
|
"description": "Optional display title."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"required": [
|
|
"Id",
|
|
"Type",
|
|
"FirstName",
|
|
"OwnerId"
|
|
]
|
|
},
|
|
"SegmentIds": {
|
|
"type": "array",
|
|
"description": "Segment ids.",
|
|
"items": {
|
|
"type": "string",
|
|
"description": "Segment id from get_segments."
|
|
}
|
|
}
|
|
},
|
|
"required": [
|
|
"Contact"
|
|
]
|
|
},
|
|
"tags": [
|
|
"company"
|
|
],
|
|
"content_type": "application/json",
|
|
"response_root": "Response",
|
|
"timeout_seconds": 30
|
|
},
|
|
{
|
|
"name": "get_company",
|
|
"title": "Get Company",
|
|
"description": "Get one company by id.",
|
|
"entity": "company",
|
|
"effect": "read",
|
|
"enabled": true,
|
|
"method": "POST",
|
|
"path": "/api/contact/GetContactDetail",
|
|
"input_schema": {
|
|
"type": "object",
|
|
"description": "Get company.",
|
|
"properties": {
|
|
"Id": {
|
|
"type": "string",
|
|
"description": "Company id."
|
|
}
|
|
},
|
|
"required": [
|
|
"Id"
|
|
]
|
|
},
|
|
"tags": [
|
|
"company"
|
|
],
|
|
"content_type": "application/json",
|
|
"response_root": "Response",
|
|
"timeout_seconds": 30
|
|
},
|
|
{
|
|
"name": "search_companies",
|
|
"title": "Search Companies",
|
|
"description": "Search companies. The official Search Companies page uses POST /api/contact/PersonSearch with Criteria, From, and Limit.",
|
|
"entity": "company",
|
|
"effect": "read",
|
|
"enabled": true,
|
|
"method": "POST",
|
|
"path": "/api/contact/PersonSearch",
|
|
"input_schema": {
|
|
"type": "object",
|
|
"description": "Search companies. Didar documents this on POST /api/contact/PersonSearch.",
|
|
"properties": {
|
|
"Criteria": {
|
|
"type": "object",
|
|
"description": "Company search criteria from the official Search Companies page.",
|
|
"properties": {
|
|
"IsDeleted": {
|
|
"type": "integer",
|
|
"description": "0 keeps active records. 1 keeps deleted records.",
|
|
"enum": [
|
|
0,
|
|
1
|
|
]
|
|
},
|
|
"IsPinned": {
|
|
"type": "integer",
|
|
"description": "-1 is not pinned. 1 is pinned.",
|
|
"enum": [
|
|
-1,
|
|
1
|
|
]
|
|
},
|
|
"IsVIP": {
|
|
"type": "integer",
|
|
"description": "-1 is not VIP. 1 is VIP.",
|
|
"enum": [
|
|
-1,
|
|
1
|
|
]
|
|
},
|
|
"SortOrder": {
|
|
"type": "integer",
|
|
"description": "Sort direction."
|
|
},
|
|
"Keywords": {
|
|
"type": "string",
|
|
"description": "Text matched against the company name."
|
|
},
|
|
"MobilePhone": {
|
|
"type": "string",
|
|
"description": "Phone filter."
|
|
},
|
|
"WorkPhone": {
|
|
"type": "string",
|
|
"description": "Work phone filter."
|
|
},
|
|
"Email": {
|
|
"type": "string",
|
|
"description": "Email filter."
|
|
},
|
|
"NationalCode": {
|
|
"type": "string",
|
|
"description": "Field present on the official Search Companies sample."
|
|
},
|
|
"NationalID": {
|
|
"type": "string",
|
|
"description": "Company national id named on the Search Companies page."
|
|
},
|
|
"RegistrationNumber": {
|
|
"type": "string",
|
|
"description": "Registration number named on the Search Companies page."
|
|
},
|
|
"EconomicIssue": {
|
|
"type": "string",
|
|
"description": "Economic code named on the Search Companies page."
|
|
},
|
|
"ZipCode": {
|
|
"type": "string",
|
|
"description": "Postal code filter."
|
|
},
|
|
"CustomerCode": {
|
|
"type": "string",
|
|
"description": "Customer code filter."
|
|
},
|
|
"SearchFromTime": {
|
|
"type": "string",
|
|
"description": "Inclusive range start."
|
|
},
|
|
"SearchToTime": {
|
|
"type": "string",
|
|
"description": "Inclusive range end."
|
|
},
|
|
"CustomFields": {
|
|
"type": "array",
|
|
"description": "Custom-field filters.",
|
|
"items": {
|
|
"type": "object",
|
|
"description": "Official person/company search sample sends objects whose keys are custom-field keys such as Field_996_0_226.",
|
|
"additionalProperties": true
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"From": {
|
|
"type": "integer",
|
|
"description": "Zero-based offset."
|
|
},
|
|
"Limit": {
|
|
"type": "integer",
|
|
"description": "Page size."
|
|
}
|
|
}
|
|
},
|
|
"pagination": {
|
|
"type": "offset_limit",
|
|
"offset_field": "From",
|
|
"limit_field": "Limit"
|
|
},
|
|
"tags": [
|
|
"company"
|
|
],
|
|
"content_type": "application/json",
|
|
"response_root": "Response",
|
|
"timeout_seconds": 30
|
|
},
|
|
{
|
|
"name": "create_deal",
|
|
"title": "Create Deal",
|
|
"description": "Create a deal. Disabled in v1.",
|
|
"entity": "deal",
|
|
"effect": "write",
|
|
"enabled": false,
|
|
"method": "POST",
|
|
"path": "/api/deal/save_v2",
|
|
"input_schema": {
|
|
"type": "object",
|
|
"description": "Create or update a deal.",
|
|
"properties": {
|
|
"Deal": {
|
|
"type": "object",
|
|
"description": "Deal payload.",
|
|
"properties": {
|
|
"Title": {
|
|
"type": "string",
|
|
"description": "Deal title."
|
|
},
|
|
"Description": {
|
|
"type": "string",
|
|
"description": "Deal description."
|
|
},
|
|
"PersonId": {
|
|
"type": "string",
|
|
"description": "Primary person id."
|
|
},
|
|
"CompanyId": {
|
|
"type": "string",
|
|
"description": "Related company id."
|
|
},
|
|
"PipelineId": {
|
|
"type": "string",
|
|
"description": "Deal pipeline id from get_deal_pipelines."
|
|
},
|
|
"PipelineStageId": {
|
|
"type": "string",
|
|
"description": "Stage id from get_deal_pipelines."
|
|
},
|
|
"OwnerId": {
|
|
"type": "string",
|
|
"description": "UserId of the owner."
|
|
},
|
|
"Status": {
|
|
"type": "string",
|
|
"description": "Deal status.",
|
|
"enum": [
|
|
"Pending",
|
|
"Won",
|
|
"Lost"
|
|
]
|
|
},
|
|
"Price": {
|
|
"type": "string",
|
|
"description": "Price as documented in the official sample."
|
|
},
|
|
"LabelIds": {
|
|
"type": "array",
|
|
"description": "Label ids.",
|
|
"items": {
|
|
"type": "string",
|
|
"description": "Deal label id from get_deal_labels."
|
|
}
|
|
},
|
|
"SourceId": {
|
|
"type": "string",
|
|
"description": "Source id from get_sources."
|
|
},
|
|
"SourceOther": {
|
|
"type": "string",
|
|
"description": "Free-text source."
|
|
},
|
|
"ReferrerId": {
|
|
"type": "string",
|
|
"description": "Referrer contact id."
|
|
},
|
|
"ExpectedCloseDate": {
|
|
"description": "Expected close date, or null."
|
|
},
|
|
"LostReasonId": {
|
|
"type": "string",
|
|
"description": "Lost reason id from get_lost_reasons. Used when Status is Lost."
|
|
},
|
|
"LostReasonNote": {
|
|
"type": "string",
|
|
"description": "Extra lost-reason note."
|
|
},
|
|
"LostReasonOther": {
|
|
"type": "string",
|
|
"description": "Other lost-reason text."
|
|
},
|
|
"VisibilityType": {
|
|
"type": "string",
|
|
"description": "Visibility. Official sample uses Owner."
|
|
},
|
|
"CurrencyId": {
|
|
"type": "string",
|
|
"description": "Currency id."
|
|
},
|
|
"Fields": {
|
|
"type": "object",
|
|
"description": "Custom field values keyed by field Key.",
|
|
"additionalProperties": true
|
|
},
|
|
"CreatorId": {
|
|
"type": "string",
|
|
"description": "UserId of the creator."
|
|
},
|
|
"OtherContactIds": {
|
|
"type": "string",
|
|
"description": "Comma-separated other contact ids, as in the official sample."
|
|
},
|
|
"IsPaid": {
|
|
"type": "boolean",
|
|
"description": "Whether the deal is paid."
|
|
},
|
|
"UserLosing": {
|
|
"type": "string",
|
|
"description": "UserId recorded when the deal is lost."
|
|
},
|
|
"ChangeToWonTime": {
|
|
"type": "string",
|
|
"description": "Time the deal became Won."
|
|
},
|
|
"ChangeToLossTime": {
|
|
"type": "string",
|
|
"description": "Time the deal became Lost."
|
|
},
|
|
"ContactId": {
|
|
"type": "string",
|
|
"description": "Contact id included in the official sample."
|
|
},
|
|
"IsDeleted": {
|
|
"type": "boolean",
|
|
"description": "Whether the deal is deleted."
|
|
},
|
|
"LabelId": {
|
|
"type": "string",
|
|
"description": "Single label id included in the official sample."
|
|
},
|
|
"EstimatedPrice": {
|
|
"type": "number",
|
|
"description": "Estimated price included in the official sample."
|
|
},
|
|
"SegmentIds": {
|
|
"type": "array",
|
|
"description": "Segment ids included in the official sample.",
|
|
"items": {
|
|
"type": "string",
|
|
"description": "Segment id."
|
|
}
|
|
}
|
|
},
|
|
"required": [
|
|
"Title",
|
|
"PersonId",
|
|
"PipelineId",
|
|
"PipelineStageId"
|
|
]
|
|
},
|
|
"DealItems": {
|
|
"type": "array",
|
|
"description": "Deal product lines.",
|
|
"items": {
|
|
"type": "object",
|
|
"description": "One deal line.",
|
|
"properties": {
|
|
"ProductId": {
|
|
"type": "string",
|
|
"description": "Product id."
|
|
},
|
|
"Quantity": {
|
|
"type": "string",
|
|
"description": "Quantity."
|
|
},
|
|
"UnitPrice": {
|
|
"type": "string",
|
|
"description": "Unit price."
|
|
},
|
|
"Price": {
|
|
"type": "string",
|
|
"description": "Line price."
|
|
},
|
|
"Discount": {
|
|
"type": "string",
|
|
"description": "Discount amount."
|
|
},
|
|
"DiscountPercent": {
|
|
"type": "string",
|
|
"description": "Discount percent."
|
|
},
|
|
"TaxPercent": {
|
|
"type": "string",
|
|
"description": "Tax percent."
|
|
},
|
|
"Description": {
|
|
"type": "string",
|
|
"description": "Line description."
|
|
},
|
|
"VariantId": {
|
|
"type": "string",
|
|
"description": "Product variant id."
|
|
}
|
|
},
|
|
"required": [
|
|
"ProductId",
|
|
"Quantity"
|
|
]
|
|
}
|
|
}
|
|
},
|
|
"required": [
|
|
"Deal"
|
|
]
|
|
},
|
|
"tags": [
|
|
"deal"
|
|
],
|
|
"content_type": "application/json",
|
|
"response_root": "Response",
|
|
"timeout_seconds": 30
|
|
},
|
|
{
|
|
"name": "get_deal",
|
|
"title": "Get Deal",
|
|
"description": "Get one deal by id.",
|
|
"entity": "deal",
|
|
"effect": "read",
|
|
"enabled": true,
|
|
"method": "POST",
|
|
"path": "/api/deal/getdealdetail",
|
|
"input_schema": {
|
|
"type": "object",
|
|
"description": "Get deal.",
|
|
"properties": {
|
|
"Id": {
|
|
"type": "string",
|
|
"description": "Deal id."
|
|
}
|
|
},
|
|
"required": [
|
|
"Id"
|
|
]
|
|
},
|
|
"tags": [
|
|
"deal"
|
|
],
|
|
"content_type": "application/json",
|
|
"response_root": "Response",
|
|
"timeout_seconds": 30
|
|
},
|
|
{
|
|
"name": "update_deal",
|
|
"title": "Update Deal",
|
|
"description": "Update a deal. Disabled in v1.",
|
|
"entity": "deal",
|
|
"effect": "write",
|
|
"enabled": false,
|
|
"method": "POST",
|
|
"path": "/api/deal/save_v2",
|
|
"input_schema": {
|
|
"type": "object",
|
|
"description": "Create or update a deal.",
|
|
"properties": {
|
|
"Deal": {
|
|
"type": "object",
|
|
"description": "Deal payload.",
|
|
"properties": {
|
|
"Id": {
|
|
"type": "string",
|
|
"description": "Deal id."
|
|
},
|
|
"Code": {
|
|
"type": "string",
|
|
"description": "Deal code."
|
|
},
|
|
"Title": {
|
|
"type": "string",
|
|
"description": "Deal title."
|
|
},
|
|
"Description": {
|
|
"type": "string",
|
|
"description": "Deal description."
|
|
},
|
|
"PersonId": {
|
|
"type": "string",
|
|
"description": "Primary person id."
|
|
},
|
|
"CompanyId": {
|
|
"type": "string",
|
|
"description": "Related company id."
|
|
},
|
|
"PipelineId": {
|
|
"type": "string",
|
|
"description": "Deal pipeline id from get_deal_pipelines."
|
|
},
|
|
"PipelineStageId": {
|
|
"type": "string",
|
|
"description": "Stage id from get_deal_pipelines."
|
|
},
|
|
"OwnerId": {
|
|
"type": "string",
|
|
"description": "UserId of the owner."
|
|
},
|
|
"Status": {
|
|
"type": "string",
|
|
"description": "Deal status.",
|
|
"enum": [
|
|
"Pending",
|
|
"Won",
|
|
"Lost"
|
|
]
|
|
},
|
|
"Price": {
|
|
"type": "string",
|
|
"description": "Price as documented in the official sample."
|
|
},
|
|
"LabelIds": {
|
|
"type": "array",
|
|
"description": "Label ids.",
|
|
"items": {
|
|
"type": "string",
|
|
"description": "Deal label id from get_deal_labels."
|
|
}
|
|
},
|
|
"SourceId": {
|
|
"type": "string",
|
|
"description": "Source id from get_sources."
|
|
},
|
|
"SourceOther": {
|
|
"type": "string",
|
|
"description": "Free-text source."
|
|
},
|
|
"ReferrerId": {
|
|
"type": "string",
|
|
"description": "Referrer contact id."
|
|
},
|
|
"ExpectedCloseDate": {
|
|
"description": "Expected close date, or null."
|
|
},
|
|
"LostReasonId": {
|
|
"type": "string",
|
|
"description": "Lost reason id from get_lost_reasons. Used when Status is Lost."
|
|
},
|
|
"LostReasonNote": {
|
|
"type": "string",
|
|
"description": "Extra lost-reason note."
|
|
},
|
|
"LostReasonOther": {
|
|
"type": "string",
|
|
"description": "Other lost-reason text."
|
|
},
|
|
"VisibilityType": {
|
|
"type": "string",
|
|
"description": "Visibility. Official sample uses Owner."
|
|
},
|
|
"CurrencyId": {
|
|
"type": "string",
|
|
"description": "Currency id."
|
|
},
|
|
"Fields": {
|
|
"type": "object",
|
|
"description": "Custom field values keyed by field Key.",
|
|
"additionalProperties": true
|
|
},
|
|
"CreatorId": {
|
|
"type": "string",
|
|
"description": "UserId of the creator."
|
|
},
|
|
"OtherContactIds": {
|
|
"type": "string",
|
|
"description": "Comma-separated other contact ids, as in the official sample."
|
|
},
|
|
"IsPaid": {
|
|
"type": "boolean",
|
|
"description": "Whether the deal is paid."
|
|
},
|
|
"UserLosing": {
|
|
"type": "string",
|
|
"description": "UserId recorded when the deal is lost."
|
|
},
|
|
"ChangeToWonTime": {
|
|
"type": "string",
|
|
"description": "Time the deal became Won."
|
|
},
|
|
"ChangeToLossTime": {
|
|
"type": "string",
|
|
"description": "Time the deal became Lost."
|
|
},
|
|
"ContactId": {
|
|
"type": "string",
|
|
"description": "Contact id included in the official sample."
|
|
},
|
|
"IsDeleted": {
|
|
"type": "boolean",
|
|
"description": "Whether the deal is deleted."
|
|
},
|
|
"LabelId": {
|
|
"type": "string",
|
|
"description": "Single label id included in the official sample."
|
|
},
|
|
"EstimatedPrice": {
|
|
"type": "number",
|
|
"description": "Estimated price included in the official sample."
|
|
},
|
|
"SegmentIds": {
|
|
"type": "array",
|
|
"description": "Segment ids included in the official sample.",
|
|
"items": {
|
|
"type": "string",
|
|
"description": "Segment id."
|
|
}
|
|
}
|
|
},
|
|
"required": [
|
|
"Id",
|
|
"Title",
|
|
"PersonId",
|
|
"PipelineId",
|
|
"PipelineStageId"
|
|
]
|
|
},
|
|
"DealItems": {
|
|
"type": "array",
|
|
"description": "Deal product lines.",
|
|
"items": {
|
|
"type": "object",
|
|
"description": "One deal line.",
|
|
"properties": {
|
|
"ProductId": {
|
|
"type": "string",
|
|
"description": "Product id."
|
|
},
|
|
"Quantity": {
|
|
"type": "string",
|
|
"description": "Quantity."
|
|
},
|
|
"UnitPrice": {
|
|
"type": "string",
|
|
"description": "Unit price."
|
|
},
|
|
"Price": {
|
|
"type": "string",
|
|
"description": "Line price."
|
|
},
|
|
"Discount": {
|
|
"type": "string",
|
|
"description": "Discount amount."
|
|
},
|
|
"DiscountPercent": {
|
|
"type": "string",
|
|
"description": "Discount percent."
|
|
},
|
|
"TaxPercent": {
|
|
"type": "string",
|
|
"description": "Tax percent."
|
|
},
|
|
"Description": {
|
|
"type": "string",
|
|
"description": "Line description."
|
|
},
|
|
"VariantId": {
|
|
"type": "string",
|
|
"description": "Product variant id."
|
|
}
|
|
},
|
|
"required": [
|
|
"ProductId",
|
|
"Quantity"
|
|
]
|
|
}
|
|
}
|
|
},
|
|
"required": [
|
|
"Deal"
|
|
]
|
|
},
|
|
"tags": [
|
|
"deal"
|
|
],
|
|
"content_type": "application/json",
|
|
"response_root": "Response",
|
|
"timeout_seconds": 30
|
|
},
|
|
{
|
|
"name": "search_deals",
|
|
"title": "Search Deals",
|
|
"description": "Search deals with Criteria plus From/Limit pagination. Status values documented by Didar are Pending, Won, and Lost. The response root contains List plus aggregate counts and totals.",
|
|
"entity": "deal",
|
|
"effect": "read",
|
|
"enabled": true,
|
|
"method": "POST",
|
|
"path": "/api/deal/search_v2",
|
|
"input_schema": {
|
|
"type": "object",
|
|
"description": "Search deals.",
|
|
"properties": {
|
|
"Criteria": {
|
|
"type": "object",
|
|
"description": "Deal search criteria from the official Search Deals sample.",
|
|
"properties": {
|
|
"SearchFromTime": {
|
|
"type": "string",
|
|
"description": "Range start."
|
|
},
|
|
"SearchToTime": {
|
|
"type": "string",
|
|
"description": "Range end."
|
|
},
|
|
"Sort": {
|
|
"type": "integer",
|
|
"description": "Sort mode."
|
|
},
|
|
"ContactIds": {
|
|
"type": "array",
|
|
"description": "Primary contact filter.",
|
|
"items": {
|
|
"type": "string",
|
|
"description": "Person id."
|
|
}
|
|
},
|
|
"CompanyIds": {
|
|
"type": "array",
|
|
"description": "Company filter.",
|
|
"items": {
|
|
"type": "string",
|
|
"description": "Company id."
|
|
}
|
|
},
|
|
"OtherContactIds": {
|
|
"type": "array",
|
|
"description": "Other contact filter.",
|
|
"items": {
|
|
"type": "string",
|
|
"description": "Other contact id."
|
|
}
|
|
},
|
|
"Keywords": {
|
|
"type": "string",
|
|
"description": "Keyword filter."
|
|
},
|
|
"LabelIds": {
|
|
"type": "array",
|
|
"description": "Label filter.",
|
|
"items": {
|
|
"type": "string",
|
|
"description": "Deal label id."
|
|
}
|
|
},
|
|
"Status": {
|
|
"type": "string",
|
|
"description": "Deal status.",
|
|
"enum": [
|
|
"Pending",
|
|
"Won",
|
|
"Lost"
|
|
]
|
|
},
|
|
"CustomFields": {
|
|
"type": "array",
|
|
"description": "Deal custom-field filters.",
|
|
"items": {
|
|
"type": "object",
|
|
"description": "One custom-field filter from the Search Deals sample.",
|
|
"properties": {
|
|
"CustomFieldId": {
|
|
"type": "string",
|
|
"description": "Id of a deal custom field from get_custom_fields."
|
|
},
|
|
"OR": {
|
|
"type": "array",
|
|
"description": "OR comparisons for this custom field.",
|
|
"items": {
|
|
"type": "object",
|
|
"description": "One custom-field comparison.",
|
|
"properties": {
|
|
"Type": {
|
|
"type": "string",
|
|
"description": "Comparison shown in the official sample: ContainsAnyString, NotContainsAnyString, StartsWith, GreaterThan, LessThan, Between."
|
|
},
|
|
"Value": {
|
|
"type": "array",
|
|
"description": "Values for this comparison.",
|
|
"items": {
|
|
"type": "string",
|
|
"description": "Comparison value."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"PipelineId": {
|
|
"type": "string",
|
|
"description": "Pipeline id."
|
|
},
|
|
"PipelineStageId": {
|
|
"type": "string",
|
|
"description": "Single pipeline stage id."
|
|
},
|
|
"PipelineStageIds": {
|
|
"type": "array",
|
|
"description": "Several stage ids.",
|
|
"items": {
|
|
"type": "string",
|
|
"description": "Pipeline stage id."
|
|
}
|
|
},
|
|
"SourceId": {
|
|
"type": "string",
|
|
"description": "Source id."
|
|
},
|
|
"IsDeleted": {
|
|
"type": "boolean",
|
|
"description": "Deleted-record filter."
|
|
},
|
|
"HasActivity": {
|
|
"type": "boolean",
|
|
"description": "Whether a related activity exists."
|
|
},
|
|
"LostReasonId": {
|
|
"type": "string",
|
|
"description": "Lost reason id."
|
|
},
|
|
"NextActivityFrom": {
|
|
"type": "string",
|
|
"description": "Next activity range start."
|
|
},
|
|
"NextActivityTo": {
|
|
"type": "string",
|
|
"description": "Next activity range end."
|
|
},
|
|
"IsIdle": {
|
|
"type": "boolean",
|
|
"description": "Idle-deal filter."
|
|
},
|
|
"IsRotten": {
|
|
"type": "boolean",
|
|
"description": "Rotten-deal filter."
|
|
},
|
|
"Probability": {
|
|
"type": "string",
|
|
"description": "Probability filter as shown in the official sample."
|
|
},
|
|
"OwnerIds": {
|
|
"type": "array",
|
|
"description": "Owner filter.",
|
|
"items": {
|
|
"type": "string",
|
|
"description": "Owner UserId."
|
|
}
|
|
}
|
|
},
|
|
"additionalProperties": false
|
|
},
|
|
"From": {
|
|
"type": "integer",
|
|
"minimum": 0,
|
|
"description": "Zero-based offset."
|
|
},
|
|
"Limit": {
|
|
"type": "integer",
|
|
"minimum": 1,
|
|
"maximum": 100,
|
|
"description": "Page size."
|
|
}
|
|
},
|
|
"required": [
|
|
"Criteria",
|
|
"From",
|
|
"Limit"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"pagination": {
|
|
"type": "offset_limit",
|
|
"offset_field": "From",
|
|
"limit_field": "Limit"
|
|
},
|
|
"records_path": "Response.List",
|
|
"summary_fields": [
|
|
"Response.TotalCount",
|
|
"Response.TotalPrice",
|
|
"Response.AllDealsCount",
|
|
"Response.WonDealsCount",
|
|
"Response.LostDealsCount",
|
|
"Response.PendingDealsCount"
|
|
],
|
|
"semantic_hints": [
|
|
"From and Limit are top-level fields, not inside Criteria.",
|
|
"Use server totals when only counts are needed."
|
|
],
|
|
"tags": [
|
|
"deal"
|
|
],
|
|
"content_type": "application/json",
|
|
"response_root": "Response",
|
|
"timeout_seconds": 30
|
|
},
|
|
{
|
|
"name": "create_invoice",
|
|
"title": "Create Invoice",
|
|
"description": "Create an invoice. Disabled in v1.",
|
|
"entity": "invoice",
|
|
"effect": "write",
|
|
"enabled": false,
|
|
"method": "POST",
|
|
"path": "/api/AccountingInvoice/Create",
|
|
"input_schema": {
|
|
"type": "object",
|
|
"description": "Invoice payload.",
|
|
"properties": {
|
|
"Items": {
|
|
"type": "array",
|
|
"description": "Document lines.",
|
|
"items": {
|
|
"type": "object",
|
|
"description": "One invoice or quote line.",
|
|
"properties": {
|
|
"Id": {
|
|
"type": "string",
|
|
"description": "Existing line id when updating."
|
|
},
|
|
"ProductId": {
|
|
"type": "string",
|
|
"description": "Product id."
|
|
},
|
|
"ProductCode": {
|
|
"type": "string",
|
|
"description": "Product code."
|
|
},
|
|
"VariantId": {
|
|
"type": "string",
|
|
"description": "Variant id."
|
|
},
|
|
"VariantTitle": {
|
|
"type": "string",
|
|
"description": "Variant title."
|
|
},
|
|
"VariantCode": {
|
|
"type": "string",
|
|
"description": "Variant code."
|
|
},
|
|
"Title": {
|
|
"type": "string",
|
|
"description": "Line title."
|
|
},
|
|
"TitleForInvoice": {
|
|
"type": "string",
|
|
"description": "Title printed on the document."
|
|
},
|
|
"newTitle": {
|
|
"type": "string",
|
|
"description": "Replacement title accepted by the quote sample."
|
|
},
|
|
"Description": {
|
|
"type": "string",
|
|
"description": "Line description."
|
|
},
|
|
"Unit": {
|
|
"type": "string",
|
|
"description": "Unit name."
|
|
},
|
|
"UnitPrice": {
|
|
"type": "string",
|
|
"description": "Unit price."
|
|
},
|
|
"Quantity": {
|
|
"type": "number",
|
|
"description": "Quantity."
|
|
},
|
|
"Discount": {
|
|
"type": "string",
|
|
"description": "Discount amount."
|
|
},
|
|
"DiscountPercent": {
|
|
"type": "number",
|
|
"description": "Discount percent."
|
|
},
|
|
"DiscountType": {
|
|
"type": "string",
|
|
"description": "Discount type. Official samples use Amount or Percent."
|
|
},
|
|
"TaxPercent": {
|
|
"type": "string",
|
|
"description": "Tax percent."
|
|
},
|
|
"SaleTypeId": {
|
|
"type": "string",
|
|
"description": "Sale type id."
|
|
},
|
|
"Price": {
|
|
"type": "number",
|
|
"description": "Line price included in the invoice sample."
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"SellerInfo": {
|
|
"type": "object",
|
|
"description": "Seller info.",
|
|
"properties": {
|
|
"SellerName": {
|
|
"type": "string",
|
|
"description": "Seller name."
|
|
},
|
|
"BizDomainId": {
|
|
"type": "string",
|
|
"description": "Seller business-domain id."
|
|
},
|
|
"QuoteExpirationDays": {
|
|
"type": "number",
|
|
"description": "Default quote validity days."
|
|
},
|
|
"SellerEconomicCode": {
|
|
"type": "string",
|
|
"description": "Seller economic code."
|
|
},
|
|
"SellerNationalCode": {
|
|
"type": "string",
|
|
"description": "Seller national code."
|
|
},
|
|
"SellerPostalCode": {
|
|
"type": "string",
|
|
"description": "Seller postal code."
|
|
},
|
|
"SellerProvince": {
|
|
"type": "string",
|
|
"description": "Seller province."
|
|
},
|
|
"SellerGrandCity": {
|
|
"type": "string",
|
|
"description": "Seller grand city."
|
|
},
|
|
"SellerCity": {
|
|
"type": "string",
|
|
"description": "Seller city."
|
|
},
|
|
"SellerAddress": {
|
|
"type": "string",
|
|
"description": "Seller address."
|
|
},
|
|
"SellerPhone": {
|
|
"type": "string",
|
|
"description": "Seller phone."
|
|
},
|
|
"InvoiceConditions": {
|
|
"type": "string",
|
|
"description": "Invoice conditions text."
|
|
},
|
|
"QuoteConditions": {
|
|
"type": "string",
|
|
"description": "Quote conditions text."
|
|
}
|
|
}
|
|
},
|
|
"BuyerInfo": {
|
|
"type": "object",
|
|
"description": "Buyer info.",
|
|
"properties": {
|
|
"BuyerType": {
|
|
"type": "string",
|
|
"description": "Buyer type. Official sample uses Company."
|
|
},
|
|
"BuyerTitle": {
|
|
"type": "string",
|
|
"description": "Buyer title."
|
|
},
|
|
"BuyerName": {
|
|
"type": "string",
|
|
"description": "Buyer name."
|
|
},
|
|
"BuyerEconomicCode": {
|
|
"type": "string",
|
|
"description": "Buyer economic code."
|
|
},
|
|
"BuyerNationalCode": {
|
|
"type": "string",
|
|
"description": "Buyer national code."
|
|
},
|
|
"BuyerNationalID": {
|
|
"type": "string",
|
|
"description": "Buyer national id."
|
|
},
|
|
"BuyerRegistrationNumber": {
|
|
"type": "string",
|
|
"description": "Buyer registration number."
|
|
},
|
|
"BuyerProvince": {
|
|
"type": "string",
|
|
"description": "Buyer province."
|
|
},
|
|
"BuyerGrandCity": {
|
|
"type": "string",
|
|
"description": "Buyer grand city."
|
|
},
|
|
"BuyerCity": {
|
|
"type": "string",
|
|
"description": "Buyer city."
|
|
},
|
|
"BuyerPostalCode": {
|
|
"type": "string",
|
|
"description": "Buyer postal code."
|
|
},
|
|
"BuyerMobilePhone": {
|
|
"type": "string",
|
|
"description": "Buyer mobile phone."
|
|
},
|
|
"BuyerFaxNumber": {
|
|
"type": "string",
|
|
"description": "Buyer fax."
|
|
},
|
|
"BuyerAddress": {
|
|
"type": "object",
|
|
"description": "Grouped key/value collection documented on contact save.",
|
|
"properties": {
|
|
"KeyValues": {
|
|
"type": "array",
|
|
"description": "Labeled key/value rows.",
|
|
"items": {
|
|
"type": "object",
|
|
"description": "One labeled value.",
|
|
"properties": {
|
|
"Key": {
|
|
"type": "string",
|
|
"description": "Label key."
|
|
},
|
|
"Value": {
|
|
"type": "string",
|
|
"description": "Value."
|
|
},
|
|
"Title": {
|
|
"type": "string",
|
|
"description": "Optional display title."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"BuyerPhone": {
|
|
"type": "string",
|
|
"description": "Buyer phone."
|
|
},
|
|
"BuyerEmail": {
|
|
"type": "string",
|
|
"description": "Buyer email."
|
|
}
|
|
}
|
|
},
|
|
"BizdomainProvider": {
|
|
"type": "object",
|
|
"description": "Optional provider object accepted by the official docs.",
|
|
"properties": {}
|
|
},
|
|
"CreatorId": {
|
|
"type": "string",
|
|
"description": "UserId of the creator."
|
|
},
|
|
"IssueDate": {
|
|
"type": "string",
|
|
"description": "Issue date/time."
|
|
},
|
|
"Adjustment": {
|
|
"type": "string",
|
|
"description": "Adjustment amount."
|
|
},
|
|
"DiscountRows": {
|
|
"type": "array",
|
|
"description": "Document-level discount rows.",
|
|
"items": {
|
|
"type": "object",
|
|
"description": "One discount row.",
|
|
"properties": {
|
|
"DiscountName": {
|
|
"type": "string",
|
|
"description": "Discount row name."
|
|
},
|
|
"RowPrice": {
|
|
"type": "string",
|
|
"description": "Discount row price."
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"BizDomainId": {
|
|
"type": "string",
|
|
"description": "Business-domain id."
|
|
},
|
|
"CurrencyId": {
|
|
"type": "number",
|
|
"description": "Currency id."
|
|
},
|
|
"DealId": {
|
|
"type": "string",
|
|
"description": "Related deal id."
|
|
},
|
|
"Description": {
|
|
"type": "string",
|
|
"description": "Document description."
|
|
}
|
|
},
|
|
"required": [
|
|
"Items",
|
|
"SellerInfo",
|
|
"BuyerInfo"
|
|
]
|
|
},
|
|
"tags": [
|
|
"invoice"
|
|
],
|
|
"content_type": "application/json",
|
|
"response_root": "Response",
|
|
"timeout_seconds": 30
|
|
},
|
|
{
|
|
"name": "create_quote",
|
|
"title": "Create Quote",
|
|
"description": "Create a quote. Disabled in v1.",
|
|
"entity": "quote",
|
|
"effect": "write",
|
|
"enabled": false,
|
|
"method": "POST",
|
|
"path": "/api/AccountingQuote/CreateQuote",
|
|
"input_schema": {
|
|
"type": "object",
|
|
"description": "Quote payload.",
|
|
"properties": {
|
|
"Items": {
|
|
"type": "array",
|
|
"description": "Document lines.",
|
|
"items": {
|
|
"type": "object",
|
|
"description": "One invoice or quote line.",
|
|
"properties": {
|
|
"Id": {
|
|
"type": "string",
|
|
"description": "Existing line id when updating."
|
|
},
|
|
"ProductId": {
|
|
"type": "string",
|
|
"description": "Product id."
|
|
},
|
|
"ProductCode": {
|
|
"type": "string",
|
|
"description": "Product code."
|
|
},
|
|
"VariantId": {
|
|
"type": "string",
|
|
"description": "Variant id."
|
|
},
|
|
"VariantTitle": {
|
|
"type": "string",
|
|
"description": "Variant title."
|
|
},
|
|
"VariantCode": {
|
|
"type": "string",
|
|
"description": "Variant code."
|
|
},
|
|
"Title": {
|
|
"type": "string",
|
|
"description": "Line title."
|
|
},
|
|
"TitleForInvoice": {
|
|
"type": "string",
|
|
"description": "Title printed on the document."
|
|
},
|
|
"newTitle": {
|
|
"type": "string",
|
|
"description": "Replacement title accepted by the quote sample."
|
|
},
|
|
"Description": {
|
|
"type": "string",
|
|
"description": "Line description."
|
|
},
|
|
"Unit": {
|
|
"type": "string",
|
|
"description": "Unit name."
|
|
},
|
|
"UnitPrice": {
|
|
"type": "string",
|
|
"description": "Unit price."
|
|
},
|
|
"Quantity": {
|
|
"type": "number",
|
|
"description": "Quantity."
|
|
},
|
|
"Discount": {
|
|
"type": "string",
|
|
"description": "Discount amount."
|
|
},
|
|
"DiscountPercent": {
|
|
"type": "number",
|
|
"description": "Discount percent."
|
|
},
|
|
"DiscountType": {
|
|
"type": "string",
|
|
"description": "Discount type. Official samples use Amount or Percent."
|
|
},
|
|
"TaxPercent": {
|
|
"type": "string",
|
|
"description": "Tax percent."
|
|
},
|
|
"SaleTypeId": {
|
|
"type": "string",
|
|
"description": "Sale type id."
|
|
},
|
|
"Price": {
|
|
"type": "number",
|
|
"description": "Line price included in the invoice sample."
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"SellerInfo": {
|
|
"type": "object",
|
|
"description": "Seller info.",
|
|
"properties": {
|
|
"SellerName": {
|
|
"type": "string",
|
|
"description": "Seller name."
|
|
},
|
|
"BizDomainId": {
|
|
"type": "string",
|
|
"description": "Seller business-domain id."
|
|
},
|
|
"QuoteExpirationDays": {
|
|
"type": "number",
|
|
"description": "Default quote validity days."
|
|
},
|
|
"SellerEconomicCode": {
|
|
"type": "string",
|
|
"description": "Seller economic code."
|
|
},
|
|
"SellerNationalCode": {
|
|
"type": "string",
|
|
"description": "Seller national code."
|
|
},
|
|
"SellerPostalCode": {
|
|
"type": "string",
|
|
"description": "Seller postal code."
|
|
},
|
|
"SellerProvince": {
|
|
"type": "string",
|
|
"description": "Seller province."
|
|
},
|
|
"SellerGrandCity": {
|
|
"type": "string",
|
|
"description": "Seller grand city."
|
|
},
|
|
"SellerCity": {
|
|
"type": "string",
|
|
"description": "Seller city."
|
|
},
|
|
"SellerAddress": {
|
|
"type": "string",
|
|
"description": "Seller address."
|
|
},
|
|
"SellerPhone": {
|
|
"type": "string",
|
|
"description": "Seller phone."
|
|
},
|
|
"InvoiceConditions": {
|
|
"type": "string",
|
|
"description": "Invoice conditions text."
|
|
},
|
|
"QuoteConditions": {
|
|
"type": "string",
|
|
"description": "Quote conditions text."
|
|
}
|
|
}
|
|
},
|
|
"BuyerInfo": {
|
|
"type": "object",
|
|
"description": "Buyer info.",
|
|
"properties": {
|
|
"BuyerType": {
|
|
"type": "string",
|
|
"description": "Buyer type. Official sample uses Company."
|
|
},
|
|
"BuyerTitle": {
|
|
"type": "string",
|
|
"description": "Buyer title."
|
|
},
|
|
"BuyerName": {
|
|
"type": "string",
|
|
"description": "Buyer name."
|
|
},
|
|
"BuyerEconomicCode": {
|
|
"type": "string",
|
|
"description": "Buyer economic code."
|
|
},
|
|
"BuyerNationalCode": {
|
|
"type": "string",
|
|
"description": "Buyer national code."
|
|
},
|
|
"BuyerNationalID": {
|
|
"type": "string",
|
|
"description": "Buyer national id."
|
|
},
|
|
"BuyerRegistrationNumber": {
|
|
"type": "string",
|
|
"description": "Buyer registration number."
|
|
},
|
|
"BuyerProvince": {
|
|
"type": "string",
|
|
"description": "Buyer province."
|
|
},
|
|
"BuyerGrandCity": {
|
|
"type": "string",
|
|
"description": "Buyer grand city."
|
|
},
|
|
"BuyerCity": {
|
|
"type": "string",
|
|
"description": "Buyer city."
|
|
},
|
|
"BuyerPostalCode": {
|
|
"type": "string",
|
|
"description": "Buyer postal code."
|
|
},
|
|
"BuyerMobilePhone": {
|
|
"type": "string",
|
|
"description": "Buyer mobile phone."
|
|
},
|
|
"BuyerFaxNumber": {
|
|
"type": "string",
|
|
"description": "Buyer fax."
|
|
},
|
|
"BuyerAddress": {
|
|
"type": "object",
|
|
"description": "Grouped key/value collection documented on contact save.",
|
|
"properties": {
|
|
"KeyValues": {
|
|
"type": "array",
|
|
"description": "Labeled key/value rows.",
|
|
"items": {
|
|
"type": "object",
|
|
"description": "One labeled value.",
|
|
"properties": {
|
|
"Key": {
|
|
"type": "string",
|
|
"description": "Label key."
|
|
},
|
|
"Value": {
|
|
"type": "string",
|
|
"description": "Value."
|
|
},
|
|
"Title": {
|
|
"type": "string",
|
|
"description": "Optional display title."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"BuyerPhone": {
|
|
"type": "string",
|
|
"description": "Buyer phone."
|
|
},
|
|
"BuyerEmail": {
|
|
"type": "string",
|
|
"description": "Buyer email."
|
|
}
|
|
}
|
|
},
|
|
"BizdomainProvider": {
|
|
"type": "object",
|
|
"description": "Optional provider object accepted by the official docs.",
|
|
"properties": {}
|
|
},
|
|
"CreatorId": {
|
|
"type": "string",
|
|
"description": "UserId of the creator."
|
|
},
|
|
"IssueDate": {
|
|
"type": "string",
|
|
"description": "Issue date/time."
|
|
},
|
|
"Adjustment": {
|
|
"type": "string",
|
|
"description": "Adjustment amount."
|
|
},
|
|
"DiscountRows": {
|
|
"type": "array",
|
|
"description": "Document-level discount rows.",
|
|
"items": {
|
|
"type": "object",
|
|
"description": "One discount row.",
|
|
"properties": {
|
|
"DiscountName": {
|
|
"type": "string",
|
|
"description": "Discount row name."
|
|
},
|
|
"RowPrice": {
|
|
"type": "string",
|
|
"description": "Discount row price."
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"BizDomainId": {
|
|
"type": "string",
|
|
"description": "Business-domain id."
|
|
},
|
|
"CurrencyId": {
|
|
"type": "number",
|
|
"description": "Currency id."
|
|
},
|
|
"DealId": {
|
|
"type": "string",
|
|
"description": "Related deal id."
|
|
},
|
|
"Description": {
|
|
"type": "string",
|
|
"description": "Document description."
|
|
},
|
|
"QuoteExpirationDays": {
|
|
"type": "number",
|
|
"description": "Quote validity in days."
|
|
}
|
|
},
|
|
"required": [
|
|
"Items",
|
|
"CreatorId",
|
|
"BizDomainId",
|
|
"CurrencyId"
|
|
]
|
|
},
|
|
"tags": [
|
|
"quote"
|
|
],
|
|
"content_type": "application/json",
|
|
"response_root": "Response",
|
|
"timeout_seconds": 30
|
|
},
|
|
{
|
|
"name": "update_invoice",
|
|
"title": "Update Invoice",
|
|
"description": "Update an invoice. Disabled in v1.",
|
|
"entity": "invoice",
|
|
"effect": "write",
|
|
"enabled": false,
|
|
"method": "POST",
|
|
"path": "/api/AccountingInvoice/Update",
|
|
"input_schema": {
|
|
"type": "object",
|
|
"description": "Invoice payload.",
|
|
"properties": {
|
|
"Id": {
|
|
"type": "number",
|
|
"description": "Invoice or quote id."
|
|
},
|
|
"Items": {
|
|
"type": "array",
|
|
"description": "Document lines.",
|
|
"items": {
|
|
"type": "object",
|
|
"description": "One invoice or quote line.",
|
|
"properties": {
|
|
"Id": {
|
|
"type": "string",
|
|
"description": "Existing line id when updating."
|
|
},
|
|
"ProductId": {
|
|
"type": "string",
|
|
"description": "Product id."
|
|
},
|
|
"ProductCode": {
|
|
"type": "string",
|
|
"description": "Product code."
|
|
},
|
|
"VariantId": {
|
|
"type": "string",
|
|
"description": "Variant id."
|
|
},
|
|
"VariantTitle": {
|
|
"type": "string",
|
|
"description": "Variant title."
|
|
},
|
|
"VariantCode": {
|
|
"type": "string",
|
|
"description": "Variant code."
|
|
},
|
|
"Title": {
|
|
"type": "string",
|
|
"description": "Line title."
|
|
},
|
|
"TitleForInvoice": {
|
|
"type": "string",
|
|
"description": "Title printed on the document."
|
|
},
|
|
"newTitle": {
|
|
"type": "string",
|
|
"description": "Replacement title accepted by the quote sample."
|
|
},
|
|
"Description": {
|
|
"type": "string",
|
|
"description": "Line description."
|
|
},
|
|
"Unit": {
|
|
"type": "string",
|
|
"description": "Unit name."
|
|
},
|
|
"UnitPrice": {
|
|
"type": "string",
|
|
"description": "Unit price."
|
|
},
|
|
"Quantity": {
|
|
"type": "number",
|
|
"description": "Quantity."
|
|
},
|
|
"Discount": {
|
|
"type": "string",
|
|
"description": "Discount amount."
|
|
},
|
|
"DiscountPercent": {
|
|
"type": "number",
|
|
"description": "Discount percent."
|
|
},
|
|
"DiscountType": {
|
|
"type": "string",
|
|
"description": "Discount type. Official samples use Amount or Percent."
|
|
},
|
|
"TaxPercent": {
|
|
"type": "string",
|
|
"description": "Tax percent."
|
|
},
|
|
"SaleTypeId": {
|
|
"type": "string",
|
|
"description": "Sale type id."
|
|
},
|
|
"Price": {
|
|
"type": "number",
|
|
"description": "Line price included in the invoice sample."
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"SellerInfo": {
|
|
"type": "object",
|
|
"description": "Seller info.",
|
|
"properties": {
|
|
"SellerName": {
|
|
"type": "string",
|
|
"description": "Seller name."
|
|
},
|
|
"BizDomainId": {
|
|
"type": "string",
|
|
"description": "Seller business-domain id."
|
|
},
|
|
"QuoteExpirationDays": {
|
|
"type": "number",
|
|
"description": "Default quote validity days."
|
|
},
|
|
"SellerEconomicCode": {
|
|
"type": "string",
|
|
"description": "Seller economic code."
|
|
},
|
|
"SellerNationalCode": {
|
|
"type": "string",
|
|
"description": "Seller national code."
|
|
},
|
|
"SellerPostalCode": {
|
|
"type": "string",
|
|
"description": "Seller postal code."
|
|
},
|
|
"SellerProvince": {
|
|
"type": "string",
|
|
"description": "Seller province."
|
|
},
|
|
"SellerGrandCity": {
|
|
"type": "string",
|
|
"description": "Seller grand city."
|
|
},
|
|
"SellerCity": {
|
|
"type": "string",
|
|
"description": "Seller city."
|
|
},
|
|
"SellerAddress": {
|
|
"type": "string",
|
|
"description": "Seller address."
|
|
},
|
|
"SellerPhone": {
|
|
"type": "string",
|
|
"description": "Seller phone."
|
|
},
|
|
"InvoiceConditions": {
|
|
"type": "string",
|
|
"description": "Invoice conditions text."
|
|
},
|
|
"QuoteConditions": {
|
|
"type": "string",
|
|
"description": "Quote conditions text."
|
|
}
|
|
}
|
|
},
|
|
"BuyerInfo": {
|
|
"type": "object",
|
|
"description": "Buyer info.",
|
|
"properties": {
|
|
"BuyerType": {
|
|
"type": "string",
|
|
"description": "Buyer type. Official sample uses Company."
|
|
},
|
|
"BuyerTitle": {
|
|
"type": "string",
|
|
"description": "Buyer title."
|
|
},
|
|
"BuyerName": {
|
|
"type": "string",
|
|
"description": "Buyer name."
|
|
},
|
|
"BuyerEconomicCode": {
|
|
"type": "string",
|
|
"description": "Buyer economic code."
|
|
},
|
|
"BuyerNationalCode": {
|
|
"type": "string",
|
|
"description": "Buyer national code."
|
|
},
|
|
"BuyerNationalID": {
|
|
"type": "string",
|
|
"description": "Buyer national id."
|
|
},
|
|
"BuyerRegistrationNumber": {
|
|
"type": "string",
|
|
"description": "Buyer registration number."
|
|
},
|
|
"BuyerProvince": {
|
|
"type": "string",
|
|
"description": "Buyer province."
|
|
},
|
|
"BuyerGrandCity": {
|
|
"type": "string",
|
|
"description": "Buyer grand city."
|
|
},
|
|
"BuyerCity": {
|
|
"type": "string",
|
|
"description": "Buyer city."
|
|
},
|
|
"BuyerPostalCode": {
|
|
"type": "string",
|
|
"description": "Buyer postal code."
|
|
},
|
|
"BuyerMobilePhone": {
|
|
"type": "string",
|
|
"description": "Buyer mobile phone."
|
|
},
|
|
"BuyerFaxNumber": {
|
|
"type": "string",
|
|
"description": "Buyer fax."
|
|
},
|
|
"BuyerAddress": {
|
|
"type": "object",
|
|
"description": "Grouped key/value collection documented on contact save.",
|
|
"properties": {
|
|
"KeyValues": {
|
|
"type": "array",
|
|
"description": "Labeled key/value rows.",
|
|
"items": {
|
|
"type": "object",
|
|
"description": "One labeled value.",
|
|
"properties": {
|
|
"Key": {
|
|
"type": "string",
|
|
"description": "Label key."
|
|
},
|
|
"Value": {
|
|
"type": "string",
|
|
"description": "Value."
|
|
},
|
|
"Title": {
|
|
"type": "string",
|
|
"description": "Optional display title."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"BuyerPhone": {
|
|
"type": "string",
|
|
"description": "Buyer phone."
|
|
},
|
|
"BuyerEmail": {
|
|
"type": "string",
|
|
"description": "Buyer email."
|
|
}
|
|
}
|
|
},
|
|
"BizdomainProvider": {
|
|
"type": "object",
|
|
"description": "Optional provider object accepted by the official docs.",
|
|
"properties": {}
|
|
},
|
|
"CreatorId": {
|
|
"type": "string",
|
|
"description": "UserId of the creator."
|
|
},
|
|
"IssueDate": {
|
|
"type": "string",
|
|
"description": "Issue date/time."
|
|
},
|
|
"Adjustment": {
|
|
"type": "string",
|
|
"description": "Adjustment amount."
|
|
},
|
|
"DiscountRows": {
|
|
"type": "array",
|
|
"description": "Document-level discount rows.",
|
|
"items": {
|
|
"type": "object",
|
|
"description": "One discount row.",
|
|
"properties": {
|
|
"DiscountName": {
|
|
"type": "string",
|
|
"description": "Discount row name."
|
|
},
|
|
"RowPrice": {
|
|
"type": "string",
|
|
"description": "Discount row price."
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"BizDomainId": {
|
|
"type": "string",
|
|
"description": "Business-domain id."
|
|
},
|
|
"CurrencyId": {
|
|
"type": "number",
|
|
"description": "Currency id."
|
|
},
|
|
"DealId": {
|
|
"type": "string",
|
|
"description": "Related deal id."
|
|
},
|
|
"Description": {
|
|
"type": "string",
|
|
"description": "Document description."
|
|
}
|
|
},
|
|
"required": [
|
|
"Id",
|
|
"Items"
|
|
]
|
|
},
|
|
"tags": [
|
|
"invoice"
|
|
],
|
|
"content_type": "application/json",
|
|
"response_root": "Response",
|
|
"timeout_seconds": 30
|
|
},
|
|
{
|
|
"name": "update_quote",
|
|
"title": "Update Quote",
|
|
"description": "Update a quote. Disabled in v1.",
|
|
"entity": "quote",
|
|
"effect": "write",
|
|
"enabled": false,
|
|
"method": "POST",
|
|
"path": "/api/AccountingQuote/UpdateQuote",
|
|
"input_schema": {
|
|
"type": "object",
|
|
"description": "Quote payload.",
|
|
"properties": {
|
|
"Id": {
|
|
"type": "number",
|
|
"description": "Invoice or quote id."
|
|
},
|
|
"Items": {
|
|
"type": "array",
|
|
"description": "Document lines.",
|
|
"items": {
|
|
"type": "object",
|
|
"description": "One invoice or quote line.",
|
|
"properties": {
|
|
"Id": {
|
|
"type": "string",
|
|
"description": "Existing line id when updating."
|
|
},
|
|
"ProductId": {
|
|
"type": "string",
|
|
"description": "Product id."
|
|
},
|
|
"ProductCode": {
|
|
"type": "string",
|
|
"description": "Product code."
|
|
},
|
|
"VariantId": {
|
|
"type": "string",
|
|
"description": "Variant id."
|
|
},
|
|
"VariantTitle": {
|
|
"type": "string",
|
|
"description": "Variant title."
|
|
},
|
|
"VariantCode": {
|
|
"type": "string",
|
|
"description": "Variant code."
|
|
},
|
|
"Title": {
|
|
"type": "string",
|
|
"description": "Line title."
|
|
},
|
|
"TitleForInvoice": {
|
|
"type": "string",
|
|
"description": "Title printed on the document."
|
|
},
|
|
"newTitle": {
|
|
"type": "string",
|
|
"description": "Replacement title accepted by the quote sample."
|
|
},
|
|
"Description": {
|
|
"type": "string",
|
|
"description": "Line description."
|
|
},
|
|
"Unit": {
|
|
"type": "string",
|
|
"description": "Unit name."
|
|
},
|
|
"UnitPrice": {
|
|
"type": "string",
|
|
"description": "Unit price."
|
|
},
|
|
"Quantity": {
|
|
"type": "number",
|
|
"description": "Quantity."
|
|
},
|
|
"Discount": {
|
|
"type": "string",
|
|
"description": "Discount amount."
|
|
},
|
|
"DiscountPercent": {
|
|
"type": "number",
|
|
"description": "Discount percent."
|
|
},
|
|
"DiscountType": {
|
|
"type": "string",
|
|
"description": "Discount type. Official samples use Amount or Percent."
|
|
},
|
|
"TaxPercent": {
|
|
"type": "string",
|
|
"description": "Tax percent."
|
|
},
|
|
"SaleTypeId": {
|
|
"type": "string",
|
|
"description": "Sale type id."
|
|
},
|
|
"Price": {
|
|
"type": "number",
|
|
"description": "Line price included in the invoice sample."
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"SellerInfo": {
|
|
"type": "object",
|
|
"description": "Seller info.",
|
|
"properties": {
|
|
"SellerName": {
|
|
"type": "string",
|
|
"description": "Seller name."
|
|
},
|
|
"BizDomainId": {
|
|
"type": "string",
|
|
"description": "Seller business-domain id."
|
|
},
|
|
"QuoteExpirationDays": {
|
|
"type": "number",
|
|
"description": "Default quote validity days."
|
|
},
|
|
"SellerEconomicCode": {
|
|
"type": "string",
|
|
"description": "Seller economic code."
|
|
},
|
|
"SellerNationalCode": {
|
|
"type": "string",
|
|
"description": "Seller national code."
|
|
},
|
|
"SellerPostalCode": {
|
|
"type": "string",
|
|
"description": "Seller postal code."
|
|
},
|
|
"SellerProvince": {
|
|
"type": "string",
|
|
"description": "Seller province."
|
|
},
|
|
"SellerGrandCity": {
|
|
"type": "string",
|
|
"description": "Seller grand city."
|
|
},
|
|
"SellerCity": {
|
|
"type": "string",
|
|
"description": "Seller city."
|
|
},
|
|
"SellerAddress": {
|
|
"type": "string",
|
|
"description": "Seller address."
|
|
},
|
|
"SellerPhone": {
|
|
"type": "string",
|
|
"description": "Seller phone."
|
|
},
|
|
"InvoiceConditions": {
|
|
"type": "string",
|
|
"description": "Invoice conditions text."
|
|
},
|
|
"QuoteConditions": {
|
|
"type": "string",
|
|
"description": "Quote conditions text."
|
|
}
|
|
}
|
|
},
|
|
"BuyerInfo": {
|
|
"type": "object",
|
|
"description": "Buyer info.",
|
|
"properties": {
|
|
"BuyerType": {
|
|
"type": "string",
|
|
"description": "Buyer type. Official sample uses Company."
|
|
},
|
|
"BuyerTitle": {
|
|
"type": "string",
|
|
"description": "Buyer title."
|
|
},
|
|
"BuyerName": {
|
|
"type": "string",
|
|
"description": "Buyer name."
|
|
},
|
|
"BuyerEconomicCode": {
|
|
"type": "string",
|
|
"description": "Buyer economic code."
|
|
},
|
|
"BuyerNationalCode": {
|
|
"type": "string",
|
|
"description": "Buyer national code."
|
|
},
|
|
"BuyerNationalID": {
|
|
"type": "string",
|
|
"description": "Buyer national id."
|
|
},
|
|
"BuyerRegistrationNumber": {
|
|
"type": "string",
|
|
"description": "Buyer registration number."
|
|
},
|
|
"BuyerProvince": {
|
|
"type": "string",
|
|
"description": "Buyer province."
|
|
},
|
|
"BuyerGrandCity": {
|
|
"type": "string",
|
|
"description": "Buyer grand city."
|
|
},
|
|
"BuyerCity": {
|
|
"type": "string",
|
|
"description": "Buyer city."
|
|
},
|
|
"BuyerPostalCode": {
|
|
"type": "string",
|
|
"description": "Buyer postal code."
|
|
},
|
|
"BuyerMobilePhone": {
|
|
"type": "string",
|
|
"description": "Buyer mobile phone."
|
|
},
|
|
"BuyerFaxNumber": {
|
|
"type": "string",
|
|
"description": "Buyer fax."
|
|
},
|
|
"BuyerAddress": {
|
|
"type": "object",
|
|
"description": "Grouped key/value collection documented on contact save.",
|
|
"properties": {
|
|
"KeyValues": {
|
|
"type": "array",
|
|
"description": "Labeled key/value rows.",
|
|
"items": {
|
|
"type": "object",
|
|
"description": "One labeled value.",
|
|
"properties": {
|
|
"Key": {
|
|
"type": "string",
|
|
"description": "Label key."
|
|
},
|
|
"Value": {
|
|
"type": "string",
|
|
"description": "Value."
|
|
},
|
|
"Title": {
|
|
"type": "string",
|
|
"description": "Optional display title."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"BuyerPhone": {
|
|
"type": "string",
|
|
"description": "Buyer phone."
|
|
},
|
|
"BuyerEmail": {
|
|
"type": "string",
|
|
"description": "Buyer email."
|
|
}
|
|
}
|
|
},
|
|
"BizdomainProvider": {
|
|
"type": "object",
|
|
"description": "Optional provider object accepted by the official docs.",
|
|
"properties": {}
|
|
},
|
|
"CreatorId": {
|
|
"type": "string",
|
|
"description": "UserId of the creator."
|
|
},
|
|
"IssueDate": {
|
|
"type": "string",
|
|
"description": "Issue date/time."
|
|
},
|
|
"Adjustment": {
|
|
"type": "string",
|
|
"description": "Adjustment amount."
|
|
},
|
|
"DiscountRows": {
|
|
"type": "array",
|
|
"description": "Document-level discount rows.",
|
|
"items": {
|
|
"type": "object",
|
|
"description": "One discount row.",
|
|
"properties": {
|
|
"DiscountName": {
|
|
"type": "string",
|
|
"description": "Discount row name."
|
|
},
|
|
"RowPrice": {
|
|
"type": "string",
|
|
"description": "Discount row price."
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"BizDomainId": {
|
|
"type": "string",
|
|
"description": "Business-domain id."
|
|
},
|
|
"CurrencyId": {
|
|
"type": "number",
|
|
"description": "Currency id."
|
|
},
|
|
"DealId": {
|
|
"type": "string",
|
|
"description": "Related deal id."
|
|
},
|
|
"Description": {
|
|
"type": "string",
|
|
"description": "Document description."
|
|
},
|
|
"QuoteExpirationDays": {
|
|
"type": "number",
|
|
"description": "Quote validity in days."
|
|
}
|
|
},
|
|
"required": [
|
|
"Id",
|
|
"Items"
|
|
]
|
|
},
|
|
"tags": [
|
|
"quote"
|
|
],
|
|
"content_type": "application/json",
|
|
"response_root": "Response",
|
|
"timeout_seconds": 30
|
|
},
|
|
{
|
|
"name": "remove_invoice",
|
|
"title": "Remove Invoice",
|
|
"description": "Remove an invoice by numeric id. Disabled in v1.",
|
|
"entity": "invoice",
|
|
"effect": "delete",
|
|
"enabled": false,
|
|
"method": "POST",
|
|
"path": "/api/AccountingInvoice/Remove",
|
|
"input_schema": {
|
|
"type": "object",
|
|
"description": "Remove invoice.",
|
|
"properties": {
|
|
"id": {
|
|
"type": "number",
|
|
"description": "Invoice id."
|
|
}
|
|
},
|
|
"required": [
|
|
"id"
|
|
]
|
|
},
|
|
"tags": [
|
|
"invoice"
|
|
],
|
|
"content_type": "application/json",
|
|
"response_root": "Response",
|
|
"timeout_seconds": 30
|
|
},
|
|
{
|
|
"name": "remove_quote",
|
|
"title": "Remove Quote",
|
|
"description": "Remove a quote by numeric id. Disabled in v1.",
|
|
"entity": "quote",
|
|
"effect": "delete",
|
|
"enabled": false,
|
|
"method": "POST",
|
|
"path": "/api/AccountingQuote/RemoveQuote",
|
|
"input_schema": {
|
|
"type": "object",
|
|
"description": "Remove quote.",
|
|
"properties": {
|
|
"id": {
|
|
"type": "number",
|
|
"description": "Quote id."
|
|
}
|
|
},
|
|
"required": [
|
|
"id"
|
|
]
|
|
},
|
|
"tags": [
|
|
"quote"
|
|
],
|
|
"content_type": "application/json",
|
|
"response_root": "Response",
|
|
"timeout_seconds": 30
|
|
},
|
|
{
|
|
"name": "get_invoice_or_quote",
|
|
"title": "Get Invoice Or Quote",
|
|
"description": "Get one invoice or quote. Send exactly one of Id, InvoiceFormattedNumber, InvoiceNumber, QuoteFormattedNumber, or QuoteNumber.",
|
|
"entity": "invoice",
|
|
"effect": "read",
|
|
"enabled": true,
|
|
"method": "POST",
|
|
"path": "/api/AccountingInvoice/Get",
|
|
"input_schema": {
|
|
"type": "object",
|
|
"description": "Exactly one lookup field is valid.",
|
|
"properties": {
|
|
"Id": {
|
|
"type": "number",
|
|
"description": "Invoice or quote id."
|
|
},
|
|
"InvoiceFormattedNumber": {
|
|
"type": "string",
|
|
"description": "Formatted invoice number, for example I-23."
|
|
},
|
|
"InvoiceNumber": {
|
|
"type": "string",
|
|
"description": "Invoice number, for example 23.0."
|
|
},
|
|
"QuoteFormattedNumber": {
|
|
"type": "string",
|
|
"description": "Formatted quote number, for example Q-21."
|
|
},
|
|
"QuoteNumber": {
|
|
"type": "string",
|
|
"description": "Quote number, for example 21.0."
|
|
}
|
|
}
|
|
},
|
|
"tags": [
|
|
"invoice",
|
|
"quote"
|
|
],
|
|
"content_type": "application/json",
|
|
"response_root": "Response",
|
|
"timeout_seconds": 30
|
|
},
|
|
{
|
|
"name": "create_case",
|
|
"title": "Create Case",
|
|
"description": "Create a case. Disabled in v1.",
|
|
"entity": "case",
|
|
"effect": "write",
|
|
"enabled": false,
|
|
"method": "POST",
|
|
"path": "/api/Case/Save_v2",
|
|
"input_schema": {
|
|
"type": "object",
|
|
"description": "Create or update a case.",
|
|
"properties": {
|
|
"Case": {
|
|
"type": "object",
|
|
"description": "Case payload.",
|
|
"properties": {
|
|
"Title": {
|
|
"type": "string",
|
|
"description": "Case title."
|
|
},
|
|
"PipelineStageId": {
|
|
"type": "string",
|
|
"description": "Case pipeline stage id from get_case_pipelines."
|
|
},
|
|
"OwnerId": {
|
|
"type": "string",
|
|
"description": "UserId of the owner."
|
|
},
|
|
"Description": {
|
|
"type": "string",
|
|
"description": "Case description."
|
|
},
|
|
"CompanyId": {
|
|
"type": "string",
|
|
"description": "Related company id."
|
|
},
|
|
"PersonId": {
|
|
"type": "string",
|
|
"description": "Related person id."
|
|
},
|
|
"CaseCategoryId": {
|
|
"type": "string",
|
|
"description": "Case category id."
|
|
},
|
|
"DealId": {
|
|
"type": "string",
|
|
"description": "Related deal id."
|
|
},
|
|
"IsDeleted": {
|
|
"type": "boolean",
|
|
"description": "Whether the case is deleted."
|
|
},
|
|
"Status": {
|
|
"type": "string",
|
|
"description": "Case status.",
|
|
"enum": [
|
|
"InProgress",
|
|
"Done"
|
|
]
|
|
},
|
|
"DueDate": {
|
|
"type": "string",
|
|
"description": "Due date/time."
|
|
},
|
|
"Priority": {
|
|
"type": "number",
|
|
"description": "Priority. Documented values are -2, -1, 0, and 1."
|
|
},
|
|
"UserIds": {
|
|
"type": "array",
|
|
"description": "Additional user ids.",
|
|
"items": {
|
|
"type": "string",
|
|
"description": "Related UserId."
|
|
}
|
|
},
|
|
"OtherContactIds": {
|
|
"type": "string",
|
|
"description": "Other contact ids."
|
|
},
|
|
"ResultNote": {
|
|
"type": "string",
|
|
"description": "Result note."
|
|
},
|
|
"VisibilityType": {
|
|
"type": "string",
|
|
"description": "Visibility. Documented values include Owner, OwnerGroup, OwnerSubGroup, and All."
|
|
},
|
|
"Fields": {
|
|
"type": "object",
|
|
"description": "Custom field values keyed by field Key. FieldType must be Case.",
|
|
"additionalProperties": true
|
|
},
|
|
"LabelIds": {
|
|
"type": "array",
|
|
"description": "Case label ids.",
|
|
"items": {
|
|
"type": "string",
|
|
"description": "Case label id from get_case_labels."
|
|
}
|
|
}
|
|
},
|
|
"required": [
|
|
"Title",
|
|
"PipelineStageId",
|
|
"CaseCategoryId"
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"Case"
|
|
]
|
|
},
|
|
"tags": [
|
|
"case"
|
|
],
|
|
"content_type": "application/json",
|
|
"response_root": "Response",
|
|
"timeout_seconds": 30
|
|
},
|
|
{
|
|
"name": "update_case",
|
|
"title": "Update Case",
|
|
"description": "Update a case. Disabled in v1.",
|
|
"entity": "case",
|
|
"effect": "write",
|
|
"enabled": false,
|
|
"method": "POST",
|
|
"path": "/api/Case/Save_v2",
|
|
"input_schema": {
|
|
"type": "object",
|
|
"description": "Create or update a case.",
|
|
"properties": {
|
|
"Case": {
|
|
"type": "object",
|
|
"description": "Case payload.",
|
|
"properties": {
|
|
"Id": {
|
|
"type": "string",
|
|
"description": "Case id."
|
|
},
|
|
"Title": {
|
|
"type": "string",
|
|
"description": "Case title."
|
|
},
|
|
"PipelineStageId": {
|
|
"type": "string",
|
|
"description": "Case pipeline stage id from get_case_pipelines."
|
|
},
|
|
"OwnerId": {
|
|
"type": "string",
|
|
"description": "UserId of the owner."
|
|
},
|
|
"Description": {
|
|
"type": "string",
|
|
"description": "Case description."
|
|
},
|
|
"CompanyId": {
|
|
"type": "string",
|
|
"description": "Related company id."
|
|
},
|
|
"PersonId": {
|
|
"type": "string",
|
|
"description": "Related person id."
|
|
},
|
|
"CaseCategoryId": {
|
|
"type": "string",
|
|
"description": "Case category id."
|
|
},
|
|
"DealId": {
|
|
"type": "string",
|
|
"description": "Related deal id."
|
|
},
|
|
"IsDeleted": {
|
|
"type": "boolean",
|
|
"description": "Whether the case is deleted."
|
|
},
|
|
"Status": {
|
|
"type": "string",
|
|
"description": "Case status.",
|
|
"enum": [
|
|
"InProgress",
|
|
"Done"
|
|
]
|
|
},
|
|
"DueDate": {
|
|
"type": "string",
|
|
"description": "Due date/time."
|
|
},
|
|
"Priority": {
|
|
"type": "number",
|
|
"description": "Priority. Documented values are -2, -1, 0, and 1."
|
|
},
|
|
"UserIds": {
|
|
"type": "array",
|
|
"description": "Additional user ids.",
|
|
"items": {
|
|
"type": "string",
|
|
"description": "Related UserId."
|
|
}
|
|
},
|
|
"OtherContactIds": {
|
|
"type": "string",
|
|
"description": "Other contact ids."
|
|
},
|
|
"ResultNote": {
|
|
"type": "string",
|
|
"description": "Result note."
|
|
},
|
|
"VisibilityType": {
|
|
"type": "string",
|
|
"description": "Visibility. Documented values include Owner, OwnerGroup, OwnerSubGroup, and All."
|
|
},
|
|
"Fields": {
|
|
"type": "object",
|
|
"description": "Custom field values keyed by field Key. FieldType must be Case.",
|
|
"additionalProperties": true
|
|
},
|
|
"LabelIds": {
|
|
"type": "array",
|
|
"description": "Case label ids.",
|
|
"items": {
|
|
"type": "string",
|
|
"description": "Case label id from get_case_labels."
|
|
}
|
|
}
|
|
},
|
|
"required": [
|
|
"Id",
|
|
"Title",
|
|
"PipelineStageId",
|
|
"CaseCategoryId"
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"Case"
|
|
]
|
|
},
|
|
"tags": [
|
|
"case"
|
|
],
|
|
"content_type": "application/json",
|
|
"response_root": "Response",
|
|
"timeout_seconds": 30
|
|
},
|
|
{
|
|
"name": "search_cases",
|
|
"title": "Search Cases",
|
|
"description": "Search cases by title, time range, contact, owner, stage, and related deal.",
|
|
"entity": "case",
|
|
"effect": "read",
|
|
"enabled": true,
|
|
"method": "POST",
|
|
"path": "/api/Case/search",
|
|
"input_schema": {
|
|
"type": "object",
|
|
"description": "Search cases.",
|
|
"properties": {
|
|
"Criteria": {
|
|
"type": "object",
|
|
"description": "Case search criteria.",
|
|
"properties": {
|
|
"SearchTimeField": {
|
|
"type": "integer",
|
|
"description": "Which date field SearchFromTime and SearchToTime apply to."
|
|
},
|
|
"SearchFromTime": {
|
|
"type": "string",
|
|
"description": "Range start."
|
|
},
|
|
"SearchToTime": {
|
|
"type": "string",
|
|
"description": "Range end."
|
|
},
|
|
"ContactIds": {
|
|
"type": "array",
|
|
"description": "Contact filter.",
|
|
"items": {
|
|
"type": "string",
|
|
"description": "Person id."
|
|
}
|
|
},
|
|
"Keywords": {
|
|
"type": "string",
|
|
"description": "Text matched against the case title."
|
|
},
|
|
"OwnerId": {
|
|
"type": "string",
|
|
"description": "Owner UserId."
|
|
},
|
|
"PipelineStageId": {
|
|
"type": "string",
|
|
"description": "Case pipeline stage id."
|
|
},
|
|
"DealId": {
|
|
"type": "string",
|
|
"description": "Related deal id."
|
|
},
|
|
"CustomFields": {
|
|
"type": "array",
|
|
"description": "Custom-field filters.",
|
|
"items": {
|
|
"type": "object",
|
|
"description": "Case custom-field filter. FieldType must be Case.",
|
|
"additionalProperties": true
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"From": {
|
|
"type": "integer",
|
|
"description": "Zero-based offset."
|
|
},
|
|
"Limit": {
|
|
"type": "integer",
|
|
"description": "Page size."
|
|
}
|
|
}
|
|
},
|
|
"pagination": {
|
|
"type": "offset_limit",
|
|
"offset_field": "From",
|
|
"limit_field": "Limit"
|
|
},
|
|
"tags": [
|
|
"case"
|
|
],
|
|
"content_type": "application/json",
|
|
"response_root": "Response",
|
|
"timeout_seconds": 30
|
|
},
|
|
{
|
|
"name": "get_deal_pipelines",
|
|
"title": "Get Deal Pipelines",
|
|
"description": "List deal pipelines and stages. Official docs: no request body.",
|
|
"entity": "pipeline",
|
|
"effect": "read",
|
|
"enabled": true,
|
|
"method": "POST",
|
|
"path": "/api/pipeline/list/0",
|
|
"input_schema": {
|
|
"type": "object",
|
|
"description": "Official Didar docs: this request has no body.",
|
|
"additionalProperties": false
|
|
},
|
|
"tags": [
|
|
"pipeline"
|
|
],
|
|
"content_type": "application/json",
|
|
"response_root": "Response",
|
|
"timeout_seconds": 30
|
|
},
|
|
{
|
|
"name": "get_case_pipelines",
|
|
"title": "Get Case Pipelines",
|
|
"description": "List case pipelines and stages. Official docs: no request body.",
|
|
"entity": "pipeline",
|
|
"effect": "read",
|
|
"enabled": true,
|
|
"method": "POST",
|
|
"path": "/api/pipeline/list/1",
|
|
"input_schema": {
|
|
"type": "object",
|
|
"description": "Official Didar docs: this request has no body.",
|
|
"additionalProperties": false
|
|
},
|
|
"tags": [
|
|
"pipeline"
|
|
],
|
|
"content_type": "application/json",
|
|
"response_root": "Response",
|
|
"timeout_seconds": 30
|
|
},
|
|
{
|
|
"name": "get_segments",
|
|
"title": "Get Segments",
|
|
"description": "List contact segments, or the children of ParentId.",
|
|
"entity": "segment",
|
|
"effect": "read",
|
|
"enabled": true,
|
|
"method": "POST",
|
|
"path": "/api/Segment/GetList",
|
|
"input_schema": {
|
|
"type": "object",
|
|
"description": "List segments.",
|
|
"properties": {
|
|
"ParentId": {
|
|
"type": "string",
|
|
"description": "Optional parent segment id. Omit it to list root segments."
|
|
}
|
|
}
|
|
},
|
|
"tags": [
|
|
"segment"
|
|
],
|
|
"content_type": "application/json",
|
|
"response_root": "Response",
|
|
"timeout_seconds": 30
|
|
},
|
|
{
|
|
"name": "get_case_labels",
|
|
"title": "Get Case Labels",
|
|
"description": "List case labels. Official docs: GET with no request body.",
|
|
"entity": "label",
|
|
"effect": "read",
|
|
"enabled": true,
|
|
"method": "GET",
|
|
"path": "/api/Label/GetCaseLabels",
|
|
"input_schema": {
|
|
"type": "object",
|
|
"description": "Official Didar docs: this request has no body.",
|
|
"additionalProperties": false
|
|
},
|
|
"tags": [
|
|
"label"
|
|
],
|
|
"content_type": "application/json",
|
|
"response_root": "Response",
|
|
"timeout_seconds": 30
|
|
},
|
|
{
|
|
"name": "get_deal_labels",
|
|
"title": "Get Deal Labels",
|
|
"description": "List deal labels. Official docs: GET with no request body.",
|
|
"entity": "label",
|
|
"effect": "read",
|
|
"enabled": true,
|
|
"method": "GET",
|
|
"path": "/api/Label/GetDealLabels",
|
|
"input_schema": {
|
|
"type": "object",
|
|
"description": "Official Didar docs: this request has no body.",
|
|
"additionalProperties": false
|
|
},
|
|
"tags": [
|
|
"label"
|
|
],
|
|
"content_type": "application/json",
|
|
"response_root": "Response",
|
|
"timeout_seconds": 30
|
|
},
|
|
{
|
|
"name": "get_tags",
|
|
"title": "Get Tags",
|
|
"description": "List tags. Official docs: no request body.",
|
|
"entity": "tag",
|
|
"effect": "read",
|
|
"enabled": true,
|
|
"method": "POST",
|
|
"path": "/api/Tag/GetTagList",
|
|
"input_schema": {
|
|
"type": "object",
|
|
"description": "Official Didar docs: this request has no body.",
|
|
"additionalProperties": false
|
|
},
|
|
"tags": [
|
|
"tag"
|
|
],
|
|
"content_type": "application/json",
|
|
"response_root": "Response",
|
|
"timeout_seconds": 30
|
|
},
|
|
{
|
|
"name": "get_lost_reasons",
|
|
"title": "Get Lost Reasons",
|
|
"description": "List deal lost reasons. Official docs: no request body.",
|
|
"entity": "deal",
|
|
"effect": "read",
|
|
"enabled": true,
|
|
"method": "POST",
|
|
"path": "/api/Deal/GetLostReasons",
|
|
"input_schema": {
|
|
"type": "object",
|
|
"description": "Official Didar docs: this request has no body.",
|
|
"additionalProperties": false
|
|
},
|
|
"tags": [
|
|
"deal"
|
|
],
|
|
"content_type": "application/json",
|
|
"response_root": "Response",
|
|
"timeout_seconds": 30
|
|
},
|
|
{
|
|
"name": "get_sources",
|
|
"title": "Get Sources",
|
|
"description": "List lead sources. Official docs: no request body.",
|
|
"entity": "source",
|
|
"effect": "read",
|
|
"enabled": true,
|
|
"method": "POST",
|
|
"path": "/api/Source/GetList",
|
|
"input_schema": {
|
|
"type": "object",
|
|
"description": "Official Didar docs: this request has no body.",
|
|
"additionalProperties": false
|
|
},
|
|
"tags": [
|
|
"source"
|
|
],
|
|
"content_type": "application/json",
|
|
"response_root": "Response",
|
|
"timeout_seconds": 30
|
|
},
|
|
{
|
|
"name": "get_locations",
|
|
"title": "Get Locations",
|
|
"description": "List countries, provinces, and cities. Official docs: no request body.",
|
|
"entity": "location",
|
|
"effect": "read",
|
|
"enabled": true,
|
|
"method": "POST",
|
|
"path": "/api/shared/GetLocations",
|
|
"input_schema": {
|
|
"type": "object",
|
|
"description": "Official Didar docs: this request has no body.",
|
|
"additionalProperties": false
|
|
},
|
|
"tags": [
|
|
"location"
|
|
],
|
|
"content_type": "application/json",
|
|
"response_root": "Response",
|
|
"timeout_seconds": 30
|
|
}
|
|
]
|