Job creation and management endpoints
TradeEngage OpenAPI (1.0.0)
The TradeEngage OpenAPI enables third-party systems to create and manage jobs within the TradeEngage referral network.
All requests require an API key in the X-TradeEngage-Signature header. API keys are provisioned by TradeEngage administrators.
Request
Creates a new job in TradeEngage with the provided homeowner information. The job is automatically processed through the TradeEngage referral network to find qualified service providers.
This endpoint supports idempotent requests. If you provide an idempotency_key and a request with the same key has already been processed, the original response will be returned without creating a duplicate job.
Every job requires context about what service the homeowner needs. This can be provided in one of two ways:
- Summary: A text description of the job (e.g., "Water heater replacement needed")
- Call Transcript: A transcript from a call center interaction
At least one of these must be provided. If neither is available, the request will be rejected.
Jobs can be attributed to a referring user (the person who referred the job) or a call center agent (who took the call). If both are provided, the call center agent takes priority for attribution purposes.
Homeowner's phone number. Must be a valid US phone number. Will be normalized to international format (+1XXXXXXXXXX).
Homeowner's email address (optional but recommended)
5-digit US zip code for the service location
Call center information including the agent who handled the call and details about the call itself.
If agent is provided, they will be credited as the referring user for this job (taking precedence over referring_user).
The person who referred this job. This could be an employee, partner, or other contact who sourced the lead.
Note: If call_center.agent is also provided, the agent takes precedence for attribution purposes.
If the referring user doesn't exist in TradeEngage, they will be invited to create an account.
A text description of the job or service needed. This is used to identify the job sector (HVAC, Plumbing, Electrical, etc.) and match with appropriate service providers.
Required if call_center.call.transcript is not provided.
ServiceTitan tenant ID to identify the company creating this job. Used for companies integrated with ServiceTitan.
Takes precedence over brand_location_id if both are provided.
Unique public identifier for the company/location creating this job. Used when service_titan_tenant_id is not available.
Unique identifier for this request to enable idempotent operations. If a request with the same key has already been processed, the original response will be returned.
Recommended format: UUID v4
Key-value pairs for storing external system identifiers. Useful for correlating jobs with records in your own systems.
- Mock serverhttps://docs.api.tradeengage.com/_mock/openapi/jobs
- Productionhttps://api.tradeengage.com/api/v1/open/jobs
- Staginghttps://api.staging.tradeengage.com/api/v1/open/jobs
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X POST \
https://docs.api.tradeengage.com/_mock/openapi/jobs \
-H 'Content-Type: application/json' \
-H 'X-TradeEngage-Signature: YOUR_API_KEY_HERE' \
-d '{
"homeowner": {
"first_name": "John",
"last_name": "Doe",
"phone": "5551234567",
"email": "john.doe@example.com",
"zip_code": "90210"
},
"summary": "Customer needs HVAC repair - AC not cooling properly"
}'{ "data": { "public_id": "JOB-a1b2c3d4e5", "status": "HOMEOWNER_ACCEPTED", "source": "CUSTOM_SOURCE" } }