# Get CRM Objects — HubSpot

> Fetch one or more CRM objects by their IDs in a single request. Returns the requested properties for each object. Use Search CRM Objects first to find record IDs, then use this tool to fetch full details. Max 100 IDs per request. Supports…

- Key: `hubspot-get-crm-objects`
- Type: Action (Read-only)
- Version: 0.0.9
- App: HubSpot (`hubspot`) — https://pipedream.com/apps/hubspot.md
- This page (HTML): https://pipedream.com/apps/hubspot/actions/get-crm-objects
- Hints: read-only · open-world
- Source: https://github.com/PipedreamHQ/pipedream/blob/master/components/hubspot/actions/get-crm-objects/get-crm-objects.mjs

## Description

Fetch one or more CRM objects by their IDs in a single request. Returns the requested properties for each object. Use **Search CRM Objects** first to find record IDs, then use this tool to fetch full details. Max 100 IDs per request. Supports standard object types only. For custom objects, use **Get Custom Object** instead. [See the documentation](https://developers.hubspot.com/docs/api/crm/objects)

## Props

| Prop | Type | Required | Description |
|---|---|---|---|
| `objectType` | `string` | Yes | The CRM object type to fetch. |
| `objectIds` | `string[]` | Yes | List of object IDs to fetch. Min 1, max 100. |
| `properties` | `string[]` | No | Property names to include in results. Use Search Properties to discover available property names. If not specified, returns default properties. |

## Run it

**MCP**

```ts
import { Client } from "@modelcontextprotocol/sdk/client/index.js"
import { StreamableHTTPClientTransport } from "@modelcontextprotocol/sdk/client/streamableHttp.js"
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 accessToken = await pd.rawAccessToken

const transport = new StreamableHTTPClientTransport(
  new URL("https://remote.mcp.pipedream.net/v3"),
  {
    requestInit: {
      headers: {
        Authorization: `Bearer ${accessToken}`,
        "x-pd-project-id": process.env.PIPEDREAM_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-crm-objects",
  arguments: {
    objectType: "Object Type",
    objectIds: ["Object IDs"],
  },
})
```

**TypeScript**

```ts
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-crm-objects",
  externalUserId: "{external_user_id}", // any stable ID for this user in your system
  configuredProps: {
    hubspot: { authProvisionId: "apn_xxxxxxx" },
    objectType: "Object Type",
    objectIds: ["Object IDs"],
  },
})

console.log(result)
```

**cURL**

```bash
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-crm-objects",
    "configured_props": {
      "hubspot": { "authProvisionId": "apn_xxxxxxx" },
      "objectType": "Object Type",
      "objectIds": ["Object IDs"]
    }
  }'
```

---

- App: https://pipedream.com/apps/hubspot.md · All apps: https://pipedream.com/apps
