POST /api/tickets

Opens a new ticket.

Note: If you are using markdown, and will be incorporating one or more artifacts in your ticket, you must upload the artifacts first. Run the POST /api/boards/items/artifacts operation to upload the first artifact and the POST /api/boards/items/{BoardItemID}/artifacts operation to upload any subsequent artifacts. Use the values from the responses, such as the BoardItemID and the image paths, to construct the payload for adding the ticket.

Authorization Roles/Permissions: Must be logged in. Must be an authorized user for the resource the ticket relates to.

Workflow: A default workflow is in effect for new tickets, unless a custom workflow is specified. By default, when a new ticket is created, the @Create initial action is used to start the workflow for the new ticket. This places the new ticket in an Open state. This is the default behavior; if a custom workflow is in use, the initial action is determined by the custom workflow. For more information on workflow, see Executing Workflow Actions.

This topic includes the following sections:

HTTP Method

POST

URL

https://{hostname}/api/tickets

Sample Request

The example below shows a request to add a specific ticket.

Sample Request URL

https://{hostname}/api/tickets

Sample request headers

POST /api/tickets HTTP/1.1
Host: {hostname}
Accept: text/html
Content-Type: application/json
X-Csrf-Token_acmepaymentscorp: TokenID%3D8ed70a13-8469-11e8-b37a-b155e4eabeb8%2CexpirationTime%3D153...

Sample request body: application/json

{
  "UserID":"ef676bf9-bbc9-43eb-b5dd-8c1997ce88bf.acmepaymentscorp",
  "Description":"The app allows account access without login if you have the UserID.",
  "Title":"Security issue",
  "Environment":"Production",
  "APIID":"7900ce71-62f7-4113-9e12-0e569a819cda.acmepaymentscorp",
  "AppID":"",
  "Label":[
    "com.soa.ticket.label.priority.high"
  ],
  "Tag":[
    
  ],
  "BoardItemArtifacts":{
    "BoardItemArtifact":[
      
    ]
  },
  "DescriptionMediaType":"text/markdown"
}

Request Headers

For general information on request header values, refer to HTTP Request Headers.

Header Description
Accept Any Accept header value that supports a response Content-Type of text/plain is valid; for example, */*.
Content-Type

Any one of the following media types is valid for the request Content-Type:

application/json or application/xml

application/vnd.soa.v71+json or application/vnd.soa.v71+xml

application/vnd.soa.v72+json or application/vnd.soa.v72+xml

application/vnd.soa.v80+json or application/vnd.soa.v80+xml

application/vnd.soa.v81+json or application/vnd.soa.v81+xml

Cookie AtmoAuthToken_{fedmemberid}={cookie value, which usually starts with TokenID}—The platform cookie. This is the Akana API Platform authorization token, and must be sent with every API request that requires login. For more information and an example, see Session cookies.
X-Csrf-Token_{fedmemberID} The CSRF prevention header; may or may not be required, depending on platform settings. See CSRF Prevention on the Platform. By default, the CSRF header is not required for GET operations and is required for all others, with a few exceptions relating to user login.

Request Parameters

Parameter Parm Type Data Type Required Description
Ticket Body Ticket Required Includes information about a ticket. The request message must include: APIID, Title, Description, Environment, UserID, and Label.

Response

If successful, this operation returns HTTP status code 200, with the TicketID for the new ticket.

Sample Response

The sample response below shows successful completion of this operation.

Sample response headers

HTTP/1.1 200 OK
Content-Type: text/plain
Date: Thu, 11 Mar 2021 20:41:54 GMT

Sample response body

ticket10489.acmepaymentscorp

Response Headers

For general information on response header values, refer to HTTP Response Headers.

Header Description
Content-Type text/plain

Response Body

Name Type Description
TicketID string The unique ID for the new ticket.

Error Codes/Messages

If the call is unsuccessful an error code/message is returned. One or more examples of possible errors for this operation are shown below.

Item Value
400 Bad request: Returned if the client sends invalid parameters or body content. For example, you might get this response if you send an incorrect JSON object in the request, or specified the wrong media type in the Content-Type header.
401 Unauthorized. For example, you would get this response if you didn't include the custom X-Csrf-Token_{fedmemberID} header in the request, when it was required by the platform settings; or if you included an invalid or expired value for this header. You would also get this response for any operation that requires login (almost all) if the login cookie was missing.
405 Method Not Allowed. You might get this if there is an error in the URL, or if you used the wrong HTTP verb.
500 An error occurred processing the call.

More information about Akana API Platform API error messages.