Skip to content

New Integration: Clay #514

@AggManik

Description

@AggManik

Description

Add Clay integration to sync data enrichment workflows, table data, people/company enrichment results, and automation activity into CORE.

Reference Implementations

Existing Integrations (use as templates)

  • integrations/hubspot/ - Similar CRM/enrichment data system
  • integrations/linear/ - Project management integration
  • integrations/slack/ - For reference

Required Files Structure

integrations/clay/
├── src/
│   ├── index.ts          # Main entry, API spec
│   ├── schedule.ts       # Sync logic
│   ├── utils.ts          # Clay API utilities
│   ├── account-create.ts # API key setup
│   └── create-activity.ts # Activity formatting
├── package.json
├── tsup.config.ts
└── README.md

Clay API Integration

Authentication Setup

Key Endpoints

  • HTTP API integration for importing data into Clay tables
  • Table data import/export endpoints
  • Enrichment execution endpoints
  • Webhook endpoints for real-time data flow
  • Sculptor AI-assisted API configuration

Events to Track

  1. Tables - Table created, rows added, rows updated, enrichment completed
  2. Enrichment - Person enriched, company enriched, data found, data not found
  3. Workflows - Workflow triggered, workflow completed, workflow failed
  4. Integrations - Source connected, data imported, data exported
  5. Lists - List created, contacts added, list exported

Implementation Tasks

  • Set up basic integration structure following integrations/github/src/index.ts pattern
  • Implement API key authentication in account-create.ts
  • Create API utilities in utils.ts for Clay HTTP API calls
  • Implement sync logic in schedule.ts for table data and enrichment results
  • Convert enrichment events to CORE activity format
  • Add error handling and rate limiting
  • Create integration documentation
  • Add to integrations/README.md

Technical Notes

  • Clay is primarily a graphical tool; API integration is via HTTP API feature
  • Sculptor (AI-powered) auto-generates HTTP API configurations from natural language
  • API credentials are stored securely and not exposed in table configuration
  • HTTP API can serve as both source (import) and destination (export)
  • Consider Clay's credit-based usage model when designing sync frequency

Resources

Labels

enhancement, integration, new-feature

Metadata

Metadata

Assignees

Type

No type

Projects

Status

Backlog

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions