Sample API code - How to add a ticket

Updated: 06/06/2022
Article #: 215


Creating a ticket in Cayzu using the API involves 11 steps listed below. To get your own access token, you will need to have signed up for an account and have followed this FAQ

 

 

Step 1. Get ticket Owner/Contact

curl -X GET "https://api.cayzu.com/api/search/contacts?token=13d118af-d6e7-4251-ab6a-73d01d5474ef&q=j"

Parameter:
token - your access token
q - query for search contact by letters ( In this case "j" returns contacts with name starting from "j")

Response:
 {
  "contacts": [
    {
      "address1": null,
      "customerid": 26347,
      "alternate_phone_number": null,
      "city": null,
      "company_name": "Individual",
      "country": null,
      "date_time_format": {
        "adjust_for_daylight_savings": true,
        "date_format": {
          "name": "MM/dd/yyyy",
          "id": 0
        },
        "time_format": {
          "name": "hh:mm tt",
          "id": 0
        },
        "id": null
      },
      "description": null,
      "full_name": "Jessie Cayzu",
      "is_active": false,
      "is_agent": false,
      "location": null,
      "phone_number": null,
      "postal_code": null,
      "signature": null,
      "title": null,
      "username": "facebook/1684175595173124",
      "id": 28503
    },
    {
      "address1": null,
      "customerid": 29677,
      "alternate_phone_number": null,
      "city": null,
      "company_name": "Individual",
      "country": null,
      "date_time_format": {
        "adjust_for_daylight_savings": true,
        "date_format": {
          "name": "MM/dd/yyyy",
          "id": 0
        },
        "time_format": {
          "name": "hh:mm tt",
          "id": 0
        },
        "id": null
      },
      "description": null,
      "full_name": "Jorah",
      "is_active": false,
      "is_agent": false,
      "location": null,
      "phone_number": null,
      "postal_code": null,
      "signature": null,
      "title": null,
      "username": "jorah@mailinator.com",
      "id": 32312
    }
  ],
  "agents": [],
  "tickets": []
}

Step 2. Get Priorities

curl -X GET "https://api.cayzu.com/api/Priority?token=13d118af-d6e7-4251-ab6a-73d01d5474ef"

Parameter:
token - your access token

Response:
[
  {
    "name": "Low",
    "system_type": 20,
    "id": 12840
  },
  {
    "name": "Medium",
    "system_type": 40,
    "id": 12841
  },
  {
    "name": "High",
    "system_type": 60,
    "id": 12842
  },
  {
    "name": "Urgent",
    "system_type": 80,
    "id": 12843
  }
]

Step 3. Get Brands

curl -X GET "https://api.cayzu.com/api/Brand/for_provider?token=13d118af-d6e7-4251-ab6a-73d01d5474ef"

Parameter:

token - your access token

Response:

[
  {
    "id": 9658,
    "billing_rate": 0.0,
    "phone_number": null,
    "incoming_domain": "fbaskpermission.cayzu.com",
    "is_default": true,
    "name": "Test Company",
    "primary_language": "English",
    "provider_id": 7733
  }
]

Step 4. Get Products

curl -X GET "https://api.cayzu.com/api/Product?brandid=9658&token=13d118af-d6e7-4251-ab6a-73d01d5474ef"
Parameter:

brandId - your brand Id

token - your access token
Response:
[
  {
    "description": "A support ticket system",
    "name": "Support",
    "id": 8419
  }


Step 5. Get Source

curl -X GET "https://api.cayzu.com/api/Source?token=13d118af-d6e7-4251-ab6a-73d01d5474ef"

Parameter:
token - your access token

Response:
[
  {
    "name": "Email",
    "system_type": 1,
    "id": 14553
  },
  {
    "name": "Phone",
    "system_type": 2,
    "id": 14554
  },
  {
    "name": "Web Portal",
    "system_type": 3,
    "id": 14555
  },
  {
    "name": "Widget",
    "system_type": 5,
    "id": 14556
  },
  {
    "name": "Mobile/API",
    "system_type": 4,
    "id": 14557
  }
]

Step 6. Get Group

curl -X GET "https://api.cayzu.com/api/Group/Get?pageNumber=1&pageSize=20&token=13d118af-d6e7-4251-ab6a-73d01d5474ef"

Parameter:
token - your access token

pageNumber - the page number to get

pageSize - the page size to get

Response:

{
  "is_last": true,
  "groups": [
    {
      "agent_ids": [
        23386,
        29173,
        41404,
        41405
      ],
      "date_created": "2015-10-16T10:11:27.6800828Z",
      "description": "General group",
      "name": "General",
      "is_default": true,
      "provider_id": 7733,
      "escalate_in_minutes": 0,
      "is_by_business_hours": false,
      "round_robin_enabled": false,
      "agent_ids_to_escalate_to": [],
      "id": 12482
    }
  ]
}

Step 7. Get Status

curl -X GET "https://api.cayzu.com/api/Status?token=13d118af-d6e7-4251-ab6a-73d01d5474ef"

Parameter:
token - your access token

Response:
[
  {
    "is_resolved": true,
    "name": "Resolved",
    "system_type": 3,
    "id": 18342
  },
  {
    "is_resolved": true,
    "name": "Not Applicable",
    "system_type": 6,
    "id": 18343
  },
  {
    "is_resolved": true,
    "name": "Duplicate",
    "system_type": 7,
    "id": 18344
  },
  {
    "is_resolved": false,
    "name": "In Progress",
    "system_type": 13,
    "id": 18345
  },
  {
    "is_resolved": false,
    "name": "Pending Support",
   "system_type": 10,
    "id": 18346
  },
  {
    "is_resolved": false,
    "name": "Pending Customer",
    "system_type": 11,
    "id": 18347
  },
  {
    "is_resolved": false,
    "name": "Pending Development",
    "system_type": 9,
    "id": 18348
  },
  {
    "is_resolved": false,
    "name": "Probably Resolved",
    "system_type": 12,
    "id": 18349
  }
]

Step 8. Get Ticket Type

curl -X GET "https://api.cayzu.com/api/Ticket_Type?token=13d118af-d6e7-4251-ab6a-73d01d5474ef"

Parameters:
token - your access token

Response:
[
  {
    "name": "Inquiry",
    "system_type": 1,
    "id": 12840
  },
  {
    "name": "Issue",
    "system_type": 2,
    "id": 12841
  },
  {
    "name": "Feature Request",
    "system_type": 3,
    "id": 12842
  },
  {
    "name": "Complaint",
    "system_type": 4,
    "id": 12843
  }
]

Step 9. Get Custom fields

curl -X GET "https://api.cayzu.com/api/Forms_Custom_Field?token=13d118af-d6e7-4251-ab6a-73d01d5474ef"

Parameter:
token - your access token

Response:

[
  {
    "id": 8225,
    "agent_label": "Number1",
    "customer_label": "Number1",
    "field_type": "Numeric",
    "is_agent_required": false,
    "is_archived": false,
    "is_customer_required": false,
    "is_hidden_from_customer": false,
    "is_required_when_resolving": false,
    "provider_id": 1117,
    "usage": "Form",
    "Values":
    [
         "",
         ""
    ]
  }


Step 10. Get Form

curl -X GET "https://api.cayzu.com/api/CustomForm?brandId=9658&token=13d118af-d6e7-4251-ab6a-73d01d5474ef"

Parameters:

token - your access token

brandId - your BrandID

Response

[
  {
    "id": 3427,
    "brand_id": 9658,
    "date_created": "2015-10-16T10:11:39.8275824Z",
    "description": null,
    "is_enabled": true,
    "is_primary": true,
    "is_system": true,
    "name": "Test Company",
    "form_title": null,
    "fields": [
      {
        "column": 0,
        "field": {
          "field_id": 1,
          "is_system": true,
          "name": "Email Address"
        },
        "is_displayed": true,
        "is_required": true,
        "row": 1
      },
      {
        "column": 0,
        "field": {
          "field_id": 4,
          "is_system": true,
          "name": "Product"
        },
        "is_displayed": true,
        "is_required": false,
        "row": 2
      },
      {
        "column": 0,
        "field": {
          "field_id": 5,
          "is_system": true,
          "name": "Type"
        },
        "is_displayed": true,
        "is_required": false,
        "row": 3
      },
      {
        "column": 0,
        "field": {
          "field_id": 6,
          "is_system": true,
          "name": "Priority"
        },
        "is_displayed": true,
        "is_required": false,
        "row": 4
      },
      {
        "column": 0,
        "field": {
          "field_id": 2,
          "is_system": true,
          "name": "Subject"
        },
        "is_displayed": true,
        "is_required": true,
        "row": 5
      },
      {
        "column": 0,
        "field": {
          "field_id": 3,
          "is_system": true,
          "name": "Description"
        },
        "is_displayed": true,
        "is_required": true,
        "row": 6
      }
    ],
    "hidden_fields": [
      {
        "field": {
          "field_id": 7,
          "is_system": true,
          "name": "Source"
        },
        "value": "14555"
      },
      {
        "field": {
          "field_id": 8,
          "is_system": true,
          "name": "Due Date"
        },
        "value": ""
      },
      {
        "field": {
          "field_id": 9,
          "is_system": true,
          "name": "Tag"
        },
        "value": ""
      }
    ]
  }
]

Step 11. Create Ticket

curl -X POST "https://api.cayzu.com/api/Support_Ticket/Post?disableNotification={false}&token=13d118af-d6e7-4251-ab6a-73d01d5474ef"

Parameters:

token - your access token

post body - (use values for owner_id - contact Id, brand_id, form_id, priority_id, product_id, source_id, status_id, group_id, ticket_type_id from previous responses )

{
    "assigned_to_full_name": null,
    "body": "This is a test ticket, please feel free to resolve it.",
    "brand_id": 9658,
    "is_resolved": true,
    "overall_status": 18342,
    "owner_id": 32312,
    "priority": 12841,
    "product": 8419,
    "source": 14555,
    "subject": "sample string 8",
    "ticket_type": 12841,
    "Cc": null,
    "form_id": 3427,
    "tags": [],
    "group_id": 12482,
    "custom_fields":
    [
     {
       "Name": "Number1",
       "Type": "number8225",
       "Value": "3"
      }
    ]
}

 Response:
{
  "row_guid": "bca45e7a-eb30-4920-bfb1-135d8fc529c4",
  "sub_id": 55,
  "id": 259032,
  "errors": [],
  "is_valid": true
}

 

 

Want more information on Cayzu Help Desk? Visit www.cayzu.com

 







Rate this Topic:
Rating: 3.50 / Votes: 2