UNPKG

fetch-jsd

Version:

A simple and typed library, based on OpenAPI spec from developer.atlassian.com, for accessing product APIs.

1,746 lines (1,541 loc) 110 kB
# fetch-jsd A simple and typed library, based on OpenAPI spec from developer.atlassian.com, for accessing product APIs. [![TypeScript](https://badgen.net/badge/icon/typescript?icon=typescript&label)](https://www.typescriptlang.org) # Fetch Jsd - Documentation ## Contents * [CustomerApi](#customer-api) * [InfoApi](#info-api) * [KnowledgebaseApi](#knowledgebase-api) * [OrganizationApi](#organization-api) * [RequestApi](#request-api) * [RequesttypeApi](#requesttype-api) * [ServicedeskApi](#servicedesk-api) ## Methods ___ ### The CustomerApi object ##### `createCustomer()` - Create customer This method adds a customer to the Jira Service Desk instance by passing a JSON file including an email address and display name. The display name does not need to be unique. The record's identifiers, `name` and `key`, are automatically generated from the request details. *Usage:* ``` import { CustomerApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new CustomerApi(config).createCustomer({ CustomerCreateDTO: { ... } }); ``` ___ ### The InfoApi object ##### `getInfo()` - Get info This method retrieves information about the Jira Service Desk instance such as software version, builds, and related links. *Usage:* ``` import { InfoApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new InfoApi(config).getInfo({ ...args }); ``` ___ ### The KnowledgebaseApi object ##### `getArticles()` - Get articles Returns articles which match the given query string across all service desks. *Usage:* ``` import { KnowledgebaseApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new KnowledgebaseApi(config).getArticles({ ...args }); ``` ___ ### The OrganizationApi object ##### `addOrganization()` - Add organization This method adds an organization to a service desk. If the organization ID is already associated with the service desk, no change is made and the resource returns a 204 success code. *Usage:* ``` import { OrganizationApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new OrganizationApi(config).addOrganization({ serviceDeskId: integer OrganizationServiceDeskUpdateDTO: { ... } }); ``` ##### `addUsersToOrganization()` - Add users to organization This method adds users to an organization. *Usage:* ``` import { OrganizationApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new OrganizationApi(config).addUsersToOrganization({ organizationId: integer UsersOrganizationUpdateDTO: { ... } }); ``` ##### `createOrganization()` - Create organization This method creates an organization by passing the name of the organization. *Usage:* ``` import { OrganizationApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new OrganizationApi(config).createOrganization({ OrganizationCreateDTO: { ... } }); ``` ##### `deleteOrganization()` - Delete organization This method deletes an organization. Note that the organization is deleted regardless of other associations it may have. For example, associations with service desks. *Usage:* ``` import { OrganizationApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new OrganizationApi(config).deleteOrganization({ ...args }); ``` ##### `deleteProperty()` - Delete property Removes a property from an organization. *Usage:* ``` import { OrganizationApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new OrganizationApi(config).deleteProperty({ ...args }); ``` ##### `getOrganization()` - Get organization This method returns details of an organization. Use this method to get organization details whenever your application component is passed an organization ID but needs to display other organization details. *Usage:* ``` import { OrganizationApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new OrganizationApi(config).getOrganization({ ...args }); ``` ##### `getOrganizations()` - Get organizations This method returns a list of organizations in the Jira Service Desk instance. Use this method when you want to present a list of organizations or want to locate an organization by name. *Usage:* ``` import { OrganizationApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new OrganizationApi(config).getOrganizations({ ...args }); ``` ##### `getOrganizations1()` - Get organizations This method returns a list of all organizations associated with a service desk. *Usage:* ``` import { OrganizationApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new OrganizationApi(config).getOrganizations1({ ...args }); ``` ##### `getPropertiesKeys()` - Get properties keys Returns the keys of all properties for an organization. Use this resource when you need to find out what additional properties items have been added to an organization. *Usage:* ``` import { OrganizationApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new OrganizationApi(config).getPropertiesKeys({ ...args }); ``` ##### `getProperty()` - Get property Returns the value of a property from an organization. Use this method to obtain the JSON content for an organization's property. *Usage:* ``` import { OrganizationApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new OrganizationApi(config).getProperty({ ...args }); ``` ##### `getUsersInOrganization()` - Get users in organization This method returns all the users associated with an organization. Use this method where you want to provide a list of users for an organization or determine if a user is associated with an organization. *Usage:* ``` import { OrganizationApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new OrganizationApi(config).getUsersInOrganization({ ...args }); ``` ##### `removeOrganization()` - Remove organization This method removes an organization from a service desk. If the organization ID does not match an organization associated with the service desk, no change is made and the resource returns a 204 success code. *Usage:* ``` import { OrganizationApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new OrganizationApi(config).removeOrganization({ serviceDeskId: integer OrganizationServiceDeskUpdateDTO: { ... } }); ``` ##### `removeUsersFromOrganization()` - Remove users from organization This method removes users from an organization. *Usage:* ``` import { OrganizationApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new OrganizationApi(config).removeUsersFromOrganization({ organizationId: integer UsersOrganizationUpdateDTO: { ... } }); ``` ##### `setProperty()` - Set property Sets the value of a property for an organization. Use this resource to store custom data against an organization. *Usage:* ``` import { OrganizationApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new OrganizationApi(config).setProperty({ ...args }); ``` ___ ### The RequestApi object ##### `addRequestParticipants()` - Add request participants This method adds participants to a customer request. *Usage:* ``` import { RequestApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new RequestApi(config).addRequestParticipants({ issueIdOrKey: string RequestParticipantUpdateDTO: { ... } }); ``` ##### `answerApproval()` - Answer approval This method enables a user to **Approve** or **Decline** an approval on a customer request. The approval is assumed to be owned by the user making the call. *Usage:* ``` import { RequestApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new RequestApi(config).answerApproval({ issueIdOrKey: string approvalId: integer ApprovalDecisionRequestDTO: { ... } }); ``` ##### `createAttachment()` - Create attachment This method adds one or more temporary files (attached to the request's service desk using [servicedesk/\{serviceDeskId\}/attachTemporaryFile](#api-servicedesk-serviceDeskId-attachTemporaryFile-post)) as attachments to a customer request and set the attachment visibility using the `public` flag. Also, it is possible to include a comment with the attachments. *Usage:* ``` import { RequestApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new RequestApi(config).createAttachment({ issueIdOrKey: string AttachmentCreateDTO: { ... } }); ``` ##### `createCustomerRequest()` - Create customer request This method creates a customer request in a service desk. *Usage:* ``` import { RequestApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new RequestApi(config).createCustomerRequest({ RequestCreateDTO: { ... } }); ``` ##### `createRequestComment()` - Create request comment This method creates a public or private (internal) comment on a customer request, with the comment visibility set by `public`. The user recorded as the author of the comment. *Usage:* ``` import { RequestApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new RequestApi(config).createRequestComment({ issueIdOrKey: string CommentCreateDTO: { ... } }); ``` ##### `deleteFeedback()` - Delete feedback This method deletes the feedback of request using it's `requestKey` or `requestId` *Usage:* ``` import { RequestApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new RequestApi(config).deleteFeedback({ ...args }); ``` ##### `getApprovalById()` - Get approval by id This method returns an approval. Use this method to determine the status of an approval and the list of approvers. *Usage:* ``` import { RequestApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new RequestApi(config).getApprovalById({ ...args }); ``` ##### `getApprovals()` - Get approvals This method returns all approvals on a customer request. *Usage:* ``` import { RequestApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new RequestApi(config).getApprovals({ ...args }); ``` ##### `getAttachmentsForRequest()` - Get attachments for request This method returns all the attachments for a customer requests. *Usage:* ``` import { RequestApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new RequestApi(config).getAttachmentsForRequest({ ...args }); ``` ##### `getCommentAttachments()` - Get comment attachments This method returns the attachments referenced in a comment. *Usage:* ``` import { RequestApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new RequestApi(config).getCommentAttachments({ ...args }); ``` ##### `getCustomerRequestByIdOrKey()` - Get customer request by id or key This method returns a customer request. *Usage:* ``` import { RequestApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new RequestApi(config).getCustomerRequestByIdOrKey({ ...args }); ``` ##### `getCustomerRequestStatus()` - Get customer request status This method returns a list of all the statuses a customer Request has achieved. A status represents the state of an issue in its workflow. An issue can have one active status only. The list returns the status history in chronological order, most recent (current) status first. *Usage:* ``` import { RequestApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new RequestApi(config).getCustomerRequestStatus({ ...args }); ``` ##### `getCustomerRequests()` - Get customer requests This method returns all customer requests for the user executing the query. *Usage:* ``` import { RequestApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new RequestApi(config).getCustomerRequests({ ...args }); ``` ##### `getCustomerTransitions()` - Get customer transitions This method returns a list of transitions, the workflow processes that moves a customer request from one status to another, that the user can perform on a request. Use this method to provide a user with a list if the actions they can take on a customer request. *Usage:* ``` import { RequestApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new RequestApi(config).getCustomerTransitions({ ...args }); ``` ##### `getFeedback()` - Get feedback This method retrieves a feedback of a request using it's `requestKey` or `requestId` *Usage:* ``` import { RequestApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new RequestApi(config).getFeedback({ ...args }); ``` ##### `getRequestCommentById()` - Get request comment by id This method returns details of a customer request's comment. *Usage:* ``` import { RequestApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new RequestApi(config).getRequestCommentById({ ...args }); ``` ##### `getRequestComments()` - Get request comments This method returns all comments on a customer request. No permissions error is provided if, for example, the user doesn't have access to the service desk or request, the method simply returns an empty response. *Usage:* ``` import { RequestApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new RequestApi(config).getRequestComments({ ...args }); ``` ##### `getRequestParticipants()` - Get request participants This method returns a list of all the participants on a customer request. *Usage:* ``` import { RequestApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new RequestApi(config).getRequestParticipants({ ...args }); ``` ##### `getSlaInformation()` - Get sla information This method returns all the SLA records on a customer request. A customer request can have zero or more SLAs. Each SLA can have recordings for zero or more "completed cycles" and zero or 1 "ongoing cycle". Each cycle includes information on when it started and stopped, and whether it breached the SLA goal. *Usage:* ``` import { RequestApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new RequestApi(config).getSlaInformation({ ...args }); ``` ##### `getSlaInformationById()` - Get sla information by id This method returns the details for an SLA on a customer request. *Usage:* ``` import { RequestApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new RequestApi(config).getSlaInformationById({ ...args }); ``` ##### `getSubscriptionStatus()` - Get subscription status This method returns the notification subscription status of the user making the request. Use this method to determine if the user is subscribed to a customer request's notifications. *Usage:* ``` import { RequestApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new RequestApi(config).getSubscriptionStatus({ ...args }); ``` ##### `performCustomerTransition()` - Perform customer transition This method performs a customer transition for a given request and transition. An optional comment can be included to provide a reason for the transition. *Usage:* ``` import { RequestApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new RequestApi(config).performCustomerTransition({ issueIdOrKey: string CustomerTransitionExecutionDTO: { ... } }); ``` ##### `postFeedback()` - Post feedback This method adds a feedback on an request using it's `requestKey` or `requestId` *Usage:* ``` import { RequestApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new RequestApi(config).postFeedback({ requestIdOrKey: string CSATFeedbackFullDTO: { ... } }); ``` ##### `removeRequestParticipants()` - Remove request participants This method removes participants from a customer request. *Usage:* ``` import { RequestApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new RequestApi(config).removeRequestParticipants({ issueIdOrKey: string RequestParticipantUpdateDTO: { ... } }); ``` ##### `subscribe()` - Subscribe This method subscribes the user to receiving notifications from a customer request. *Usage:* ``` import { RequestApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new RequestApi(config).subscribe({ ...args }); ``` ##### `unsubscribe()` - Unsubscribe This method unsubscribes the user from notifications from a customer request. *Usage:* ``` import { RequestApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new RequestApi(config).unsubscribe({ ...args }); ``` ___ ### The RequesttypeApi object ##### `getAllRequestTypes()` - Get all request types This method returns all customer request types used in the Jira Service Desk instance, optionally filtered by a query string. *Usage:* ``` import { RequesttypeApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new RequesttypeApi(config).getAllRequestTypes({ ...args }); ``` ___ ### The ServicedeskApi object ##### `addCustomers()` - Add customers Adds one or more customers to a service desk. If any of the passed customers are associated with the service desk, no changes will be made for those customers and the resource returns a 204 success code. *Usage:* ``` import { ServicedeskApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new ServicedeskApi(config).addCustomers({ serviceDeskId: integer ServiceDeskCustomerDTO: { ... } }); ``` ##### `attachTemporaryFile()` - Attach temporary file This method adds one or more temporary attachments to a service desk, which can then be permanently attached to a customer request using [servicedeskapi/request/\{issueIdOrKey\}/attachment](#api-request-issueIdOrKey-attachment-post). *Usage:* ``` import { ServicedeskApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new ServicedeskApi(config).attachTemporaryFile({ serviceDeskId: integer bodies_attachTemporaryFile: { ... } }); ``` ##### `createRequestType()` - Create request type This method enables a customer request type to be added to a service desk based on an issue type. Note that not all customer request type fields can be specified in the request and these fields are given the following default values: *Usage:* ``` import { ServicedeskApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new ServicedeskApi(config).createRequestType({ serviceDeskId: integer RequestTypeCreateDTO: { ... } }); ``` ##### `deleteProperty1()` - Delete property Removes a property from a request type. *Usage:* ``` import { ServicedeskApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new ServicedeskApi(config).deleteProperty1({ ...args }); ``` ##### `getArticles1()` - Get articles Returns articles which match the given query and belong to the knowledge base linked to the service desk. *Usage:* ``` import { ServicedeskApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new ServicedeskApi(config).getArticles1({ ...args }); ``` ##### `getCustomers()` - Get customers This method returns a list of the customers on a service desk. *Usage:* ``` import { ServicedeskApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new ServicedeskApi(config).getCustomers({ ...args }); ``` ##### `getIssuesInQueue()` - Get issues in queue This method returns the customer requests in a queue. Only fields that the queue is configured to show are returned. For example, if a queue is configured to show description and due date, then only those two fields are returned for each customer request in the queue. *Usage:* ``` import { ServicedeskApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new ServicedeskApi(config).getIssuesInQueue({ ...args }); ``` ##### `getPropertiesKeys1()` - Get properties keys Returns the keys of all properties for a request type. *Usage:* ``` import { ServicedeskApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new ServicedeskApi(config).getPropertiesKeys1({ ...args }); ``` ##### `getProperty1()` - Get property Returns the value of the property from a request type. *Usage:* ``` import { ServicedeskApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new ServicedeskApi(config).getProperty1({ ...args }); ``` ##### `getQueue()` - Get queue This method returns a specific queues in a service desk. To include a customer request count for the queue (in the `issueCount` field) in the response, set the query parameter `includeCount` to true (its default is false). *Usage:* ``` import { ServicedeskApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new ServicedeskApi(config).getQueue({ ...args }); ``` ##### `getQueues()` - Get queues This method returns the queues in a service desk. To include a customer request count for each queue (in the `issueCount` field) in the response, set the query parameter `includeCount` to true (its default is false). *Usage:* ``` import { ServicedeskApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new ServicedeskApi(config).getQueues({ ...args }); ``` ##### `getRequestTypeById()` - Get request type by id This method returns a customer request type from a service desk. *Usage:* ``` import { ServicedeskApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new ServicedeskApi(config).getRequestTypeById({ ...args }); ``` ##### `getRequestTypeFields()` - Get request type fields This method returns the fields for a service desk's customer request type. *Usage:* ``` import { ServicedeskApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new ServicedeskApi(config).getRequestTypeFields({ ...args }); ``` ##### `getRequestTypeGroups()` - Get request type groups This method returns a service desk's customer request type groups. Jira Service Desk administrators can arrange the customer request type groups in an arbitrary order for display on the customer portal; the groups are returned in this order. *Usage:* ``` import { ServicedeskApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new ServicedeskApi(config).getRequestTypeGroups({ ...args }); ``` ##### `getRequestTypes()` - Get request types This method returns all customer request types from a service desk. There are two parameters for filtering the returned list: *Usage:* ``` import { ServicedeskApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new ServicedeskApi(config).getRequestTypes({ ...args }); ``` ##### `getServiceDeskById()` - Get service desk by id This method returns a service desk. Use this method to get service desk details whenever your application component is passed a service desk ID but needs to display other service desk details. *Usage:* ``` import { ServicedeskApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new ServicedeskApi(config).getServiceDeskById({ ...args }); ``` ##### `getServiceDesks()` - Get service desks This method returns all the service desks in the Jira Service Desk instance that the user has permission to access. Use this method where you need a list of service desks or need to locate a service desk by name or keyword. *Usage:* ``` import { ServicedeskApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new ServicedeskApi(config).getServiceDesks({ ...args }); ``` ##### `removeCustomers()` - Remove customers This method removes one or more customers from a service desk. The service desk must have closed access. If any of the passed customers are not associated with the service desk, no changes will be made for those customers and the resource returns a 204 success code. *Usage:* ``` import { ServicedeskApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new ServicedeskApi(config).removeCustomers({ serviceDeskId: integer ServiceDeskCustomerDTO: { ... } }); ``` ##### `setProperty1()` - Set property Sets the value of a request type property. Use this resource to store custom data against a request type. *Usage:* ``` import { ServicedeskApi, Configuration } from 'fetch-jsd'; const config: Configuration = new Configuration({ fetchApi: yourFetchClient, basePath: "<your base path>" }); const responsePromise = new ServicedeskApi(config).setProperty1({ ...args }); ``` ## References #### IncludedFields ``` { "type": "object", "properties": { "included": { "uniqueItems": true, "type": "array", "items": { "type": "string" } }, "actuallyIncluded": { "uniqueItems": true, "type": "array", "items": { "type": "string" } }, "excluded": { "uniqueItems": true, "type": "array", "items": { "type": "string" } } }, "additionalProperties": false } ``` #### CustomerRequestActionsDTO ``` { "type": "object", "properties": { "addAttachment": { "description": "Action of adding attachments to a request.", "allOf": [ { "$ref": "#/components/schemas/CustomerRequestActionDTO" } ] }, "addComment": { "description": "Action of adding comments to a request.", "allOf": [ { "$ref": "#/components/schemas/CustomerRequestActionDTO" } ] }, "addParticipant": { "description": "Action of adding participants to a request.", "allOf": [ { "$ref": "#/components/schemas/CustomerRequestActionDTO" } ] }, "removeParticipant": { "description": "Action of removing participants from a request.", "allOf": [ { "$ref": "#/components/schemas/CustomerRequestActionDTO" } ] } }, "additionalProperties": false } ``` #### PagedDTOOrganizationDTO ``` { "type": "object", "properties": { "size": { "type": "integer", "description": "Number of items returned in the page.", "format": "int32" }, "start": { "type": "integer", "description": "Index of the first item returned in the page.", "format": "int32" }, "limit": { "type": "integer", "description": "Number of items to be returned per page, up to the maximum set for these objects in the current implementation.", "format": "int32" }, "isLastPage": { "type": "boolean", "description": "Indicates if this is the last page of records (true) or not (false)." }, "values": { "type": "array", "description": "Details of the items included in the page.", "items": { "$ref": "#/components/schemas/OrganizationDTO" } }, "_expands": { "type": "array", "items": { "type": "string" } }, "_links": { "description": "List of the links relating to the page.", "allOf": [ { "$ref": "#/components/schemas/PagedLinkDTO" } ] } }, "additionalProperties": false } ``` #### FieldMetadata ``` { "required": [ "key", "name", "operations", "required" ], "type": "object", "properties": { "required": { "type": "boolean", "description": "Indicates whether the field is required.", "readOnly": true }, "schema": { "description": "The data type of the field.", "readOnly": true, "allOf": [ { "$ref": "#/components/schemas/JsonTypeBean" } ] }, "name": { "type": "string", "description": "The name of the field.", "readOnly": true }, "key": { "type": "string", "description": "The key of the field.", "readOnly": true }, "autoCompleteUrl": { "type": "string", "description": "The URL that can be used to automatically complete the field.", "readOnly": true }, "hasDefaultValue": { "type": "boolean", "description": "Indicates whether the field has a default value.", "readOnly": true }, "operations": { "type": "array", "description": "The list of operations that can be performed on the field.", "readOnly": true, "items": { "type": "string", "readOnly": true } }, "allowedValues": { "type": "array", "description": "The list of values allowed in the field.", "readOnly": true, "items": { "readOnly": true } }, "defaultValue": { "description": "The default value of the field.", "readOnly": true } }, "additionalProperties": false, "description": "The metadata describing an issue field.", "xml": { "name": "availableField" } } ``` #### CommentCreateDTO ``` { "type": "object", "properties": { "body": { "type": "string", "description": "Content of the comment." }, "public": { "type": "boolean", "description": "Indicates whether the comment is public (true) or private/internal (false)." } }, "additionalProperties": false, "title": "CommentCreateDTO" } ``` #### PageOfChangelogs ``` { "type": "object", "properties": { "startAt": { "type": "integer", "description": "The index of the first item returned on the page.", "format": "int32", "readOnly": true }, "maxResults": { "type": "integer", "description": "The maximum number of results that could be on the page.", "format": "int32", "readOnly": true }, "total": { "type": "integer", "description": "The number of results on the page.", "format": "int32", "readOnly": true }, "histories": { "type": "array", "description": "The list of changelogs.", "readOnly": true, "items": { "$ref": "#/components/schemas/Changelog" } } }, "additionalProperties": false, "description": "A page of changelogs." } ``` #### SelfLinkDTO ``` { "type": "object", "properties": { "self": { "type": "string", "format": "uri" } }, "additionalProperties": false } ``` #### HistoryMetadata ``` { "type": "object", "properties": { "type": { "type": "string", "description": "The type of the history record." }, "description": { "type": "string", "description": "The description of the history record." }, "descriptionKey": { "type": "string", "description": "The description key of the history record." }, "activityDescription": { "type": "string", "description": "The activity described in the history record." }, "activityDescriptionKey": { "type": "string", "description": "The key of the activity described in the history record." }, "emailDescription": { "type": "string", "description": "The description of the email address associated the history record." }, "emailDescriptionKey": { "type": "string", "description": "The description key of the email address associated the history record." }, "actor": { "description": "Details of the user whose action created the history record.", "allOf": [ { "$ref": "#/components/schemas/HistoryMetadataParticipant" } ] }, "generator": { "description": "Details of the system that generated the history record.", "allOf": [ { "$ref": "#/components/schemas/HistoryMetadataParticipant" } ] }, "cause": { "description": "Details of the cause that triggered the creation the history record.", "allOf": [ { "$ref": "#/components/schemas/HistoryMetadataParticipant" } ] }, "extraData": { "type": "object", "additionalProperties": { "type": "string" }, "description": "Additional arbitrary information about the history record." } }, "additionalProperties": true, "description": "Details of issue history metadata." } ``` #### UsersOrganizationUpdateDTO ``` { "type": "object", "properties": { "usernames": { "type": "array", "description": "This property is no longer available and will be removed from the documentation soon. See the [deprecation notice](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) for details. Use `accountIds` instead.", "items": { "type": "string" } }, "accountIds": { "type": "array", "description": "List of customers, specific by account IDs, to add to or remove from the organization.", "items": { "type": "string" } } }, "additionalProperties": false, "title": "UsersOrganizationUpdateDTO" } ``` #### CustomerRequestFieldValueDTO ``` { "type": "object", "properties": { "fieldId": { "type": "string", "description": "ID of the field." }, "label": { "type": "string", "description": "Text label for the field." }, "value": { "description": "Value of the field." }, "renderedValue": { "type": "object", "description": "Value of the field rendered in the UI." } }, "additionalProperties": false } ``` #### UserDTO ``` { "type": "object", "properties": { "accountId": { "type": "string", "description": "The accountId of the user, which uniquely identifies the user across all Atlassian products. For example, *5b10ac8d82e05b22cc7d4ef5*." }, "name": { "type": "string", "description": "This property is no longer available and will be removed from the documentation soon. See the [deprecation notice](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) for details." }, "key": { "type": "string", "description": "This property is no longer available and will be removed from the documentation soon. See the [deprecation notice](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) for details." }, "emailAddress": { "type": "string", "description": "Customer's email address. Depending on the customer’s privacy settings, this may be returned as null." }, "displayName": { "type": "string", "description": "Customer's name for display in a UI. Depending on the customer’s privacy settings, this may return an alternative value." }, "active": { "type": "boolean", "description": "Indicates if the customer is active (true) or inactive (false)" }, "timeZone": { "type": "string", "description": "Customer time zone. Depending on the customer’s privacy settings, this may be returned as null." }, "_links": { "description": "URLs for the customer record and related items.", "allOf": [ { "$ref": "#/components/schemas/UserLinkDTO" } ] } }, "additionalProperties": false } ``` #### PagedDTOUserDTO ``` { "type": "object", "properties": { "size": { "type": "integer", "description": "Number of items returned in the page.", "format": "int32" }, "start": { "type": "integer", "description": "Index of the first item returned in the page.", "format": "int32" }, "limit": { "type": "integer", "description": "Number of items to be returned per page, up to the maximum set for these objects in the current implementation.", "format": "int32" }, "isLastPage": { "type": "boolean", "description": "Indicates if this is the last page of records (true) or not (false)." }, "values": { "type": "array", "description": "Details of the items included in the page.", "items": { "$ref": "#/components/schemas/UserDTO" } }, "_expands": { "type": "array", "items": { "type": "string" } }, "_links": { "description": "List of the links relating to the page.", "allOf": [ { "$ref": "#/components/schemas/PagedLinkDTO" } ] } }, "additionalProperties": false } ``` #### DateDTO ``` { "type": "object", "properties": { "iso8601": { "type": "string", "description": "Date in ISO8601 format." }, "jira": { "type": "string", "description": "Date in the format used in the Jira REST APIs, which is ISO8601 format but extended with milliseconds. For example, 2016-09-28T23:08:32.097+1000." }, "friendly": { "type": "string", "description": "Date in a user-friendly text format." }, "epochMillis": { "type": "integer", "description": "Date as the number of milliseconds that have elapsed since 00:00:00 Coordinated Universal Time (UTC), 1 January 1970.", "format": "int64" } }, "additionalProperties": false } ``` #### SlaInformationDTO ``` { "type": "object", "properties": { "id": { "type": "string", "description": "ID of the Service Level Agreement (SLA)." }, "name": { "type": "string", "description": "Description of the SLA." }, "completedCycles": { "type": "array", "description": "List of completed cycles for the SLA.", "items": { "$ref": "#/components/schemas/SlaInformationCompletedCycleDTO" } }, "ongoingCycle": { "description": "Details of the active cycle for the SLA.", "allOf": [ { "$ref": "#/components/schemas/SlaInformationOngoingCycleDTO" } ] }, "_links": { "description": "REST API URL for the SLA.", "allOf": [ { "$ref": "#/components/schemas/SelfLinkDTO" } ] } }, "additionalProperties": false } ``` #### ArticleDTO ``` { "type": "object", "properties": { "title": { "type": "string", "description": "Title of the article." }, "excerpt": { "type": "string", "description": "Excerpt of the article which matches the given query string." }, "source": { "description": "Source of the article.", "allOf": [ { "$ref": "#/components/schemas/SourceDTO" } ] }, "content": { "$ref": "#/components/schemas/ContentDTO" } }, "additionalProperties": false } ``` #### SourceDTO ``` { "type": "object", "properties": { "type": { "type": "string", "description": "Type of the knowledge base source", "enum": [ "confluence" ] } }, "additionalProperties": true } ``` #### UserDetails ``` { "type": "object", "properties": { "self": { "type": "string", "description": "The URL of the user.", "readOnly": true }, "name": { "type": "string", "description": "This property is no longer available and will be removed from the documentation soon. See the [deprecation notice](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) for details.", "readOnly": true }, "key": { "type": "string", "description": "This property is no longer available and will be removed from the documentation soon. See the [deprecation notice](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) for details.", "readOnly": true }, "accountId": { "type": "string", "description": "The accountId of the user, which uniquely identifies the user across all Atlassian products. For example, *5b10ac8d82e05b22cc7d4ef5*." }, "emailAddress": { "type": "string", "description": "The email address of the user. Depending on the user’s privacy settings, this may be returned as null.", "readOnly": true }, "avatarUrls": { "description": "The avatars of the user.", "readOnly": true, "allOf": [ { "$ref": "#/components/schemas/AvatarUrlsBean" } ] }, "displayName": { "type": "string", "description": "The display name of the user. Depending on the user’s privacy settings, this may return an alternative value.", "readOnly": true }, "active": { "type": "boolean", "description": "Whether the user is active.", "readOnly": true }, "timeZone": { "type": "string", "description": "The time zone specified in the user's profile. Depending on the user’s privacy settings, this may be returned as null.", "readOnly": true }, "accountType": { "type": "string", "description": "The type of account represented by this user. This will be one of 'atlassian' (normal users), 'app' (application user) or 'customer' (Jira Service Desk customer user)", "readOnly": true } }, "additionalProperties": false, "description": "User details." } ``` #### SimpleLink ``` { "type": "object", "properties": { "id": { "type": "string" }, "styleClass": { "type": "string" }, "iconClass": { "type": "string" }, "label": { "type": "string" }, "title": { "type": "string" }, "href": { "type": "string" }, "weight": { "type": "integer", "format": "int32" } }, "additionalProperties": false, "description": "Details about the operations available in this version.", "xml": { "name": "link" } } ``` #### RenderedValueDTO ``` { "type": "object", "properties": { "html": { "type": "string" } }, "additionalProperties": false } ``` #### SlaInformationCompletedCycleDTO ``` { "type": "object", "properties": { "startTime": { "description": "Time and date at which the SLA cycle started.", "allOf": [ { "$ref": "#/components/schemas/DateDTO" } ] }, "stopTime": { "description": "Time and date at which the SLA cycle completed.", "allOf": [ { "$ref": "#/components/schemas/DateDTO" } ] }, "breached": { "type": "boolean", "description": "Indicates if the SLA (duration) was exceeded (true) or not (false)." }, "goalDuration": { "description": "Duration within which the service should have been completed.", "allOf": [ { "$ref": "#/components/schemas/DurationDTO" } ] }, "elapsedTime": { "description": "Duration in which the service was completed.", "allOf": [ { "$ref": "#/components/schemas/DurationDTO" } ] }, "remainingTime": { "description": "Duration remaining after the service was completed.", "allOf": [ { "$ref": "#/components/schemas/DurationDTO" } ] } }, "additionalProperties": false } ``` #### PagedDTOArticleDTO ``` { "type": "object", "properties": { "size": { "type": "integer", "description": "Number of items returned in the page.", "format": "int32" }, "start": { "type": "integer", "description": "Index of the first item returned in the page.", "format": "int32" }, "limit": { "type": "integer", "description": "Number of items to be returned per page, up to the maximum set for these objects in the current implementation.", "format": "int32" }, "isLastPage": { "type": "boolean", "description": "Ind