Jira Service Desk ACTION
Get Request Type Form
Gets the form attached to a request type, so you can ask the user each question and pass their answers in the
form argument of Create Request. Forms are separate from the fields that List Request Type Fields returns: a request type can have both, and a request created without its form's answers is created with no form at all. Returns hasForm (false when the request type has no form), the form's name, and its questions in the order the form shows them. Each question gives the questionId to key its answer by, its label, typeName, whether it is required, the answerFormat its answer must follow, and for choice questions the choices whose ids go in the answer. A question with conditions is shown or hidden depending on another question's answer, e.g. { "effect": "show", "whenAnyChoiceSelected": { "12": ["2"] } } means it only appears, and is only required, when question 12 has choice 2 selected; answers to hidden questions are dropped. Example: a question { "questionId": "2", "label": "Licence type", "typeName": "Radio buttons", "choices": [{ "id": "1", "label": "Free" }, { "id": "2", "label": "Paid" }] } is answered as { "2": { "choices": ["2"] } }. Use List Sites for cloudId, List Service Desks for serviceDeskId, and List Request Types for requestTypeId. See the documentation- Action
- Read only
- OAuth
- SDK
- MCP
IMPLEMENTATION
Call this tool
Connect a user's Jira Service Desk account once, then configure and run Get Request Type Form from your backend or agent.
import { PipedreamClient } from "@pipedream/sdk"
const pd = new PipedreamClient({
projectId: process.env.PIPEDREAM_PROJECT_ID!,
clientId: process.env.PIPEDREAM_CLIENT_ID!,
clientSecret: process.env.PIPEDREAM_CLIENT_SECRET!,
projectEnvironment: "production",
})
const result = await pd.actions.run({
id: "jira_service_desk-get-request-type-form",
externalUserId: "{external_user_id}", // any stable ID for this user in your system
configuredProps: {
jira_service_desk: { authProvisionId: "apn_xxxxxxx" },
cloudId: "Cloud ID",
serviceDeskId: "Service Desk ID",
},
})
console.log(result)curl -X POST https://api.pipedream.com/v1/connect/{project_id}/actions/run \
-H "Content-Type: application/json" \
-H "X-PD-Environment: production" \
-H "Authorization: Bearer {access_token}" \
-d '{
"external_user_id": "{external_user_id}",
"id": "jira_service_desk-get-request-type-form",
"configured_props": {
"jira_service_desk": { "authProvisionId": "apn_xxxxxxx" },
"cloudId": "Cloud ID",
"serviceDeskId": "Service Desk ID"
}
}'// accessToken: mint a short-lived token with the Connect SDK — see the MCP guide
const transport = new StreamableHTTPClientTransport(
new URL("https://remote.mcp.pipedream.net/v3"),
{
requestInit: {
headers: {
Authorization: `Bearer ${accessToken}`,
"x-pd-project-id": "{project_id}",
"x-pd-environment": "production",
"x-pd-external-user-id": "{external_user_id}", // any stable ID for this user in your system
"x-pd-app-slug": "jira_service_desk",
},
},
},
)
const mcp = new Client({ name: "my-agent", version: "1.0.0" })
await mcp.connect(transport)
const { tools } = await mcp.listTools()
// listTools() hands your model this tool's input schema, so it can
// fill the arguments itself:
const result = await mcp.callTool({
name: "jira_service_desk-get-request-type-form",
arguments: {
cloudId: "Cloud ID",
serviceDeskId: "Service Desk ID",
},
})SCHEMA
Inputs
Pipedream supplies the connected account. Your application provides the operation-specific values below. Dynamic inputs are resolved against that user's account.
| Property | Type | Description |
|---|---|---|
cloudId Cloud ID | string | The Atlassian site (cloud) ID, e.g. 822faf0d-5427-420e-9016-999d3dc76918. Run List Sites to get the id of every site you can access. Required |
serviceDeskId Service Desk ID | string | The service desk the request type belongs to. Use List Service Desks to find valid IDs (e.g. 1). Required |
requestTypeId Request Type ID | string | The request type whose form to get. Use List Request Types to find valid IDs (e.g. 5). Required |
requestLanguage Request Language | string | Locale to translate the form's labels into, e.g. de-DE. Defaults to the form's own language. Optional |
REFERENCE
Tool details
Behavior hints are published with the component in the Pipedream registry and surface as MCP tool annotations, so an agent can reason about a tool before it calls it.
- Registry key
- jira_service_desk-get-request-type-form
- Version
- 0.0.1
- App
- Jira Service Desk
- Authentication
- OAuth
- Read-only
- Yes
- Destructive
- No
- Open world
- Yes
- Source
- View on GitHub ↗