Ashby ACTION
Create Application
Considers a candidate for a job (e.g., when sourcing a candidate for a job posting). See the documentation
- Action
- Writes data
- API key
- SDK
- MCP
IMPLEMENTATION
Call this tool
Connect a user's Ashby account once, then configure and run Create Application 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: "ashby-create-application",
externalUserId: "{external_user_id}", // any stable ID for this user in your system
configuredProps: {
ashby: { authProvisionId: "apn_xxxxxxx" },
candidateId: "Candidate ID",
jobId: "Job 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": "ashby-create-application",
"configured_props": {
"ashby": { "authProvisionId": "apn_xxxxxxx" },
"candidateId": "Candidate ID",
"jobId": "Job 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": "ashby",
},
},
},
)
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: "ashby-create-application",
arguments: {
candidateId: "Candidate ID",
jobId: "Job 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 |
|---|---|---|
candidateId Candidate ID | string | The ID of the candidate to create an application for Required Dynamic |
jobId Job ID | string | The ID of the job to apply for Required Dynamic |
interviewPlanId Interview Plan ID | string | The ID of the interview plan to place the application in. If none is provided, the default interview plan is used. Optional Dynamic |
interviewStageId Interview Stage ID | string | The interview stage of the interview plan to place the application in. If none is provided, the application is placed in the first 'Lead' stage. You can also use the special string 'FirstPreInterviewScreen' to choose the first pre-interview-screen stage. Optional Dynamic |
sourceId Source ID | string | The source to set on the application being created Optional Dynamic |
creditedToUserId Credited To User ID | string | The ID of the user the application will be credited to Optional Dynamic |
createdAt Created At | string | An ISO date string to set the application's createdAt timestamp (e.g., 2024-01-15T10:30:00Z). Defaults to the current time if not provided. 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
- ashby-create-application
- Version
- 0.0.4
- App
- Ashby
- Authentication
- API key
- Read-only
- No
- Destructive
- No
- Open world
- Yes
- Source
- View on GitHub ↗