View as Markdown
Deel icon

Deel ACTION

Create IC Contract

Create a new independent contractor (IC) contract in Deel. Use this to hire a contractor with a fixed rate, pay-as-you-go, or milestone-based arrangement. type must be one of: ongoing_time_based (recurring fixed rate), payg_tasks (per-task), payg_milestones (milestones), pay_as_you_go_time_based (hourly/daily pay-as-you-go). compensationScale must be one of: hourly, daily, weekly, monthly, biweekly, semimonthly, custom. compensationFrequency must be one of: weekly, biweekly, semimonthly, monthly. clientTeamId and clientLegalEntityId are required — ask the user to provide these from their Deel organization settings. See the documentation
  • Action
  • Writes data
  • OAuth
  • SDK
  • MCP

IMPLEMENTATION

Call this tool

Connect a user's Deel account once, then configure and run Create IC Contract 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: "deel-create-ic-contract",
  externalUserId: "{external_user_id}", // any stable ID for this user in your system
  configuredProps: {
    deel: { authProvisionId: "apn_xxxxxxx" },
    title: "Contract Title",
    type: "Contract Type",
  },
})

console.log(result)

SCHEMA

Inputs

Pipedream supplies the connected account. Your application provides the operation-specific values below. Dynamic inputs are resolved against that user's account.

Create IC Contract inputs
Property Type Description
title Contract Title string
A descriptive title for this contract (e.g., Strategy Consulting).
Required
type Contract Type string
Contract type. One of: ongoing_time_based, payg_tasks, payg_milestones, pay_as_you_go_time_based.
Required
startDate Start Date string
Contract start date in ISO 8601 format (e.g., 2026-09-01).
Required
clientTeamId Client Team ID string
The ID of the client team (department) for this contract. Retrieve from your Deel organization settings.
Required
clientLegalEntityId Client Legal Entity ID string
The ID of the client legal entity (company) for this contract. Retrieve from your Deel organization settings.
Required
jobTitle Job Title string
The contractor's job title (e.g., Software Engineer, Marketing Consultant).
Required
compensationAmount Compensation Amount string
The compensation amount (e.g., 4000). Not required for payg_tasks contracts.
Optional
compensationCurrencyCode Compensation Currency Code string
ISO 4217 currency code (e.g., USD, EUR, GBP).
Required
compensationScale Compensation Scale string
How the rate is measured. One of: hourly, daily, weekly, monthly, biweekly, semimonthly, custom. Not required for task-based contracts.
Optional
compensationFrequency Compensation Frequency string
How often the contractor is paid. One of: weekly, biweekly, semimonthly, monthly.
Required
cycleEnd Cycle End Day integer
Day of month the pay cycle ends (e.g., 28). Required by Deel.
Required
cycleEndType Cycle End Type string
How cycle end is calculated. Use DAY_OF_MONTH.
Required
paymentDueDays Payment Due Days integer
Number of days after cycle end that payment is due (e.g., 5).
Required
paymentDueType Payment Due Type string
How payment due date is calculated. Use AFTER_MONTH.
Required
workerFirstName Worker First Name string
The contractor's first name.
Required
workerLastName Worker Last Name string
The contractor's last name.
Required
workerEmail Worker Email string
The contractor's email address.
Required
scopeOfWork Scope of Work string
Description of the work to be performed.
Optional
documentsRequired Documents Required boolean
Whether additional documents are required before contract activation. Defaults to false.
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
deel-create-ic-contract
Version
0.0.2
App
Deel
Authentication
OAuth
Read-only
No
Destructive
No
Open world
Yes