HubSpot ACTION
Get Company
Get a single company from HubSpot by its id, with a default set of company properties. Add Additional properties to retrieve (internal names; use Get Properties for
companies) to include more. Example: Object ID 123, Additional properties ["industry", "numberofemployees"]. Returns the company record. See the documentation- Action
- Read only
- OAuth
- SDK
- MCP
IMPLEMENTATION
Call this tool
Connect a user's HubSpot account once, then configure and run Get Company 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: "hubspot-get-company",
externalUserId: "{external_user_id}", // any stable ID for this user in your system
configuredProps: {
hubspot: { authProvisionId: "apn_xxxxxxx" },
objectId: "Company ID",
additionalProperties: ["Additional properties to retrieve"],
},
})
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": "hubspot-get-company",
"configured_props": {
"hubspot": { "authProvisionId": "apn_xxxxxxx" },
"objectId": "Company ID",
"additionalProperties": ["Additional properties to retrieve"]
}
}'// 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": "hubspot",
},
},
},
)
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: "hubspot-get-company",
arguments: {
objectId: "Company ID",
additionalProperties: ["Additional properties to retrieve"],
},
})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 |
|---|---|---|
objectId Company ID | string | The HubSpot company record ID (the id field, e.g. 12345678901). Find it with Search CRM Objects using the company object type and copy the id from the matching result. Required Dynamic |
additionalProperties Additional properties to retrieve | string[] | An array of HubSpot internal property names to return in addition to the default set for this object type — e.g. ["custom_field", "lifecyclestage"]. Use Get Properties to discover the valid internal names a given object type offers. Optional Dynamic |
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
- hubspot-get-company
- Version
- 0.1.2
- App
- HubSpot
- Authentication
- OAuth
- Read-only
- Yes
- Destructive
- No
- Open world
- Yes
- Source
- View on GitHub ↗