APIs & Integrations

PJMuller
Member

Get all contact properties without explicitly listing them

Hi all, I'm using the [GET] crm/v3/objects/contacts endpoint

however when I don't provide any ?properties=... I'm only getting the default firstname, lastname, email, createdate

 

Is there a way to provide a wildcard to receive all, or do I need to add ALL 163 default contact property names in ?properties= to have the full picture.

 

I'm afraid the URL might overflow in that case, certainly when my user has many custom properties on top of the default ones.

0 Upvotes
6 Replies 6
hlince-io
Member

Get all contact properties without explicitly listing them

@dennisedson  What might it take to get this moving? This is a blocker for a lot of synchronization tasks for your largest customers due to the way the UI is encouraging the attribution of properties to contacts.

 

There's an active thread in GitHub for the Airbyte connector as here: https://github.com/airbytehq/airbyte/issues/3977

0 Upvotes
PJMuller
Member

Get all contact properties without explicitly listing them

Hi @JBeatty , thanks for info about the v1 API, I still see it as a plan B.

Does someone have an idea or ETA how I can get all contact  its properties via the v3 API?

0 Upvotes
PJMuller
Member

Get all contact properties without explicitly listing them

Hi @dennisedson and @JBeatty 

thanks for the fast responses, I'll answer in bullet point

 

@dennisedson the thread you mention indeed talks about the same issue, they mention a temporary solution for the deals endpoint to use includeAllProperties=true and allPropertiesFetchMode=latest_version , but this doesn't seem to be implemented on the other object types (e.g. contacts, tickets, ...). Is that correct? Why can't it be implemented? it must be important for other integrations to get ALL properties for ojects, right?

@JBeatty I noticed indeed that the v1 API returns all properties but what about deprecation of the v1 endpoints? How much of a problem is it that my integration does some calls to the v3 endpoints and some to the v1. Intuitively that doesn't seem like a best practice.

 

So if there is a way to get all attributes via the v3 endpoints without getting an URL overflow, please show me the light at the end of the tunnel ;).

0 Upvotes
JBeatty
Guide | Diamond Partner
Guide | Diamond Partner

Get all contact properties without explicitly listing them

Hi @PJMuller,

From the API documentation:

Some APIs have an updated counterpart, but both versions are still supported. (Examples: object APIs like Contacts, Companies, Deals, etc.) Even though older APIs are still supported, we strongly recommend upgrading your integration to the latest available version for better consistency and additional functionality. You can find the updated APIs on our new API reference docs.

These v1 APIs for the contacts are still supported and will continue to be so. Even if they were to be deprecated:

These endpoints are functional and stable, but won’t be updated beyond their current version. We’ll continue to support them for the foreseeable future and will announce any future changes with ample notice on our developer changelog.

So this endpoint will be supported, and even if it was to be deprecated, it would continue to be supported for quite some time, with far more than enough time to give you notice to change the API call you are making to one that eventually does support this functionality.

✔️ Was I able to help answer your question? Help the community by marking it as a solution.

Joshua Beatty
Software Developer with Pearagon

Still have questions? Let's Talk

JBeatty
Guide | Diamond Partner
Guide | Diamond Partner

Get all contact properties without explicitly listing them

Hi @PJMuller,

 

Though it might not be exactly what you are looking for I thought I should bring to your attention some V1 APIs. The first is the Get a contact by vid endpoint, which will return "all valued properties" of a contact. If you are okay with iterating through each contact then this will work perfectly for you. The other API call which is worth investigating is the Search for contacts by email, name, phone number, or company endpoint, which with an empty query string will return every contact. In the response details of this endpoint, it states that  

 


This method only returns a small subset of data about the contact.

However, in my limited testing, it returned every property that the Get a contact by vid endpoint did. This leads me to believe that it actually returned every valued property as well. I would do further testing on this to confirm my findings, as it might be due to the limited number of properties in my test portal, but if you find the same thing then calling that endpoint with an empty query will get every property, well every valued property, from every contact with one API call(not counting the iterating with an offset).

✔️ Was I able to help answer your question? Help the community by marking it as a solution.

Joshua Beatty
Software Developer with Pearagon

Still have questions? Let's Talk

dennisedson
HubSpot Product Team
HubSpot Product Team

Get all contact properties without explicitly listing them

Hi @PJMuller

At the moment, this does not exist.  And as you can see in this thread, the url length is an issue to call them all as individual params.

I believe the node and php libraries have a command to get all contact properties.

Thanks,

Dennis




HubSpot Community Developer ShowMake sure to subscribe to our YouTube channel
where you can find the HubSpot Community Developer Show
0 Upvotes