AskNicely ACTION
Send Survey
Trigger a survey to a contact. See the documentation
- Action
- Writes data
- API key
- SDK
- MCP
IMPLEMENTATION
Call this tool
Connect a user's AskNicely account once, then configure and run Send Survey 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: "asknicely-send-survey",
externalUserId: "{external_user_id}", // any stable ID for this user in your system
configuredProps: {
asknicely: { authProvisionId: "apn_xxxxxxx" },
email: "Email",
name: "Name",
},
})
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": "asknicely-send-survey",
"configured_props": {
"asknicely": { "authProvisionId": "apn_xxxxxxx" },
"email": "Email",
"name": "Name"
}
}'// 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": "asknicely",
},
},
},
)
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: "asknicely-send-survey",
arguments: {
email: "Email",
name: "Name",
},
})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 |
|---|---|---|
email Email | string | The email of the contact. Required |
name Name | string | The name of the contact. Optional |
triggeremail Trigger Email | boolean | If set to true, the API will always send a survey, we recommend to only use this parameter for testing the API to see the survey emails being sent. Remove this entirely when in production, as including this parameter will override all contact rules and send a survey for each API call. Setting false won't stop it from sending surveys. Optional |
delayminutes Delay Minutes | integer | If you want to trigger a survey to have a delay, use delayminutes. 10 = 10 minute delay. 7 day delay would be 60247 = 10800, there is no limit to how minutes or days you can delay. This value ignored for sms, surveys are always sent immediately. Optional |
segment Segment | string | Set a customers segments. Optional |
customFields Custom Fields | object | Add extra argments to send through extra custom data to help identify/filter/leaderboard customers. Multiple arguments can be sent with each request. Optional |
thendeactivate Then Deactivate | boolean | After a survey has been sent, de-activate this customer so they are not eligible for NPS surveys sent via the Daily Scheduler on the Send page. If you wish to de-activate a customer regardless of if a survey is sent or not, please use the remove contact API. Very handy if you are using both the Daily Scheduler and API calls. 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
- asknicely-send-survey
- Version
- 0.0.3
- App
- AskNicely
- Authentication
- API key
- Read-only
- No
- Destructive
- No
- Open world
- Yes
- Source
- View on GitHub ↗