For Agents
Post and update jobs on a Kardow job board, list applications by status, sync paying members and their subscription access, publish pages and CMS items, and subscribe webhooks to job and application events.
Use for: Post a remote contract developer job to my Kardow board, List all shortlisted applications for this job, Expire the job listing that has been filled, I want to sync a new paying member and activate their plan
Not supported: Does not handle payroll, interview scheduling, or charging cards directly. Use for running a Kardow job board's jobs, applications, members, content, and webhooks only.
The Kardow Public API runs a Kardow job board from outside the dashboard: posting and updating jobs, reading the applications they receive, and managing the members who pay for access. It creates jobs with salary range, job type, location, and apply method, lists applications by job and status such as shortlisted or hired, and syncs members along with their subscription access and payments. The same key also manages the board's content, including custom pages and blog posts, CMS collections and items, the media library, authors, categories, and geocoded locations, and subscribes webhooks to events such as job.created or application.received with delivery to a URL, Slack, or Discord.
Install Jentic One Beta
Jentic One is a self-hosted execution layer for AI agents. It lets your agent call the Kardow Public API, or any other public or private API you need. You set the rules, the agent never sees your credentials, and every call is logged.
Two steps, two machines. Install the instance in a safe environment, then register your agent from wherever it runs.
Step 1: Jentic One Host machine
# On the machine that will host your Jentic One instance:
curl -fsSL "https://jentic.com/install.sh?src=apis&api=%2Fapis%2Fkardow.com%2Fkardow" | shStep 2: Agent machine
# On the machine where your agent runs (keep this separate from the instance):
curl -fsSL "https://jentic.com/install.sh?src=apis&api=%2Fapis%2Fkardow.com%2Fkardow" | sh
jentic register # connects your agent to your Jentic One instanceJentic One is in public beta. The setup above keeps your agent separate from the instance, which is what you want before using real credentials: an agent running as the same OS user as Jentic One can read its stored keys directly. Just evaluating? A single local install is fine to start. See the secure deployment guide for the tiers.
What an agent can do with Kardow Public API.
Post a job with title, description, company_name, job_type, salary_min and salary_max, and an apply method such as website, email, or form
Search and filter the board's jobs by search text, job_types, locations, is_remote, and posted_within windows such as 7d or 30d
Take a job offline by patching its status to expired, or delete it permanently
List applications for a job filtered by status such as pending, shortlisted, rejected, or hired
Sync a member by email with optional access and payment, and apply access actions such as activate, cancel_at_period_end, or expire_now
Subscribe webhooks to events such as job.created, application.received, or payment.received, delivered to a URL, Slack, or Discord
Publish blog posts and pages, upsert CMS collections and items, and upload images to the media library
Patterns agents use Kardow Public API for, with concrete tasks.
★ Job Board Operations Through Jentic
An AI agent running a niche job board imports jobs from an employer's feed, posts each with its salary range and apply method, and expires roles once they are filled. Through Jentic the agent finds these Kardow operations by intent and calls them with the board's API key, while the developer chooses which writes it may make, for example posting and updating jobs but not deleting them.
Create a job with title 'Senior Backend Engineer', company_name 'Acme', job_type 'full-time', is_remote true, salary_min 120000, salary_max 150000, salary_currency 'USD', and apply_type 'website' with an apply_url
Application Triage Alerts
A board owner wants new applications to reach the hiring team without opening the dashboard. The agent subscribes a Slack webhook to application.received, and on request lists a job's applications filtered by status so the team can review pending ones and see who was shortlisted.
Create a webhook subscription with event 'application.received', target_type 'slack', and a Slack target_url, then list applications for a job_id with status 'pending'
Paid Membership Sync
A board that sells access to job seekers or employers keeps Kardow in step with its billing system. The agent syncs a member by email with their plan and payment, and applies access actions such as reactivate, mark_past_due, or cancel_now when billing events arrive, then reads the member's subscriptions and paywall summary by email.
Sync a member with email 'jane@example.com' and role 'employer', then apply the access action 'cancel_at_period_end' with her stripeSubscriptionId, and fetch the member to confirm
Board Content Publishing
An agent keeps a job board's SEO content fresh. It uploads a cover image to the media library, creates a blog post with meta_title and meta_description, and adds items to a CMS collection such as a salary guide, with each item's data validated against the collection's schema.
Upload an image by source_url, create a page with kind 'blog_post', status 'draft', the image as cover_image, and a meta_description, then add an item to the CMS collection with slug 'salary-guides'
37 endpoints — the kardow public api runs a kardow job board from outside the dashboard: posting and updating jobs, reading the applications they receive, and managing the members who pay for access.
METHOD
PATH
DESCRIPTION
/jobs
Create a job
/jobs
Search and list jobs
/jobs/{id}
Update a job's status or fields
/applications
List applications
/members/sync
Create or update a member
/members/access
Apply a member access action
/webhooks
Subscribe to webhook events
/pages
Create a page or blog post
/jobs
Create a job
/jobs
Search and list jobs
/jobs/{id}
Update a job's status or fields
/applications
List applications
/members/sync
Create or update a member
/members/access
Apply a member access action
/webhooks
Subscribe to webhook events
/pages
Create a page or blog post
This API is usable in Jentic One now. Its AI-readiness score against Jentic's framework shows where it stands today and where improvements would make it even easier for agents to use.
Base layer of spec validity and structural soundness.
Aggregated quality score from linter diagnostics, weighted by severity.
Percentage of `$ref` references that resolve successfully.
Checks whether the API description parses successfully and conforms to its declared specification (e.g., OpenAPI).
Structural correctness score based on schema issues using logarithmic dampening.
Clarity, completeness, and ingestion readiness for developers and tooling.
How richly the API is illustrated with examples.
Percentage of examples that conform to their schemas.
Percentage of operations with complete response definitions (success, client error, server error).
Health of API ingestion, bundling, and resolution within Jentic pipelines.
Semantic breadth, depth, and agent comprehension for AI systems.
Coverage of descriptions across API elements.
Coverage of RFC 9457 Problem Details for error responses.
Coverage, uniqueness, and casing consistency of operationIds for AI inference.
Coverage of summaries across operations/tags/info.
Functional utility, complexity comfort, and AI orchestration readiness.
Agent comfort level based on API operational and structural complexity.
Trust, risk posture, and security compliance.
Average quality of security schemes based on authentication method strength (weakest link for OAuth2).
Findability, semantic richness, and reasoning readiness.
Clarity and depth of descriptions across API elements.
Score it yourself
Every API in the directory is allowlisted, so you can re-score it with no key required.
npx @jentic/api-scorecard-cli score <openapi-url>What agents get from Jentic-routed access to this vendor.
Setup
Wiring Kardow by hand means sending the x-api-key header with the right scopes, learning its job, member access, and webhook enums, and handling multipart uploads for assets. Through Jentic you install once, import the Kardow Public API from the API Directory, store the key once, and your agent calls it.
Permission scoping
Kardow puts job, page, and webhook ids and the CMS collection slug in the URL path (/jobs/{id}, /cms/{slug}/{id}), so a rule can pin your agent to one job or one CMS collection, while member actions carry the email in the body. You choose the operations it may call, so destructive ones like DELETE /jobs/{id} or DELETE /cms/{slug} are not included unless you add them.
Credential isolation
Your Kardow API key is stored once, encrypted, by your own Jentic One instance and injected at execution time. It never enters the agent's prompt, logs, or context.
Intent-based discovery
Agents search Jentic by intent such as 'post a job to my board' or 'list shortlisted applicants', and Jentic returns the matching Kardow operation with its input schema so the agent calls the right endpoint without browsing the reference docs.
Alternatives and complements available in the Jentic catalogue.
Specific to using Kardow Public API through Jentic.
What authentication does the Kardow Public API use?
Per its OpenAPI spec, the Kardow Public API authenticates with an API key sent in the x-api-key header, created under Settings > API Keys in the Kardow dashboard. Some operations need a scope on the key, for example listing users requires members:read. Through Jentic the key is stored encrypted by your own Jentic One instance and injected at call time.
Is there a Kardow MCP server?
You don't need an MCP server to give your agent the Kardow Public API. Jentic connects it directly from the API Directory: import it, store your API key once, and your agent calls it, finding job, application, and member operations on demand instead of loading a server's tool definitions into its context.
Can I limit what my agent is allowed to do with the Kardow Public API?
Yes. Write a rule that allows only listing jobs, creating jobs, patching jobs, and listing applications, so a posting agent can publish and expire listings and read applicants but cannot delete jobs, touch member access, or remove CMS collections. Every call it makes is logged.
How do I take a Kardow job offline without deleting it?
Call PATCH /jobs/{id} with status set to expired. DELETE /jobs/{id} removes the job permanently and cannot be undone, so the spec recommends expiring instead when you may want the listing back.
What webhook events does the Kardow Public API support?
POST /webhooks subscribes to events including job.created, job.expired, application.received, application.status_changed, user.created, subscription.canceled, and payment.received, or * for all, with target_type set to webhook, slack, or discord. PATCH /webhooks/{id} enables or disables a subscription.
What are the rate limits for the Kardow Public API?
The OpenAPI spec does not specify rate limits. Check https://kardow.com or contact Kardow support for current limits.
How do I post a job to Kardow through Jentic?
Search Jentic for an intent like 'post a job to my job board', import the Kardow Public API from the API Directory, and store your API key. Your agent calls POST /jobs with title, description, and company_name, plus optional fields such as job_type and salary_min, and can resolve a free-text location first with POST /locations to get a location_id. To run it on your own infrastructure, install Jentic One from its GitHub repo.
GET STARTED