Create tickets

Create Support Ticket

This endpoint allows authenticated users to submit a new support ticket on behalf of a customer. It accepts a subject topic, descriptive text, and an optional field update request type to categorize the ticket appropriately. Upon successful submission, the system assigns a unique ticket ID and returns full ticket details for tracking.

Endpoint

POST /api/support/createTicket

Authentication

Bearer token required. Obtain via:

POST https://api.banking.netevia.dev/api/auth/v2

Include in header: Authorization: Bearer {token}
Token lifetime: 10 minutes. Refresh via POST /api/auth/refresh.

When to use

Use this endpoint when a customer needs to submit a query, report an issue, or request a profile field update (such as a change of email, phone, or address). It is the primary entry point for all customer support interactions within the banking application. Each ticket receives a unique ticketId that can be used to track the request through its lifecycle.

Request Body

FieldTypeRequiredDescription
textstringYesThe body of the support ticket. Must be at least 1 character.
topicIdinteger (int32)NoNumeric ID of the support topic category for this ticket.
updateFieldRequeststring (enum)NoIndicates the profile field the customer wants updated. See enum values below.
ticketTypeinteger (int32)NoTicket type code. Accepted values: 1, 2, 21, 24, 26.

updateFieldRequest enum values:
Email, Phone, Address, PrimAuthEmail, PrimAuthPhone, PrimAuthAddress, Owner1Email, Owner1Phone, Owner1Address, Owner2Email, Owner2Phone, Owner2Address, Owner3Email, Owner3Phone, Owner3Address, Owner4Email, Owner4Phone, Owner4Address, Employer, EmployerIdentificationNumber, BusinessStartDate, DateOfBirth, Ssn, GivenName, MiddleName, FamilyName, DoingBusinessAsName, LegalBusinessName, LoanApprove

{
  "topicId": 3,
  "text": "I am unable to access my account and need help resetting my login credentials.",
  "updateFieldRequest": "Email",
  "ticketType": 1
}

Response

200 OK

FieldTypeDescription
ticketIdinteger (int32)Unique identifier assigned to the newly created support ticket.
ticketTopicIdinteger (int32)ID of the topic category associated with this ticket.
ticketTopicobjectDetails of the selected ticket topic (see nested fields below).
ticketTopic.idinteger (int32)Topic ID.
ticketTopic.namestring | nullHuman-readable topic name.
ticketTopic.responseTimestring | nullExpected response time for this topic.
ticketTopic.isDeletedbooleanWhether the topic has been soft-deleted.
ticketTopic.isHiddenbooleanWhether the topic is hidden from customer-facing menus.
userProfileIdinteger (int32)ID of the user profile that submitted the ticket.
createdstring (date-time)ISO 8601 timestamp of when the ticket was created.
textstring | nullThe ticket description text as submitted.
parentTicketIdinteger (int32) | nullID of a parent ticket if this is a follow-up or child ticket.
isNewbooleanIndicates whether the ticket has not yet been reviewed by support staff.
updateFieldRequeststring (enum)The profile field update type requested, if applicable.
ipAddressstring | nullIP address from which the ticket was submitted.
{
  "ticketId": 10482,
  "ticketTopicId": 3,
  "ticketTopic": {
    "id": 3,
    "name": "Account Access",
    "responseTime": "24 hours",
    "isDeleted": false,
    "isHidden": false
  },
  "userProfileId": 7821,
  "created": "2026-06-08T14:35:00Z",
  "text": "I am unable to access my account and need help resetting my login credentials.",
  "parentTicketId": null,
  "isNew": true,
  "updateFieldRequest": "Email",
  "ipAddress": "203.0.113.45"
}

Error Codes

CodeWhen it happens
400text field is missing or empty (minLength: 1 not satisfied), or an invalid enum value is provided for updateFieldRequest or ticketType
401Token missing, expired, or invalid
403Insufficient permissions to create a ticket for the target profile
404Specified topicId does not exist
500Internal server error

Common Mistakes

  • Omitting the required text field or sending an empty string — this will result in a 400 validation error since minLength is 1.
  • Passing an unrecognized integer for ticketType — only values 1, 2, 21, 24, and 26 are accepted; any other value will fail validation.
  • Sending an invalid string for updateFieldRequest that does not match one of the defined enum values exactly (case-sensitive).
  • Using an expired or missing Bearer token, which returns a 401 even if all request fields are valid.

Related Endpoints

  • GET /api/support/getTickets — Retrieve a list of support tickets for the authenticated user
  • POST /api/support/replyTicket — Add a reply or follow-up message to an existing support ticket
  • GET /api/support/getTopics — Retrieve available ticket topic categories and their IDs

Example

curl -X POST https://api.banking.netevia.dev/api/support/createTicket \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "topicId": 3,
    "text": "I am unable to access my account and need help resetting my login credentials.",
    "updateFieldRequest": "Email",
    "ticketType": 1
  }'
Body Params
int32
string
required
length ≥ 1
string
enum
int32
enum
Allowed:
dispute
object
Headers
string
enum
Defaults to application/json

Generated from available response content types

Allowed:
string
enum
Defaults to application/json

Generated from available request content types

Allowed:
Response

Language
Credentials
Bearer
JWT
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
text/plain
application/json
text/json