RedPlanetHQ/core

New Integration: Indeed

Open

#509 opened on Feb 24, 2026

 (0 comments) (0 reactions) (0 assignees)TypeScript (184 forks)auto 404
enhancementgood first issueintegrationnew-featurenew-integration

Repository metrics

Stars
 (1,930 stars)
PR merge metrics
 (PR metrics pending)

Description

Description

Add Indeed integration to sync job search and recruiting data including job listings, employer information, applications, and company reviews into CORE.

Reference Implementations

Existing Integrations (use as templates)

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

Required Files Structure

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

Indeed API Integration

Authentication Setup

  • Register as a publisher to obtain a Publisher ID
  • API key-based authentication
  • Partner documentation portal: https://docs.indeed.com/

Key Endpoints

  • /jobs - Search job listings by keyword, location, salary
  • /jobs/{id} - Get job posting details (description, requirements)
  • /employers - Access employer information
  • /employers/{id}/reviews - Company reviews
  • /applications - Manage job applications
  • /campaigns - Manage sponsored job campaigns
  • /disposition - Disposition data for candidates

Events to Track

  1. Job Listings - Job posted, job updated, job expired, job sponsored
  2. Applications - Application submitted, application reviewed, candidate contacted
  3. Employers - Employer profile updated, review posted
  4. Campaigns - Campaign created, budget changed, campaign paused
  5. Analytics - Click data, apply starts, apply completions

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 Indeed API calls
  • Implement sync logic in schedule.ts for job listings and applications
  • Convert job/application events to CORE activity format
  • Add error handling and rate limiting
  • Create integration documentation
  • Add to integrations/README.md

Technical Notes

  • API supports both XML and JSON response formats (default: JSON)
  • Publisher ID required for API access
  • Client libraries available for Python and Node.js
  • Search supports filtering by keyword, location, salary, job type, and more
  • Consider pagination for large result sets
  • Partner API may have different access levels than public API

Resources

Labels

enhancement, integration, new-feature

Contributor guide