Skip to main content
ASC

Associations

Custom Objects & Schema · Advanced · Updated March 2026

Define associations between custom objects and built-in objects to manage relationship types and configure bidirectional links.

Associations define how custom objects relate to each other and to built-in GHL objects like contacts and opportunities. This is the relationship layer — before you can link a property record to a contact, you need to define that “Properties can be associated with Contacts.”

What This MCP Tool Does

This tool manages association definitions between object types. Create associations to define which objects can relate to which other objects, retrieve existing associations, look them up by key or object type, and delete associations you no longer need.

Endpoint Reference

Create an association: POST /objects-association Define a new relationship type between two object types.

List all associations: GET /objects-association Retrieve all defined association types in the sub-account.

Get by key: GET /objects-association/key/{key} Look up a specific association by its unique key.

Get by object: GET /objects-association/object/{objectKey} List all associations that involve a specific object type.

Delete an association: DELETE /objects-association/{associationId} Remove an association definition.

Authentication

Requires a Private Integration Token (PIT) with the custom-objects or equivalent scope enabled.

Key Parameters

When creating an association:

  • Source object type (e.g., custom object key or built-in object identifier)
  • Target object type
  • Association key (unique identifier for this relationship type)
  • Relationship label (e.g., “owns”, “manages”, “assigned to”)
  • Directionality settings

Important Notes

Associations are schema-level definitions. They say “this type of object CAN relate to that type of object.” The actual links between specific records are created through Relations. Think of associations as the schema for relationships.

Deleting an association may cascade to remove all relations that were created under it. Verify impact before deleting.

Plan associations during schema design, not after. Retrofitting relationships between object types with existing records is more complex than defining them upfront.

Common association patterns for agency use:

  • Contact → Properties (real estate)
  • Contact → Vehicles (auto services)
  • Contact → Policies (insurance)
  • Opportunity → Projects (custom tracking)

Common Questions

What is the difference between an association and a relation? An association defines the type of relationship (Contacts can own Properties). A relation creates a specific instance (Contact John Smith owns Property 123 Main St). Association is the definition; relation is the data.

Can I create bidirectional associations? Check the association configuration for directionality options. Bidirectional means if Contact A is linked to Property B, you can query both “which properties does this contact have?” and “which contact owns this property?”

Can custom objects associate with each other? Yes. You can define associations between any combination of custom objects and built-in objects.