Skip to content

Function: createCustomerRequest() ​

ts
function createCustomerRequest(
   client, 
   parameters, 
   options?
): Promise<{
[key: string]: unknown;
  _expands?: string[];
  _links?: {
   [key: string]: unknown;
     jiraRest?: string;
     self?: string;
     web?: string;
  };
  createdDate?: {
   [key: string]: unknown;
     epochMillis?: number;
     friendly?: string;
     iso8601?: string;
     jira?: string;
  };
  currentStatus?: {
   [key: string]: unknown;
     status?: string;
     statusDate?: {
      [key: string]: unknown;
        epochMillis?: number;
        friendly?: string;
        iso8601?: string;
        jira?: string;
     };
  };
  issueId?: string;
  issueKey?: string;
  participants?: {
   [key: string]: unknown;
     _expands?: string[];
     _links?: {
      [key: string]: unknown;
        base?: string;
        context?: string;
        next?: string;
        prev?: string;
        self?: string;
     };
     isLastPage?: boolean;
     limit?: number;
     maxResultWindow?: number;
     size?: number;
     start?: number;
     values?: object[];
  };
  reporter?: {
   [key: string]: unknown;
     _links?: {
      [key: string]: unknown;
        avatarUrls?: Record<string, any>;
        jiraRest?: string;
        self?: string;
     };
     active?: boolean;
     displayName?: string;
     emailAddress?: string;
     key?: string;
     name?: string;
     timeZone?: string;
  };
  requestFieldValues?: object[];
  requestType?: {
   [key: string]: unknown;
     _links?: {
      [key: string]: unknown;
        self?: string;
     };
     description?: string;
     groupIds?: string[];
     helpText?: string;
     icon?: {
      [key: string]: unknown;
        _links?: {
         [key: string]: unknown;
           iconUrls?: Record<string, any>;
        };
        id?: string;
     };
     id?: string;
     name?: string;
     restrictionStatus?: string & object | "OPEN" | "RESTRICTED";
     serviceDeskId?: string;
  };
  requestTypeId?: string;
  serviceDesk?: {
   [key: string]: unknown;
     _links?: {
      [key: string]: unknown;
        portal?: string;
        self?: string;
     };
     id?: string;
     projectId?: string;
     projectKey?: string;
     projectName?: string;
  };
  serviceDeskId?: string;
  sla?: {
   [key: string]: unknown;
     _expands?: string[];
     _links?: {
      [key: string]: unknown;
        base?: string;
        context?: string;
        next?: string;
        prev?: string;
        self?: string;
     };
     isLastPage?: boolean;
     limit?: number;
     maxResultWindow?: number;
     size?: number;
     start?: number;
     values?: object[];
  };
  status?: {
   [key: string]: unknown;
     _expands?: string[];
     _links?: {
      [key: string]: unknown;
        base?: string;
        context?: string;
        next?: string;
        prev?: string;
        self?: string;
     };
     isLastPage?: boolean;
     limit?: number;
     maxResultWindow?: number;
     size?: number;
     start?: number;
     values?: object[];
  };
}>;

Defined in: src/serviceDeskServer/api/customerRequests.ts:162

Creates a customer request in a service project. The service project and request type are required. The fields that are mandatory for the request type are also required. If you need the list of the fields required for the request type, you can get it via this resource: servicedesk/{serviceDeskId}/requesttype/{requestTypeId}/field

Notes:

  • The fields for a request type may vary based on the permissions of the currently authenticated user:

    • raiseOnBehalfOf field - Not available to users who only have the Service Desk Customer permission.
    • requestParticipants field - Not available to users who only have the Service Desk Customer permission or if the feature is turned off for customers.
  • Schema of requestFieldValues field is a map of Jira's field's ID and its value, which are JSON ready objects. The object value will be interpreted with JSON semantics according to the specific field requirements. So a simple field like summary or number customer field might take String / Integer while other fields like Multi User Picker will take a more complex object that has JSON semantics. Refer to Field input formats reference on what field types take what values.

Parameters ​

ParameterType
clientClient
parameters{ raiseOnBehalfOf?: string; requestFieldValues?: Record<string, any>; requestParticipants?: string[]; requestTypeId?: string; serviceDeskId?: string; }
parameters.raiseOnBehalfOf?string
parameters.requestFieldValues?Record<string, any>
parameters.requestParticipants?string[]
parameters.requestTypeId?string
parameters.serviceDeskId?string
options?RequestOptions

Returns ​

Promise<{ [key: string]: unknown; _expands?: string[]; _links?: { [key: string]: unknown; jiraRest?: string; self?: string; web?: string; }; createdDate?: { [key: string]: unknown; epochMillis?: number; friendly?: string; iso8601?: string; jira?: string; }; currentStatus?: { [key: string]: unknown; status?: string; statusDate?: { [key: string]: unknown; epochMillis?: number; friendly?: string; iso8601?: string; jira?: string; }; }; issueId?: string; issueKey?: string; participants?: { [key: string]: unknown; _expands?: string[]; _links?: { [key: string]: unknown; base?: string; context?: string; next?: string; prev?: string; self?: string; }; isLastPage?: boolean; limit?: number; maxResultWindow?: number; size?: number; start?: number; values?: object[]; }; reporter?: { [key: string]: unknown; _links?: { [key: string]: unknown; avatarUrls?: Record<string, any>; jiraRest?: string; self?: string; }; active?: boolean; displayName?: string; emailAddress?: string; key?: string; name?: string; timeZone?: string; }; requestFieldValues?: object[]; requestType?: { [key: string]: unknown; _links?: { [key: string]: unknown; self?: string; }; description?: string; groupIds?: string[]; helpText?: string; icon?: { [key: string]: unknown; _links?: { [key: string]: unknown; iconUrls?: Record<string, any>; }; id?: string; }; id?: string; name?: string; restrictionStatus?: string & object | "OPEN" | "RESTRICTED"; serviceDeskId?: string; }; requestTypeId?: string; serviceDesk?: { [key: string]: unknown; _links?: { [key: string]: unknown; portal?: string; self?: string; }; id?: string; projectId?: string; projectKey?: string; projectName?: string; }; serviceDeskId?: string; sla?: { [key: string]: unknown; _expands?: string[]; _links?: { [key: string]: unknown; base?: string; context?: string; next?: string; prev?: string; self?: string; }; isLastPage?: boolean; limit?: number; maxResultWindow?: number; size?: number; start?: number; values?: object[]; }; status?: { [key: string]: unknown; _expands?: string[]; _links?: { [key: string]: unknown; base?: string; context?: string; next?: string; prev?: string; self?: string; }; isLastPage?: boolean; limit?: number; maxResultWindow?: number; size?: number; start?: number; values?: object[]; }; }>