Case

Case allows users to manage customer service Cases in Maximizer CRM. See below some considerations for Case:

  • An automatic value for CaseNumber property will be generated every time a case is created.\

  • Cases can be assigned to Company or individuals using the property AbEntryKey, also can be tied to an specific contact using the property ContactKey.\

  • There are several properties for Case (ex. Type, Reason, Origin) that have multiple available value options, check FieldOptions collections to identify those possible values.

HowTo's

Read - Case using $PHRASE operator

// POST https://api.maximizer.com/octopus/Read
// Authorization: Bearer <token>
{
    "Case": {
        "Scope": {
            "Fields": {
                "Key": 1,
                "CaseNumber": 1,
                "Subject": 1,
                "Description": 1,
                "AbEntryKey": 1, // Key of Company or Individual the case is related to
                "ContactKey": 1, // Key of Contact the case is related to
                "AssignedTo": {
                    "Uid": 1,
                    "Value": 1
                },
                "Priority": { // See FieldOptions for possible values
                    "Key": 1,
                    "DisplayValue": 1
                },
                "Severity": { // See FieldOptions for possible values
                    "Key": 1,
                    "DisplayValue": 1
                },
                "Status": { // See FieldOptions for possible values
                    "Key": 1,
                    "DisplayValue": 1
                },
                "Owner": {
                    "Uid": 1,
                    "Value": 1
                },
                "FollowUpDate": 1,
                "Overdue": 1,
                "Age": 1,
                "Type": { // See FieldOptions for possible values
                    "Key": 1,
                    "DisplayValue": 1
                },
                "Reason": { // See FieldOptions for possible values
                    "Key": 1,
                    "DisplayValue": 1
                },
                "Origin": { // See FieldOptions for possible values
                    "Key": 1,
                    "DisplayValue": 1
                },
                "Queue": { // See FieldOptions for possible values
                    "Key": 1,
                    "DisplayValue": 1
                },
                "Category": [ // See FieldOptions for possible values
                    {
                        "Key": 1,
                        "DisplayValue": 1
                    }
                ],
                "Product": [ // See FieldOptions for possible values
                    {
                        "Key": 1,
                        "DisplayValue": 1
                    }
                ],
                "ResolvedDate": 1,
                "ResolvedBy": {
                    "Uid": 1,
                    "Value": 1
                }
            }
        },
        "Criteria": {
            "SearchQuery": {
                "$PHRASE": "Case" //$PHRASE operator will search on Subject and Description properties
            },
            "Top": 3
        }
    },
    "Compatibility": {
        "AbEntryKey": "2.0"
    }
}

Read - Overdue cases

// POST https://api.maximizer.com/octopus/Read
// Authorization: Bearer <token>
{
    "Case": {
        "Scope": {
            "Fields": {
                "Key": 1,
                "CaseNumber": 1,
                "Subject": 1,
                "Description": 1,
                "AbEntryKey": 1, // Key of Company or Individual the case is related to
                "ContactKey": 1, // Key of Contact the case is related to
                "AssignedTo": {
                    "Uid": 1,
                    "Value": 1
                },
                "Priority": { // See FieldOptions for possible values
                    "Key": 1,
                    "DisplayValue": 1
                },
                "Severity": { // See FieldOptions for possible values
                    "Key": 1,
                    "DisplayValue": 1
                },
                "Status": { // See FieldOptions for possible values
                    "Key": 1,
                    "DisplayValue": 1
                },
                "Owner": {
                    "Uid": 1,
                    "Value": 1
                },
                "FollowUpDate": 1,
                "Overdue": 1,
                "Age": 1,
                "Type": { // See FieldOptions for possible values
                    "Key": 1,
                    "DisplayValue": 1
                },
                "Reason": { // See FieldOptions for possible values
                    "Key": 1,
                    "DisplayValue": 1
                },
                "Origin": { // See FieldOptions for possible values
                    "Key": 1,
                    "DisplayValue": 1
                },
                "Queue": { // See FieldOptions for possible values
                    "Key": 1,
                    "DisplayValue": 1
                },
                "Category": [ // See FieldOptions for possible values
                    {
                        "Key": 1,
                        "DisplayValue": 1
                    }
                ],
                "Product": [ // See FieldOptions for possible values
                    {
                        "Key": 1,
                        "DisplayValue": 1
                    }
                ],
                "ResolvedDate": 1,
                "ResolvedBy": {
                    "Uid": 1,
                    "Value": 1
                }
            }
        },
        "Criteria": {
            "SearchQuery": {
                "Overdue": {
                    "$EQ": true //Overdue is a calculated field that will be true if FollowUpDate has already passed 
                }
            },
            "Top": 3
        }
    },
    "Compatibility": {
        "AbEntryKey": "2.0"
    },
    "Configuration": {
        "Drivers": { // Needed so we can query for Overdue = True
            "ICaseSearcher": "Maximizer.Model.Access.Sql.CaseSearcher"
        }
    }
}

MetaData

Read Case metadata (simple)

// POST https://api.maximizer.com/octopus/Read
// Authorization: Bearer <token>
{
    "Schema": {
        "Scope": {
            "Fields": 1
        },
        "Criteria": {
            "SearchQuery": {
                "Key": {
                    "$TREE": "/Case"
                }
            }
        }
    },
    "Compatibility": {
        "SchemaObject": "1.0"
    }
}

Read Case metadata (more)

// POST https://api.maximizer.com/octopus/Read
// Authorization: Bearer <token>
{
    "Schema": {
        "Scope": {
            "Fields": {
                "Key": 1,
                "Alias": 1,
                "Type": 1,
                "Name": 1,
                "AppliesTo": 1,
                "Sortable": 1,
                "Nullable": 1,
                "Assignable": 1,
                "Queryable": 1,
                "Mandatory": 1,
                "Attributes": 1,
                "HasOption": 1,
                "DisplayValue": 1
            }
        },
        "Criteria": {
            "SearchQuery": {
                "Key": {
                    "$TREE": "/Case"
                }
            }
        }
    },
    "Compatibility": {
        "SchemaObject": "1.0"
    }
}

FieldOptions

Read Case FieldOptions - Priority

// POST https://api.maximizer.com/octopus/Read
// Authorization: Bearer <token>
{
    "Case": {
        "FieldOptions": {
            "Priority": [
                {
                    "Key": 1,
                    "DisplayValue": 1
                }
            ]
        }
    },
    "Compatibility": {
        "SchemaObject": "1.0"
    }
}

Read Case FieldOptions - Severity

// POST https://api.maximizer.com/octopus/Read
// Authorization: Bearer <token>
{
    "Case": {
        "FieldOptions": {
            "Severity": [
                {
                    "Key": 1,
                    "DisplayValue": 1
                }
            ]
        }
    },
    "Compatibility": {
        "SchemaObject": "1.0"
    }
}

Read Case FieldOptions - Type

// POST https://api.maximizer.com/octopus/Read
// Authorization: Bearer <token>
{
    "Case": {
        "FieldOptions": {
            "Type": [
                {
                    "Key": 1,
                    "DisplayValue": 1
                }
            ]
        }
    },
    "Compatibility": {
        "SchemaObject": "1.0"
    }
}

Read Case FieldOptions - Reason

// POST https://api.maximizer.com/octopus/Read
// Authorization: Bearer <token>
{
    "Case": {
        "FieldOptions": {
            "Reason": [
                {
                    "Key": 1,
                    "DisplayValue": 1
                }
            ]
        }
    },
    "Compatibility": {
        "SchemaObject": "1.0"
    }
}

Read Case FieldOptions - Origin

// POST https://api.maximizer.com/octopus/Read
// Authorization: Bearer <token>
{
    "Case": {
        "FieldOptions": {
            "Origin": [
                {
                    "Key": 1,
                    "DisplayValue": 1
                }
            ]
        }
    },
    "Compatibility": {
        "SchemaObject": "1.0"
    }
}

Read Case FieldOptions - Queue

// POST https://api.maximizer.com/octopus/Read
// Authorization: Bearer <token>
{
    "Case": {
        "FieldOptions": {
            "Queue": [
                {
                    "Key": 1,
                    "DisplayValue": 1
                }
            ]
        }
    },
    "Compatibility": {
        "SchemaObject": "1.0"
    }
}

Read Case FieldOptions - Status

// POST https://api.maximizer.com/octopus/Read
// Authorization: Bearer <token>
{
    "Case": {
        "FieldOptions": {
            "Status": [
                {
                    "Key": 1,
                    "DisplayValue": 1,
                    "Group": [
                        {
                            "Value": 1,
                            "DisplayValue": 1
                        }
                    ]
                }
            ]
        }
    },
    "Compatibility": {
        "SchemaObject": "1.0"
    }
}

Read Case FieldOptions - Category

// POST https://api.maximizer.com/octopus/Read
// Authorization: Bearer <token>
{
    "Case": {
        "FieldOptions": {
            "Category": [
                {
                    "Key": 1,
                    "DisplayValue": 1
                }
            ]
        }
    },
    "Compatibility": {
        "SchemaObject": "1.0"
    }
}

Read Case FieldOptions - Product

// POST https://api.maximizer.com/octopus/Read
// Authorization: Bearer <token>
{
    "Case": {
        "FieldOptions": {
            "Product": [
                {
                    "Key": 1,
                    "DisplayValue": 1
                }
            ]
        }
    },
    "Compatibility": {
        "SchemaObject": "1.0"
    }
}

Case CRUD

Create - Case

// POST https://api.maximizer.com/octopus/Create
// Authorization: Bearer <token>
{
    "Case": {
        "Data": {
            "Key": null, // Will be generated automatically
            "CaseNumber": null, // Will be generated automatically
            "Subject": "Case Subject",
            "Description": "Case Description",
            "AbEntryKey": "QWJFbnRyeQkyMjA1MDUyNTIyMjczODY2NDAwMjlDCTA=", // Key of Company or Individual the case is related to
            "AssignedTo": {
                "Uid": "MASTER"
            },
            "Owner": {
                "Uid": "MASTER"
            },
            "Product": [ // See FieldOptions for possible values
                "1", // Accessories
                "2" // Products
            ],
            "Type": "1", // Question - See FieldOptions for possible values
            "Reason": "4", // Existing Problem - See FieldOptions for possible values
            "Origin": "3", // Email - See FieldOptions for possible values
            "Queue": "2", // Priority - See FieldOptions for possible values
            "Status": "57998", // Assigned - See FieldOptions for possible values
            "Priority": 57900, // Low - See FieldOptions for possible values
            "Severity": 57900 // Low - See FieldOptions for possible values
        }
    },
    "Compatibility": {
        "AbEntryKey": "2.0"
    }
}

Read - Case

// POST https://api.maximizer.com/octopus/Read
// Authorization: Bearer <token>
{
    "Case": {
        "Scope": {
            "Fields": {
                "Key": 1,
                "CaseNumber": 1,
                "Subject": 1,
                "Description": 1,
                "AbEntryKey": 1, // Key of Company or Individual the case is related to
                "ContactKey": 1, // Key of Contact the case is related to
                "AssignedTo": {
                    "Uid": 1,
                    "Value": 1
                },
                "Priority": { // See FieldOptions for possible values
                    "Key": 1,
                    "DisplayValue": 1
                },
                "Severity": { // See FieldOptions for possible values
                    "Key": 1,
                    "DisplayValue": 1
                },
                "Status": { // See FieldOptions for possible values
                    "Key": 1,
                    "DisplayValue": 1
                },
                "Owner": {
                    "Uid": 1,
                    "Value": 1
                },
                "FollowUpDate": 1,
                "Overdue": 1,
                "Age": 1,
                "Type": { // See FieldOptions for possible values
                    "Key": 1,
                    "DisplayValue": 1
                },
                "Reason": { // See FieldOptions for possible values
                    "Key": 1,
                    "DisplayValue": 1
                },
                "Origin": { // See FieldOptions for possible values
                    "Key": 1,
                    "DisplayValue": 1
                },
                "Queue": { // See FieldOptions for possible values
                    "Key": 1,
                    "DisplayValue": 1
                },
                "Category": [ // See FieldOptions for possible values
                    {
                        "Key": 1,
                        "DisplayValue": 1
                    }
                ],
                "Product": [ // See FieldOptions for possible values
                    {
                        "Key": 1,
                        "DisplayValue": 1
                    }
                ],
                "ResolvedDate": 1,
                "ResolvedBy": {
                    "Uid": 1,
                    "Value": 1
                }
            }
        },
        "Criteria": {
            "SearchQuery": {},
            "Top": 3
        }
    },
    "Compatibility": {
        "AbEntryKey": "2.0"
    }
}

Update - Case

// POST https://api.maximizer.com/octopus/Update
// Authorization: Bearer <token>
{
    "Case": {
        "Data": {
            "Key": "Q1NDYXNlCTI0MDUyMjI1MTUxMDI1NDUxMDAwNFMJMA==", // Mandatory
            "Priority": 57902, // High - See FieldOptions for possible values
            "Severity": 57901 // Medium - See FieldOptions for possible values
        }
    },
    "Compatibility": {
        "AbEntryKey": "2.0"
    }
}

Delete - Case

// POST https://api.maximizer.com/octopus/Delete
// Authorization: Bearer <token>
{
    "Case": {
        "Data": {
            "Key": "Q1NDYXNlCTI0MDUyMjI1MTUxMDI1NDUxMDAwNFMJMA==" // Mandatory
        }
    }
}