fastify-xhubspot
deals.create
Create a new HubSpot deal from a properties object.
deals.create
Create a new deal in HubSpot CRM.
Signature
fastify.deals.create(
dealData: Record<string, string>
): Promise<{ id: string; properties: Record<string, string> }>
Params
| Name | Type | Required | Description |
|---|---|---|---|
dealData | object | Yes | Property map. Common properties: dealname, amount, dealstage, closedate, pipeline. |
Returns
{ id, properties } for the created deal.
Throws
[xHubspot] deals.create requires a dealData object- Re-throws HubSpot API errors.
Examples
Basic
const deal = await fastify.deals.create({
dealname: "Acme Corp — Enterprise Plan",
amount: "12000",
dealstage: "presentationscheduled",
closedate: "2025-06-30",
pipeline: "default",
});
On upgrade request
fastify.post("/upgrades", async (request, reply) => {
const { contactId, companyId, plan, amount } = request.body;
const deal = await fastify.deals.create({
dealname: `Upgrade — ${plan}`,
amount: String(amount),
dealstage: "qualifiedtobuy",
});
await fastify.contacts.associate(contactId, deal.id, "deals");
return reply.code(201).send({ dealId: deal.id });
});
See also
- deals.update — move a deal through stages
- contacts.associate — link contacts to this deal
AI Context
package: "@xenterprises/fastify-xhubspot"
method: fastify.deals.create(dealData)
use-when: Create a new HubSpot deal (dealname, amount, dealstage, closedate, pipeline)
returns: { id, properties }
