Yardstick MCP
Official MCP server for Yardstick ATS enabling AI agents to manage hiring workflows including jobs, candidates, applications, interviews, and scorecards via hosted remote endpoint or local CLI.
Endpoint and access
No sign-in to connect and list tools. Individual tools may still need a vendor account, credentials, or permissions; check the documented prerequisites.
https://api.yardstick.team/mcpWhat its tools do
275 tools, grouped by the hints the server advertises. Hints are self-declared, not verified behavior.
Read-only (93)
yardstick_slack_members_listyardstick_slack_meyardstick_notifications_getyardstick_notifications_org_defaults_getyardstick_offers_listyardstick_offers_readyardstick_offers_timelineyardstick_offers_approval_reviewyardstick_offers_send_statusyardstick_offers_statusyardstick_offers_signed_copyyardstick_offers_verification_policy_readyardstick_offers_lifecycle_policy_readyardstick_offers_countersignature_readyardstick_offers_library_documents_listyardstick_offers_library_documents_readyardstick_offers_library_packets_listyardstick_offers_documents_listyardstick_offers_signed_files_listyardstick_offers_signed_files_downloadyardstick_identityyardstick_tasks_listyardstick_people_listyardstick_people_readyardstick_people_documents_listyardstick_people_documents_download_urlyardstick_talent_searchyardstick_prospects_listyardstick_prospects_readyardstick_prospects_outreach_previewyardstick_prospect_imports_readyardstick_ats_imports_readyardstick_source_links_listyardstick_source_links_readyardstick_prospect_activities_listyardstick_talent_pools_listyardstick_talent_pools_readyardstick_talent_pool_members_listyardstick_applications_listyardstick_applications_readyardstick_applications_hiring_step_decisionyardstick_decision_brief_readyardstick_email_drafts_listyardstick_email_drafts_readyardstick_email_drafts_previewyardstick_email_drafts_historyyardstick_email_automation_settings_readyardstick_email_sender_settings_readyardstick_email_sender_connections_listyardstick_email_sender_defaults_listyardstick_integrations_workspace_health_readyardstick_email_templates_listyardstick_email_templates_readyardstick_email_template_versions_listyardstick_application_interview_sessions_listyardstick_opportunities_listyardstick_opportunities_readyardstick_reporting_searchyardstick_departments_listyardstick_departments_readyardstick_departments_members_listyardstick_departments_invitations_listyardstick_access_grants_listyardstick_access_grants_readyardstick_jobs_listyardstick_jobs_readyardstick_jobs_prospect_matchesyardstick_pipelines_listyardstick_pipelines_readyardstick_pipelines_assign_to_job_previewyardstick_automation_rules_listyardstick_automation_runs_listyardstick_automation_rules_readyardstick_automation_rules_preview_ruleyardstick_automation_rules_preview_draftyardstick_automation_rules_previewyardstick_automation_starters_listyardstick_automation_starters_previewyardstick_built_in_agents_listyardstick_built_in_agents_readyardstick_built_in_agents_runsyardstick_job_postings_listyardstick_job_postings_readyardstick_interview_plans_listyardstick_interview_plans_readyardstick_interview_plan_drafts_listyardstick_interview_plan_drafts_readyardstick_interview_sessions_readyardstick_interview_sessions_interviewers_listyardstick_interview_sessions_available_interviewers_listyardstick_interview_sessions_feedback_readyardstick_events_listyardstick_audit_log_list
Can change data (182)
yardstick_slack_connect_linkyardstick_slack_disconnectyardstick_slack_members_matchyardstick_slack_member_setyardstick_slack_member_unsetyardstick_slack_me_testyardstick_slack_statusyardstick_notifications_setyardstick_notifications_resetyardstick_notifications_org_defaults_setyardstick_offers_createyardstick_offers_updateyardstick_offers_submit_for_approvalyardstick_offers_open_revisionyardstick_offers_cancel_revisionyardstick_offers_verification_policy_updateyardstick_offers_lifecycle_policy_updateyardstick_offers_countersignature_updateyardstick_offers_library_documents_createyardstick_offers_library_documents_update_draftyardstick_offers_library_documents_publishyardstick_offers_library_documents_copyyardstick_offers_library_documents_archiveyardstick_offers_library_packets_createyardstick_offers_library_packets_updateyardstick_offers_library_packets_archiveyardstick_offers_library_packets_reorderyardstick_offers_documents_addyardstick_offers_documents_removeyardstick_offers_documents_reorderyardstick_offers_documents_edityardstick_offers_answers_updateyardstick_offers_documents_change_packetyardstick_offers_approval_previewyardstick_offers_send_previewyardstick_offers_rescind_previewyardstick_offers_approval_bindyardstick_offers_send_bindyardstick_offers_rescind_bindyardstick_tasks_respondyardstick_tasks_deep_linkyardstick_people_createyardstick_people_updateyardstick_prospects_createyardstick_prospects_convert_previewyardstick_prospects_convert_bindyardstick_prospects_outreach_create_draftyardstick_prospect_imports_dry_runyardstick_prospect_imports_applyyardstick_ats_imports_dry_runyardstick_ats_imports_applyyardstick_source_links_createyardstick_source_links_disableyardstick_prospects_updateyardstick_prospect_activities_createyardstick_talent_pools_createyardstick_talent_pools_updateyardstick_talent_pool_members_addyardstick_talent_pool_members_removeyardstick_applications_createyardstick_applications_updateyardstick_applications_decideyardstick_applications_decide_hiring_stepyardstick_applications_admit_candidateyardstick_applications_undo_candidate_admissionyardstick_applications_transition_directyardstick_applications_transition_previewyardstick_applications_transition_bindyardstick_applications_archive_previewyardstick_applications_archive_bindyardstick_applications_status_email_poc_previewyardstick_applications_status_email_poc_bindyardstick_decision_brief_regenerateyardstick_applications_email_decision_previewyardstick_applications_email_decision_applyyardstick_email_drafts_updateyardstick_email_drafts_sendyardstick_email_drafts_discardyardstick_email_automation_settings_updateyardstick_email_sender_defaults_setyardstick_email_templates_previewyardstick_email_templates_validateyardstick_email_templates_publishyardstick_email_templates_createyardstick_email_templates_duplicateyardstick_email_templates_resetyardstick_email_templates_deleteyardstick_email_templates_rollbackyardstick_email_templates_preview_customizationyardstick_final_recommendation_recordyardstick_application_interview_sessions_ensureyardstick_opportunities_next_actionyardstick_opportunities_deep_linkyardstick_departments_createyardstick_departments_updateyardstick_departments_members_addyardstick_departments_members_set_leadyardstick_departments_members_removeyardstick_departments_invitations_createyardstick_access_grants_createyardstick_access_grants_revokeyardstick_jobs_createyardstick_jobs_updateyardstick_jobs_closeyardstick_jobs_archiveyardstick_jobs_attach_artifactyardstick_jobs_detach_artifactyardstick_pipelines_createyardstick_pipelines_cloneyardstick_pipelines_updateyardstick_pipelines_stages_createyardstick_pipelines_stages_updateyardstick_pipelines_reorder_stagesyardstick_pipelines_stages_delete_previewyardstick_pipelines_stages_delete_bindyardstick_pipelines_assign_to_jobyardstick_automation_rules_copyyardstick_automation_rules_bulkyardstick_automation_runs_retryyardstick_automation_rules_createyardstick_automation_rules_updateyardstick_automation_rules_deleteyardstick_automation_starters_createyardstick_automation_starters_renameyardstick_automation_starters_deleteyardstick_automation_starters_save_jobyardstick_automation_starters_applyyardstick_built_in_agents_enable_previewyardstick_built_in_agents_enable_bindyardstick_built_in_agents_configure_previewyardstick_built_in_agents_configure_bindyardstick_job_postings_validateyardstick_job_postings_createyardstick_job_postings_updateyardstick_job_postings_publish_previewyardstick_job_postings_publish_bindyardstick_job_postings_archive_previewyardstick_job_postings_archive_bindyardstick_interview_plans_archiveyardstick_interview_plans_unarchiveyardstick_interview_plans_set_hiring_manager_decidesyardstick_interview_plan_drafts_generate_outcomesyardstick_interview_plan_drafts_confirm_outcomesyardstick_interview_plan_drafts_generate_competenciesyardstick_interview_plan_drafts_generate_skillsyardstick_interview_plan_drafts_generate_roundsyardstick_interview_plan_drafts_generate_anchorsyardstick_interview_plan_drafts_generate_questions_directionsyardstick_interview_plan_drafts_add_competenciesyardstick_interview_plan_drafts_update_competenciesyardstick_interview_plan_drafts_delete_competenciesyardstick_interview_plan_drafts_add_skillsyardstick_interview_plan_drafts_update_skillsyardstick_interview_plan_drafts_delete_skillsyardstick_interview_plan_drafts_add_roundsyardstick_interview_plan_drafts_update_roundsyardstick_interview_plan_drafts_delete_roundsyardstick_interview_plan_drafts_add_questionsyardstick_interview_plan_drafts_update_questionsyardstick_interview_plan_drafts_delete_questionsyardstick_interview_plan_drafts_update_round_directionsyardstick_interview_plan_drafts_update_anchorsyardstick_interview_plan_drafts_delete_anchorsyardstick_interview_plan_drafts_clear_outcomesyardstick_interview_plan_drafts_clear_competenciesyardstick_interview_plan_drafts_clear_job_skillsyardstick_interview_plan_drafts_clear_interview_sequenceyardstick_interview_plan_drafts_validateyardstick_interview_plans_publish_previewyardstick_interview_plans_publish_bindyardstick_interview_plans_modify_active_previewyardstick_interview_plans_modify_active_bindyardstick_interview_sessions_interviewers_assignyardstick_interview_sessions_interviewers_unassignyardstick_interview_sessions_startyardstick_interview_sessions_completeyardstick_interview_sessions_scorecard_remove_ratingyardstick_interview_sessions_question_notes_saveyardstick_interview_sessions_scorecard_submityardstick_interview_sessions_readinessyardstick_interview_sessions_scheduling_link_generateyardstick_interview_sessions_cancel
Checks and signals
Each line is separate evidence, not a trust score.
- Passed Endpoint answered the live check ·
- Passed Official MCP Registry namespace is tied to yardstick.team ·
- Passed Endpoint is on the registry namespace domain ·
- Availability 1 of 1 checks passed in 30 days
What you can do with it
- Manage job postings and candidate pipelines
- Schedule and track interviews
- Review candidate applications and scorecards
- Execute hiring workflows via AI agents
Source and maintenance
- Maintenance checked
Protocol and capabilities
- Server
- team.yardstick/yardstick 0.6.14
- MCP protocol negotiated in check
- 2025-06-18
- Tools
- 275 advertised
- Resources
- Not advertised
- Resource templates
- Not advertised
- Prompts
- Not advertised
{
"tools": {
"listChanged": false
}
}Tools
275 advertised
yardstick_slack_connect_link — Get the Slack consent link
Get the Slack consent link. Open it in a browser to connect. Admins only.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Get the Slack consent link",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": false
}yardstick_slack_disconnect — Disconnect Slack
Disconnect Slack from this organization. Admins only.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Disconnect Slack",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_slack_members_list — List team members and Slack matches
List team members and their Slack matches. Admins only.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"request_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "List team members and Slack matches",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_slack_members_match — Match team members by email
Match team members to Slack by email. Admins only.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Match team members by email",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_slack_member_set — Match a team member to Slack
Match one team member to Slack. Admins only.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"user_id",
"slack_user_id"
],
"properties": {
"user_id": {
"type": "string",
"format": "uuid"
},
"request_id": {
"type": "string",
"minLength": 1
},
"slack_user_id": {
"type": "string",
"pattern": "^[UW][A-Z0-9]{1,63}$"
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Match a team member to Slack",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_slack_member_unset — Remove a team member's Slack match
Remove one team member's Slack match. Admins only.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"user_id"
],
"properties": {
"user_id": {
"type": "string",
"format": "uuid"
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Remove a team member's Slack match",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_slack_me — Read your Slack match
Read your Slack match. If unmatched, use "Connect my Slack" in the app.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"request_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Read your Slack match",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_slack_me_test — Send yourself a Slack test message
Send yourself a Slack test message.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Send yourself a Slack test message",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": false
}yardstick_slack_status — Read Slack connection status
Read the Slack workspace name, connection state and connecting admin's user id. Admins only.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"request_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Read Slack connection status",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_notifications_get — Read your notification channels
Read your notification channels, personal overrides, organization defaults and Slack availability.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"request_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Read your notification channels",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_notifications_set — Set your notification channel
Choose Email, Slack or Both for one of your internal message types.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"message_type",
"channel"
],
"properties": {
"channel": {
"enum": [
"email",
"slack",
"both"
],
"type": "string"
},
"request_id": {
"type": "string",
"minLength": 1
},
"message_type": {
"enum": [
"hiring_process_updates",
"scorecard_reminders",
"offer_approvals",
"interviewer_coaching",
"decision_briefs"
],
"type": "string"
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Set your notification channel",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_notifications_reset — Restore your default notification channel
Remove your choice for one message type and use the organization default again.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"message_type"
],
"properties": {
"request_id": {
"type": "string",
"minLength": 1
},
"message_type": {
"enum": [
"hiring_process_updates",
"scorecard_reminders",
"offer_approvals",
"interviewer_coaching",
"decision_briefs"
],
"type": "string"
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Restore your default notification channel",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_notifications_org_defaults_get — Read organization notification defaults
Read the organization's default notification channels. Admins only.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"request_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Read organization notification defaults",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_notifications_org_defaults_set — Set an organization notification default
Set the default channel for people who have not chosen their own. Admins only.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"message_type",
"channel"
],
"properties": {
"channel": {
"enum": [
"email",
"slack",
"both"
],
"type": "string"
},
"request_id": {
"type": "string",
"minLength": 1
},
"message_type": {
"enum": [
"hiring_process_updates",
"scorecard_reminders",
"offer_approvals",
"interviewer_coaching",
"decision_briefs"
],
"type": "string"
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Set an organization notification default",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_offers_list — List offers visible to you.
List offers visible to you.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1
},
"state": {
"enum": [
"draft",
"pending_approval",
"approved",
"sent",
"viewed",
"partially_signed",
"sealing",
"signed",
"declined",
"expired",
"rescinded",
"superseded"
],
"type": "string"
},
"cursor": {
"type": "string"
},
"current": {
"type": "boolean"
},
"unsigned": {
"type": "boolean"
},
"person_id": {
"type": "string"
},
"request_id": {
"type": "string",
"minLength": 1
},
"valid_after": {
"type": "string",
"format": "date-time"
},
"valid_before": {
"type": "string",
"format": "date-time"
},
"application_id": {
"type": "string"
},
"include_archived": {
"type": "boolean"
}
},
"additionalProperties": false
}{
"title": "List offers visible to you.",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_offers_read — Read an offer. Members see status; its creator and admins see full details.
Read an offer. Members see status; its creator and admins see full details.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"offer_id"
],
"properties": {
"offer_id": {
"type": "string"
},
"request_id": {
"type": "string",
"minLength": 1
},
"include_archived": {
"type": "boolean"
}
},
"additionalProperties": false
}{
"title": "Read an offer. Members see status; its creator and admins see full details.",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_offers_timeline — Read the offer history.
Read the offer history.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"offer_id"
],
"properties": {
"offer_id": {
"type": "string"
},
"request_id": {
"type": "string",
"minLength": 1
},
"include_archived": {
"type": "boolean"
}
},
"additionalProperties": false
}{
"title": "Read the offer history.",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_offers_create — Create an offer draft.
Create an offer draft.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"idempotency_key",
"application_id"
],
"properties": {
"packet_id": {
"type": "string",
"format": "uuid"
},
"request_id": {
"type": "string",
"minLength": 1
},
"terms_json": {
"type": "object",
"additionalProperties": {}
},
"content_ast": {
"anyOf": [
{
"type": "object",
"additionalProperties": {}
},
{
"type": "null"
}
]
},
"valid_until": {
"anyOf": [
{
"type": "string",
"format": "date-time"
},
{
"type": "null"
}
]
},
"snapshot_html": {
"anyOf": [
{
"type": "string",
"maxLength": 262144
},
{
"type": "null"
}
]
},
"snapshot_text": {
"anyOf": [
{
"type": "string",
"maxLength": 262144
},
{
"type": "null"
}
]
},
"application_id": {
"type": "string"
},
"idempotency_key": {
"type": "string",
"maxLength": 200,
"minLength": 1
},
"template_version_id": {
"type": "string",
"format": "uuid"
}
},
"additionalProperties": false
}{
"title": "Create an offer draft.",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_offers_update — Update a draft using its current version.
Update a draft using its current version.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"idempotency_key",
"offer_id",
"expected_draft_revision"
],
"properties": {
"offer_id": {
"type": "string"
},
"request_id": {
"type": "string",
"minLength": 1
},
"terms_json": {
"type": "object",
"additionalProperties": {}
},
"content_ast": {
"anyOf": [
{
"type": "object",
"additionalProperties": {}
},
{
"type": "null"
}
]
},
"valid_until": {
"anyOf": [
{
"type": "string",
"format": "date-time"
},
{
"type": "null"
}
]
},
"snapshot_html": {
"anyOf": [
{
"type": "string",
"maxLength": 262144
},
{
"type": "null"
}
]
},
"snapshot_text": {
"anyOf": [
{
"type": "string",
"maxLength": 262144
},
{
"type": "null"
}
]
},
"idempotency_key": {
"type": "string",
"maxLength": 200,
"minLength": 1
},
"expected_draft_revision": {
"type": "integer",
"exclusiveMinimum": 0
}
},
"additionalProperties": false
}{
"title": "Update a draft using its current version.",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_offers_submit_for_approval — Request approval of this draft.
Request approval of this draft.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"idempotency_key",
"offer_id",
"expected_draft_revision",
"expected_approval_digest",
"expected_policy_revision_id"
],
"properties": {
"offer_id": {
"type": "string"
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"maxLength": 200,
"minLength": 1
},
"expected_draft_revision": {
"type": "integer",
"exclusiveMinimum": 0
},
"expected_approval_digest": {
"type": "string",
"pattern": "^[a-f0-9]{64}$"
},
"expected_policy_revision_id": {
"type": "string",
"format": "uuid"
}
},
"additionalProperties": false
}{
"title": "Request approval of this draft.",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_offers_approval_review — Read the approval step assigned to you.
Read the approval step assigned to you.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"offer_id"
],
"properties": {
"offer_id": {
"type": "string"
},
"request_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Read the approval step assigned to you.",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_offers_send_status — Read offer delivery status and recovery guidance.
Read offer delivery status and recovery guidance.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"offer_id"
],
"properties": {
"offer_id": {
"type": "string"
},
"request_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Read offer delivery status and recovery guidance.",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_offers_status — Read signing, company signature, finalization and lifecycle status.
Read signing, company signature, finalization and lifecycle status.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"offer_id"
],
"properties": {
"offer_id": {
"type": "string"
},
"request_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Read signing, company signature, finalization and lifecycle status.",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_offers_signed_copy — Get a five-minute download link for the signed company copy. Requires creator or admin access.
Get a five-minute download link for the signed company copy. Requires creator or admin access.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"offer_id"
],
"properties": {
"offer_id": {
"type": "string"
},
"request_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Get a five-minute download link for the signed company copy. Requires creator or admin access.",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_offers_open_revision — Open a replacement draft. Sending requires a separate preview and confirmation.
Open a replacement draft. Sending requires a separate preview and confirmation.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"idempotency_key",
"offer_id"
],
"properties": {
"offer_id": {
"type": "string"
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"maxLength": 200,
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Open a replacement draft. Sending requires a separate preview and confirmation.",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_offers_cancel_revision — Cancel a replacement draft.
Cancel a replacement draft.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"idempotency_key",
"offer_id"
],
"properties": {
"offer_id": {
"type": "string"
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"maxLength": 200,
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Cancel a replacement draft.",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_offers_verification_policy_read — Read candidate email verification settings. Admin only.
Read candidate email verification settings. Admin only.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"request_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Read candidate email verification settings. Admin only.",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_offers_verification_policy_update — Set candidate email verification requirements. Admin only.
Set candidate email verification requirements. Admin only.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"idempotency_key",
"required"
],
"properties": {
"required": {
"type": "boolean"
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"maxLength": 200,
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Set candidate email verification requirements. Admin only.",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_offers_lifecycle_policy_read — Read offer reminder settings. Admin only.
Read offer reminder settings. Admin only.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"request_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Read offer reminder settings. Admin only.",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_offers_lifecycle_policy_update — Set reminder intervals in seconds before expiry. Admin only.
Set reminder intervals in seconds before expiry. Admin only.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"idempotency_key",
"offsets_seconds",
"expected_revision"
],
"properties": {
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"maxLength": 200,
"minLength": 1
},
"offsets_seconds": {
"type": "array",
"items": {
"type": "integer",
"exclusiveMinimum": 0
},
"maxItems": 3
},
"expected_revision": {
"type": "integer",
"exclusiveMinimum": 0
}
},
"additionalProperties": false
}{
"title": "Set reminder intervals in seconds before expiry. Admin only.",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_offers_countersignature_read — Read company signature settings for this offer.
Read company signature settings for this offer.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"offer_id"
],
"properties": {
"offer_id": {
"type": "string"
},
"request_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Read company signature settings for this offer.",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_offers_countersignature_update — Configure the company signer. This does not sign the offer.
Configure the company signer. This does not sign the offer.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"idempotency_key",
"offer_id",
"mode",
"user_id",
"generation"
],
"properties": {
"mode": {
"enum": [
"none",
"pre_sign",
"post_candidate"
],
"type": "string"
},
"user_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"offer_id": {
"type": "string"
},
"confirmed": {
"type": "boolean"
},
"generation": {
"type": "integer",
"minimum": 0
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"maxLength": 200,
"minLength": 1
},
"refresh_recipient": {
"type": "boolean"
}
},
"additionalProperties": false
}{
"title": "Configure the company signer. This does not sign the offer.",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_offers_library_documents_list — List offer documents with their fill-ins, packets and published version. Admins only.
List offer documents with their fill-ins, packets and published version. Admins only.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"request_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "List offer documents with their fill-ins, packets and published version. Admins only.",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_offers_library_documents_create — Create an offer document. Admins only.
Create an offer document. Admins only.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"idempotency_key",
"name",
"kind"
],
"properties": {
"kind": {
"enum": [
"offer_letter",
"agreement"
],
"type": "string"
},
"name": {
"type": "string",
"maxLength": 200,
"minLength": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"maxLength": 200,
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Create an offer document. Admins only.",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_offers_library_documents_read — Read an offer document, its draft and its versions. Admins only.
Read an offer document, its draft and its versions. Admins only.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"template_id"
],
"properties": {
"request_id": {
"type": "string",
"minLength": 1
},
"template_id": {
"type": "string",
"format": "uuid"
}
},
"additionalProperties": false
}{
"title": "Read an offer document, its draft and its versions. Admins only.",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_offers_library_documents_update_draft — Save an offer document draft and its fill-ins. Admins only.
Save an offer document draft and its fill-ins. Admins only.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"idempotency_key",
"template_id",
"content_ast"
],
"properties": {
"fill_ins": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": {}
}
},
"request_id": {
"type": "string",
"minLength": 1
},
"content_ast": {
"type": "object",
"additionalProperties": {}
},
"template_id": {
"type": "string",
"format": "uuid"
},
"idempotency_key": {
"type": "string",
"maxLength": 200,
"minLength": 1
},
"expected_revision": {
"type": "integer",
"minimum": 1
}
},
"additionalProperties": false
}{
"title": "Save an offer document draft and its fill-ins. Admins only.",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_offers_library_documents_publish — Publish the current draft as a new version. Admins only.
Publish the current draft as a new version. Admins only.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"idempotency_key",
"template_id"
],
"properties": {
"request_id": {
"type": "string",
"minLength": 1
},
"template_id": {
"type": "string",
"format": "uuid"
},
"idempotency_key": {
"type": "string",
"maxLength": 200,
"minLength": 1
},
"expected_revision": {
"type": "integer",
"minimum": 1
}
},
"additionalProperties": false
}{
"title": "Publish the current draft as a new version. Admins only.",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_offers_library_documents_copy — Copy an offer document into a new draft. Admins only.
Copy an offer document into a new draft. Admins only.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"idempotency_key",
"template_id"
],
"properties": {
"name": {
"type": "string",
"maxLength": 200,
"minLength": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"template_id": {
"type": "string",
"format": "uuid"
},
"idempotency_key": {
"type": "string",
"maxLength": 200,
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Copy an offer document into a new draft. Admins only.",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_offers_library_documents_archive — Archive an offer document. Admins only.
Archive an offer document. Admins only.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"idempotency_key",
"template_id"
],
"properties": {
"request_id": {
"type": "string",
"minLength": 1
},
"template_id": {
"type": "string",
"format": "uuid"
},
"idempotency_key": {
"type": "string",
"maxLength": 200,
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Archive an offer document. Admins only.",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_offers_library_packets_list — List offer packets and their documents. Admins only.
List offer packets and their documents. Admins only.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"request_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "List offer packets and their documents. Admins only.",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_offers_library_packets_create — Create an offer packet. Admins only.
Create an offer packet. Admins only.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"idempotency_key",
"name",
"template_ids"
],
"properties": {
"name": {
"type": "string",
"maxLength": 200,
"minLength": 1
},
"audience": {
"type": "string",
"maxLength": 500
},
"defaults": {
"type": "object",
"additionalProperties": {}
},
"request_id": {
"type": "string",
"minLength": 1
},
"template_ids": {
"type": "array",
"items": {
"type": "string",
"format": "uuid"
},
"minItems": 1
},
"idempotency_key": {
"type": "string",
"maxLength": 200,
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Create an offer packet. Admins only.",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_offers_library_packets_update — Change an offer packet. Admins only.
Change an offer packet. Admins only.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"idempotency_key",
"packet_id"
],
"properties": {
"name": {
"type": "string",
"maxLength": 200,
"minLength": 1
},
"audience": {
"type": "string",
"maxLength": 500
},
"defaults": {
"type": "object",
"additionalProperties": {}
},
"packet_id": {
"type": "string",
"format": "uuid"
},
"request_id": {
"type": "string",
"minLength": 1
},
"template_ids": {
"type": "array",
"items": {
"type": "string",
"format": "uuid"
},
"minItems": 1
},
"idempotency_key": {
"type": "string",
"maxLength": 200,
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Change an offer packet. Admins only.",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_offers_library_packets_archive — Archive an offer packet. Admins only.
Archive an offer packet. Admins only.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"idempotency_key",
"packet_id"
],
"properties": {
"packet_id": {
"type": "string",
"format": "uuid"
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"maxLength": 200,
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Archive an offer packet. Admins only.",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_offers_library_packets_reorder — Set the order of offer packets. Admins only.
Set the order of offer packets. Admins only.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"idempotency_key",
"packet_ids"
],
"properties": {
"packet_ids": {
"type": "array",
"items": {
"type": "string",
"format": "uuid"
},
"minItems": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"maxLength": 200,
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Set the order of offer packets. Admins only.",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_offers_documents_list — List the documents in an offer and what each still needs before sending.
List the documents in an offer and what each still needs before sending.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"offer_id"
],
"properties": {
"offer_id": {
"type": "string"
},
"request_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "List the documents in an offer and what each still needs before sending.",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_offers_documents_add — Add a published offer document to a draft offer.
Add a published offer document to a draft offer.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"idempotency_key",
"offer_id",
"template_id"
],
"properties": {
"offer_id": {
"type": "string"
},
"request_id": {
"type": "string",
"minLength": 1
},
"template_id": {
"type": "string",
"format": "uuid"
},
"idempotency_key": {
"type": "string",
"maxLength": 200,
"minLength": 1
},
"expected_draft_revision": {
"type": "integer",
"exclusiveMinimum": 0
}
},
"additionalProperties": false
}{
"title": "Add a published offer document to a draft offer.",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_offers_documents_remove — Remove a document from a draft offer.
Remove a document from a draft offer.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"idempotency_key",
"offer_id",
"document_id"
],
"properties": {
"offer_id": {
"type": "string"
},
"request_id": {
"type": "string",
"minLength": 1
},
"document_id": {
"type": "string",
"format": "uuid"
},
"idempotency_key": {
"type": "string",
"maxLength": 200,
"minLength": 1
},
"expected_draft_revision": {
"type": "integer",
"exclusiveMinimum": 0
}
},
"additionalProperties": false
}{
"title": "Remove a document from a draft offer.",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_offers_documents_reorder — Set the order of the documents in a draft offer. List every document once.
Set the order of the documents in a draft offer. List every document once.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"idempotency_key",
"offer_id",
"document_ids"
],
"properties": {
"offer_id": {
"type": "string"
},
"request_id": {
"type": "string",
"minLength": 1
},
"document_ids": {
"type": "array",
"items": {
"type": "string",
"format": "uuid"
},
"maxItems": 200,
"minItems": 1
},
"idempotency_key": {
"type": "string",
"maxLength": 200,
"minLength": 1
},
"expected_draft_revision": {
"type": "integer",
"exclusiveMinimum": 0
}
},
"additionalProperties": false
}{
"title": "Set the order of the documents in a draft offer. List every document once.",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_offers_documents_edit — Edit one document for this offer only. The library document does not change.
Edit one document for this offer only. The library document does not change. `expected_draft_revision` is required.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"idempotency_key",
"offer_id",
"document_id",
"content_ast",
"expected_draft_revision"
],
"properties": {
"offer_id": {
"type": "string"
},
"request_id": {
"type": "string",
"minLength": 1
},
"content_ast": {
"type": "object",
"additionalProperties": {}
},
"document_id": {
"type": "string",
"format": "uuid"
},
"idempotency_key": {
"type": "string",
"maxLength": 200,
"minLength": 1
},
"expected_draft_revision": {
"type": "integer",
"exclusiveMinimum": 0
}
},
"additionalProperties": false
}{
"title": "Edit one document for this offer only. The library document does not change.",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_offers_answers_update — Fill in the answers the offer documents ask for.
Fill in the answers the offer documents ask for. `expected_draft_revision` is required.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"idempotency_key",
"offer_id",
"answers",
"expected_draft_revision"
],
"properties": {
"answers": {
"type": "object",
"additionalProperties": {}
},
"offer_id": {
"type": "string"
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"maxLength": 200,
"minLength": 1
},
"expected_draft_revision": {
"type": "integer",
"exclusiveMinimum": 0
}
},
"additionalProperties": false
}{
"title": "Fill in the answers the offer documents ask for.",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_offers_documents_change_packet — Replace the offer's documents with a different packet. If answers or edits would be lost, nothing changes until you confirm.
Replace the offer's documents with a different packet. If answers or edits would be lost, nothing changes and the call returns a 409 `change_packet_confirm_required` error with the number of answers and edits. To go ahead, repeat the call with `confirm_drops` set to true.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"idempotency_key",
"offer_id",
"packet_id"
],
"properties": {
"offer_id": {
"type": "string"
},
"packet_id": {
"type": "string",
"format": "uuid"
},
"request_id": {
"type": "string",
"minLength": 1
},
"confirm_drops": {
"type": "boolean"
},
"idempotency_key": {
"type": "string",
"maxLength": 200,
"minLength": 1
},
"expected_draft_revision": {
"type": "integer",
"exclusiveMinimum": 0
}
},
"additionalProperties": false
}{
"title": "Replace the offer's documents with a different packet. If answers or edits would be lost, nothing changes until you confirm.",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_offers_signed_files_list — List the signed files of an offer. Requires creator or admin access.
List the signed files of an offer. Requires creator or admin access.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"offer_id"
],
"properties": {
"offer_id": {
"type": "string"
},
"request_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "List the signed files of an offer. Requires creator or admin access.",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_offers_signed_files_download — Download one signed file of an offer as a PDF. Requires creator or admin access.
Download one signed file of an offer as a PDF. file_id is required: this tool returns one file per call, up to 3 MB. Get the IDs from `yardstick_offers_signed_files_list`. For a larger file, or to save every file, use the CLI `yardstick offers signed-files download`. Requires creator or admin access.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"offer_id"
],
"properties": {
"file_id": {
"type": "string",
"format": "uuid"
},
"offer_id": {
"type": "string"
},
"request_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Download one signed file of an offer as a PDF. Requires creator or admin access.",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_offers_approval_preview — Preview offer approval
Review an approval decision without recording it.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"idempotency_key",
"offer_id",
"decision",
"comment"
],
"properties": {
"comment": {
"type": "string",
"maxLength": 4000,
"minLength": 1
},
"decision": {
"enum": [
"approve",
"reject"
],
"type": "string"
},
"offer_id": {
"type": "string"
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"maxLength": 200,
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Preview offer approval",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_offers_send_preview — Preview offer send
Review the exact offer and recipient without sending.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"idempotency_key",
"offer_id",
"expected_draft_revision"
],
"properties": {
"offer_id": {
"type": "string"
},
"recipient": {
"type": "string",
"format": "email"
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"maxLength": 200,
"minLength": 1
},
"expected_draft_revision": {
"type": "integer",
"exclusiveMinimum": 0
},
"expected_snapshot_sha256": {
"type": "string",
"pattern": "^[a-f0-9]{64}$"
},
"recipient_override_reason": {
"type": "string",
"maxLength": 1000,
"minLength": 1
},
"expected_send_payload_digest": {
"type": "string",
"pattern": "^[a-f0-9]{64}$"
}
},
"additionalProperties": false
}{
"title": "Preview offer send",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_offers_rescind_preview — Preview offer rescind
Review withdrawal and optional candidate email without changing the offer.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"idempotency_key",
"offer_id"
],
"properties": {
"offer_id": {
"type": "string"
},
"request_id": {
"type": "string",
"minLength": 1
},
"email_candidate": {
"type": "boolean"
},
"idempotency_key": {
"type": "string",
"maxLength": 200,
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Preview offer rescind",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_offers_approval_bind — Confirm offer approval
Record only the approval decision explicitly reviewed in preview.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"idempotency_key",
"offer_id",
"decision",
"comment",
"binding"
],
"properties": {
"binding": {
"type": "object",
"required": [
"preview_hash",
"approved_action_key",
"approved_input_hash",
"approved_idempotency_key",
"resource_version_precondition"
],
"properties": {
"preview_hash": {
"type": "string",
"minLength": 1
},
"approved_action_key": {
"type": "string",
"minLength": 1
},
"approved_input_hash": {
"type": "string",
"minLength": 1
},
"approved_idempotency_key": {
"type": "string",
"minLength": 1
},
"resource_version_precondition": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
},
"comment": {
"type": "string",
"maxLength": 4000,
"minLength": 1
},
"decision": {
"enum": [
"approve",
"reject"
],
"type": "string"
},
"offer_id": {
"type": "string"
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"maxLength": 200,
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Confirm offer approval",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_offers_send_bind — Confirm offer send
Send only the exact offer explicitly reviewed in preview.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"idempotency_key",
"offer_id",
"expected_draft_revision",
"binding"
],
"properties": {
"binding": {
"type": "object",
"required": [
"preview_hash",
"approved_action_key",
"approved_input_hash",
"approved_idempotency_key",
"resource_version_precondition"
],
"properties": {
"preview_hash": {
"type": "string",
"minLength": 1
},
"approved_action_key": {
"type": "string",
"minLength": 1
},
"approved_input_hash": {
"type": "string",
"minLength": 1
},
"approved_idempotency_key": {
"type": "string",
"minLength": 1
},
"resource_version_precondition": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
},
"offer_id": {
"type": "string"
},
"recipient": {
"type": "string",
"format": "email"
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"maxLength": 200,
"minLength": 1
},
"expected_draft_revision": {
"type": "integer",
"exclusiveMinimum": 0
},
"expected_snapshot_sha256": {
"type": "string",
"pattern": "^[a-f0-9]{64}$"
},
"recipient_override_reason": {
"type": "string",
"maxLength": 1000,
"minLength": 1
},
"expected_send_payload_digest": {
"type": "string",
"pattern": "^[a-f0-9]{64}$"
}
},
"additionalProperties": false
}{
"title": "Confirm offer send",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_offers_rescind_bind — Confirm offer rescind
Withdraw only the offer explicitly reviewed in preview.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"idempotency_key",
"offer_id",
"binding"
],
"properties": {
"binding": {
"type": "object",
"required": [
"preview_hash",
"approved_action_key",
"approved_input_hash",
"approved_idempotency_key",
"resource_version_precondition"
],
"properties": {
"preview_hash": {
"type": "string",
"minLength": 1
},
"approved_action_key": {
"type": "string",
"minLength": 1
},
"approved_input_hash": {
"type": "string",
"minLength": 1
},
"approved_idempotency_key": {
"type": "string",
"minLength": 1
},
"resource_version_precondition": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
},
"offer_id": {
"type": "string"
},
"request_id": {
"type": "string",
"minLength": 1
},
"email_candidate": {
"type": "boolean"
},
"idempotency_key": {
"type": "string",
"maxLength": 200,
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Confirm offer rescind",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_identity — Read the current API identity
Return the current Yardstick API principal context.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"request_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Read the current API identity",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_tasks_list — List tasks
List Yardstick tasks visible to the current principal.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"starting_after": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "List tasks",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_tasks_respond — Answer an assigned review task
Answer an assigned application or scorecard review. Recruiter questions require a note; send_to_recruiter shares a scorecard note with the recruiter.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"task_id",
"decision"
],
"properties": {
"note": {
"type": "string"
},
"task_id": {
"type": "string",
"minLength": 1
},
"decision": {
"enum": [
"approve",
"reject",
"hold",
"ask_recruiter",
"thumbs_up",
"thumbs_down"
],
"type": "string"
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
},
"send_to_recruiter": {
"type": "boolean"
}
},
"additionalProperties": false
}{
"title": "Answer an assigned review task",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": true
}yardstick_tasks_deep_link — Get a link that opens a task in Yardstick
Create a public task deep link for a caller-supplied task id.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"task_id"
],
"properties": {
"task_id": {
"type": "string",
"minLength": 1
},
"request_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Get a link that opens a task in Yardstick",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_people_list — List people
List people visible to the current principal. Pass email to find the exact person behind a candidate_email_conflict.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"email": {
"type": "string",
"format": "email",
"maxLength": 320
},
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"starting_after": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "List people",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_people_read — Read a person
Read one person by public id.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"person_id"
],
"properties": {
"person_id": {
"type": "string",
"minLength": 1
},
"request_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Read a person",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_people_documents_list — List documents for a person
List the documents attached to a person (resumes and other files). Archived documents are excluded unless include_archived is true. Takes a per_ display id and returns pdoc_ display ids.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"person_id"
],
"properties": {
"person_id": {
"type": "string"
},
"request_id": {
"type": "string",
"minLength": 1
},
"include_archived": {
"type": "boolean"
}
},
"additionalProperties": false
}{
"title": "List documents for a person",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_people_documents_download_url — Get a person document download link
Mint a signed download URL for one person document. Read-only. The URL expires in 5 minutes and is a bearer link: do not log or share it. Takes per_ and pdoc_ display ids.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"person_id",
"document_id"
],
"properties": {
"person_id": {
"type": "string"
},
"request_id": {
"type": "string",
"minLength": 1
},
"document_id": {
"type": "string"
}
},
"additionalProperties": false
}{
"title": "Get a person document download link",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_people_create — Add a person
Create a person through the public Yardstick API.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"name": {
"type": "string",
"maxLength": 500
},
"email": {
"type": "string",
"format": "email",
"maxLength": 320
},
"notes": {
"type": "string",
"maxLength": 10000
},
"phone": {
"type": "string",
"maxLength": 50
},
"request_id": {
"type": "string",
"minLength": 1
},
"resume_url": {
"type": "string",
"format": "uri",
"maxLength": 2048
},
"linkedin_url": {
"type": "string",
"format": "uri",
"maxLength": 2048
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Add a person",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": false
}yardstick_people_update — Update a person
Update one person with schema-bound public API fields.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"person_id"
],
"properties": {
"name": {
"type": "string",
"maxLength": 500
},
"email": {
"type": "string",
"format": "email",
"maxLength": 320
},
"notes": {
"anyOf": [
{
"type": "string",
"maxLength": 10000
},
{
"type": "null"
}
]
},
"phone": {
"anyOf": [
{
"type": "string",
"maxLength": 50
},
{
"type": "null"
}
]
},
"person_id": {
"type": "string",
"minLength": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"resume_url": {
"anyOf": [
{
"type": "string",
"format": "uri",
"maxLength": 2048
},
{
"type": "null"
}
]
},
"linkedin_url": {
"anyOf": [
{
"type": "string",
"format": "uri",
"maxLength": 2048
},
{
"type": "null"
}
]
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Update a person",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_talent_search — Search Talent
Search all authorized recruiting records by literal keywords across names, notes, activities and current parsed résumés. All words must match; PhD punctuation is normalized.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"surface",
"search"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1
},
"job_id": {
"type": "string",
"minLength": 1
},
"offset": {
"type": "integer",
"minimum": 0
},
"search": {
"type": "string",
"maxLength": 200
},
"surface": {
"enum": [
"candidates",
"prospects",
"review"
],
"type": "string"
}
},
"additionalProperties": false
}{
"title": "Search Talent",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_prospects_list — List prospects
List active Talent CRM prospects visible to the current principal.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"owner_user_id": {
"type": "string",
"minLength": 1
},
"starting_after": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "List prospects",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_prospects_read — Read a prospect
Read one Talent CRM prospect by public id.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"prospect_id"
],
"properties": {
"request_id": {
"type": "string",
"minLength": 1
},
"prospect_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Read a prospect",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_prospects_create — Add a prospect
Create Talent CRM prospect relationship state for an existing person.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"person_id"
],
"properties": {
"person_id": {
"type": "string",
"minLength": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"source_label": {
"anyOf": [
{
"type": "string",
"maxLength": 200
},
{
"type": "null"
}
]
},
"owner_user_id": {
"anyOf": [
{
"type": "string",
"format": "uuid"
},
{
"type": "null"
}
]
},
"idempotency_key": {
"type": "string",
"minLength": 1
},
"last_reviewed_at": {
"type": [
"string",
"null"
]
},
"last_contacted_at": {
"type": [
"string",
"null"
]
}
},
"additionalProperties": false
}{
"title": "Add a prospect",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": false
}yardstick_prospects_convert_preview — Preview converting a prospect into an application (nothing changed yet)
Preview conversion of one Prospect into one canonical Application; bind fields are rejected and no outreach/import/merge occurs.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"prospect_id",
"job_posting_id"
],
"properties": {
"note": {
"anyOf": [
{
"type": "string",
"maxLength": 2000
},
{
"type": "null"
}
]
},
"request_id": {
"type": "string",
"minLength": 1
},
"prospect_id": {
"type": "string",
"minLength": 1
},
"source_label": {
"anyOf": [
{
"type": "string",
"maxLength": 200
},
{
"type": "null"
}
]
},
"job_posting_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Preview converting a prospect into an application (nothing changed yet)",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_prospects_convert_bind — Confirm and convert a prospect into an application
Bind an approved prospect conversion preview with explicit approval metadata and matching idempotency key.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"prospect_id",
"job_posting_id",
"binding"
],
"properties": {
"note": {
"anyOf": [
{
"type": "string",
"maxLength": 2000
},
{
"type": "null"
}
]
},
"binding": {
"type": "object",
"required": [
"preview_hash",
"approved_action_key",
"approved_input_hash",
"approved_idempotency_key",
"resource_version_precondition"
],
"properties": {
"preview_hash": {
"type": "string",
"minLength": 1
},
"approved_action_key": {
"type": "string",
"minLength": 1
},
"approved_input_hash": {
"type": "string",
"minLength": 1
},
"approved_idempotency_key": {
"type": "string",
"minLength": 1
},
"resource_version_precondition": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
},
"request_id": {
"type": "string",
"minLength": 1
},
"prospect_id": {
"type": "string",
"minLength": 1
},
"source_label": {
"anyOf": [
{
"type": "string",
"maxLength": 200
},
{
"type": "null"
}
]
},
"job_posting_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Confirm and convert a prospect into an application",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_prospects_outreach_preview — Preview prospect outreach copy (nothing saved or sent)
Preview a one-off prospect outreach draft without creating a draft, sending email, enrolling a sequence, or creating an application.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"prospect_id"
],
"properties": {
"body": {
"anyOf": [
{
"type": "string",
"maxLength": 8000,
"minLength": 1
},
{
"type": "null"
}
]
},
"subject": {
"anyOf": [
{
"type": "string",
"maxLength": 240,
"minLength": 1
},
{
"type": "null"
}
]
},
"request_id": {
"type": "string",
"minLength": 1
},
"prospect_id": {
"type": "string",
"minLength": 1
},
"job_posting_id": {
"anyOf": [
{
"type": "string",
"minLength": 1
},
{
"type": "null"
}
]
},
"idempotency_key": {
"type": "string",
"minLength": 1
},
"outreach_intent_key": {
"anyOf": [
{
"type": "string",
"maxLength": 120,
"minLength": 1
},
{
"type": "null"
}
]
},
"personalization_instruction": {
"anyOf": [
{
"type": "string",
"maxLength": 2000
},
{
"type": "null"
}
]
}
},
"additionalProperties": false
}{
"title": "Preview prospect outreach copy (nothing saved or sent)",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_prospects_outreach_create_draft — Draft a prospect outreach email for review
Create a pending review prospect outreach email draft. Sending stays on email draft send and requires communications:send.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"prospect_id"
],
"properties": {
"body": {
"anyOf": [
{
"type": "string",
"maxLength": 8000,
"minLength": 1
},
{
"type": "null"
}
]
},
"subject": {
"anyOf": [
{
"type": "string",
"maxLength": 240,
"minLength": 1
},
{
"type": "null"
}
]
},
"request_id": {
"type": "string",
"minLength": 1
},
"prospect_id": {
"type": "string",
"minLength": 1
},
"job_posting_id": {
"anyOf": [
{
"type": "string",
"minLength": 1
},
{
"type": "null"
}
]
},
"idempotency_key": {
"type": "string",
"minLength": 1
},
"outreach_intent_key": {
"anyOf": [
{
"type": "string",
"maxLength": 120,
"minLength": 1
},
{
"type": "null"
}
]
},
"personalization_instruction": {
"anyOf": [
{
"type": "string",
"maxLength": 2000
},
{
"type": "null"
}
]
}
},
"additionalProperties": false
}{
"title": "Draft a prospect outreach email for review",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_prospect_imports_dry_run — Preview a prospect import (no records written)
Preview a structured-row Prospect CRM import. JSON rows only; no raw CSV/resume file reads, outreach, application conversion, source ranking, or silent person merge.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"rows"
],
"properties": {
"rows": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"anyOf": [
{
"type": "string",
"maxLength": 500
},
{
"type": "null"
}
]
},
"email": {
"anyOf": [
{
"type": "string",
"format": "email",
"maxLength": 320
},
{
"type": "null"
}
]
},
"notes": {
"anyOf": [
{
"type": "string",
"maxLength": 10000
},
{
"type": "null"
}
]
},
"phone": {
"anyOf": [
{
"type": "string",
"maxLength": 50
},
{
"type": "null"
}
]
},
"pool_ids": {
"type": "array",
"items": {
"type": "string",
"minLength": 1
},
"maxItems": 25
},
"pool_names": {
"type": "array",
"items": {
"type": "string",
"maxLength": 160,
"minLength": 1
},
"maxItems": 25
},
"resume_url": {
"anyOf": [
{
"type": "string",
"format": "uri",
"maxLength": 2048
},
{
"type": "null"
}
]
},
"external_id": {
"type": "string",
"maxLength": 200
},
"profile_url": {
"anyOf": [
{
"type": "string",
"format": "uri",
"maxLength": 2048
},
{
"type": "null"
}
]
},
"linkedin_url": {
"anyOf": [
{
"type": "string",
"format": "uri",
"maxLength": 2048
},
{
"type": "null"
}
]
},
"source_label": {
"anyOf": [
{
"type": "string",
"maxLength": 200
},
{
"type": "null"
}
]
},
"current_title": {
"anyOf": [
{
"type": "string",
"maxLength": 300
},
{
"type": "null"
}
]
},
"owner_user_id": {
"anyOf": [
{
"type": "string",
"format": "uuid"
},
{
"type": "null"
}
]
},
"current_company": {
"anyOf": [
{
"type": "string",
"maxLength": 300
},
{
"type": "null"
}
]
},
"last_contacted_at": {
"type": [
"string",
"null"
]
}
},
"additionalProperties": false
},
"maxItems": 500,
"minItems": 1
},
"metadata": {
"type": "object",
"additionalProperties": {}
},
"request_id": {
"type": "string",
"minLength": 1
},
"source_label": {
"anyOf": [
{
"type": "string",
"maxLength": 200
},
{
"type": "null"
}
]
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Preview a prospect import (no records written)",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_prospect_imports_read — Read a prospect import batch
Read one Prospect CRM import dry-run/apply batch by public id.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"import_id"
],
"properties": {
"import_id": {
"type": "string",
"minLength": 1
},
"request_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Read a prospect import batch",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_prospect_imports_apply — Confirm and apply a prospect import
Apply an approved Prospect CRM import preview with preview_hash and explicit row decisions for advisory matches.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"import_id",
"preview_hash"
],
"properties": {
"decisions": {
"type": "array",
"items": {
"type": "object",
"required": [
"row_index",
"input_hash",
"decision"
],
"properties": {
"decision": {
"enum": [
"create_new",
"link_existing",
"skip"
],
"type": "string"
},
"person_id": {
"type": "string",
"minLength": 1
},
"row_index": {
"type": "integer",
"maximum": 499,
"minimum": 0
},
"input_hash": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
},
"maxItems": 500
},
"import_id": {
"type": "string",
"minLength": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"preview_hash": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Confirm and apply a prospect import",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_ats_imports_dry_run — Preview an ATS import (no records written)
Preview a structured-row ATS import of candidates, jobs, and applications (source_kind: csv). JSON rows only; no raw CSV/archive file reads, no application conversion side effects, and low-confidence stage/fuzzy matches require explicit apply decisions.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"jobs": {
"type": "array",
"items": {
"type": "object",
"properties": {
"title": {
"anyOf": [
{
"type": "string",
"maxLength": 500
},
{
"type": "null"
}
]
},
"status": {
"anyOf": [
{
"type": "string",
"maxLength": 50
},
{
"type": "null"
}
]
},
"location": {
"anyOf": [
{
"type": "string",
"maxLength": 300
},
{
"type": "null"
}
]
},
"department": {
"anyOf": [
{
"type": "string",
"maxLength": 300
},
{
"type": "null"
}
]
},
"location_type": {
"anyOf": [
{
"type": "string",
"maxLength": 100
},
{
"type": "null"
}
]
}
},
"additionalProperties": false
},
"maxItems": 1000
},
"metadata": {
"type": "object",
"additionalProperties": {}
},
"candidates": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"anyOf": [
{
"type": "string",
"maxLength": 500
},
{
"type": "null"
}
]
},
"email": {
"anyOf": [
{
"type": "string",
"format": "email",
"maxLength": 320
},
{
"type": "null"
}
]
},
"notes": {
"anyOf": [
{
"type": "string",
"maxLength": 10000
},
{
"type": "null"
}
]
},
"phone": {
"anyOf": [
{
"type": "string",
"maxLength": 50
},
{
"type": "null"
}
]
},
"linkedin_url": {
"anyOf": [
{
"type": "string",
"format": "uri",
"maxLength": 2048
},
{
"type": "null"
}
]
},
"current_title": {
"anyOf": [
{
"type": "string",
"maxLength": 300
},
{
"type": "null"
}
]
},
"current_company": {
"anyOf": [
{
"type": "string",
"maxLength": 300
},
{
"type": "null"
}
]
}
},
"additionalProperties": false
},
"maxItems": 1000
},
"request_id": {
"type": "string",
"minLength": 1
},
"session_id": {
"type": "string",
"minLength": 1
},
"source_kind": {
"enum": [
"csv",
"greenhouse"
],
"type": "string"
},
"applications": {
"type": "array",
"items": {
"type": "object",
"properties": {
"stage": {
"anyOf": [
{
"type": "string",
"maxLength": 300
},
{
"type": "null"
}
]
},
"job_title": {
"anyOf": [
{
"type": "string",
"maxLength": 500
},
{
"type": "null"
}
]
},
"candidate_name": {
"anyOf": [
{
"type": "string",
"maxLength": 500
},
{
"type": "null"
}
]
},
"candidate_email": {
"anyOf": [
{
"type": "string",
"format": "email",
"maxLength": 320
},
{
"type": "null"
}
]
},
"employment_start_date": {
"anyOf": [
{
"type": "string",
"maxLength": 50
},
{
"type": "null"
}
]
}
},
"additionalProperties": false
},
"maxItems": 1000
},
"source_label": {
"anyOf": [
{
"type": "string",
"maxLength": 200
},
{
"type": "null"
}
]
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Preview an ATS import (no records written)",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_ats_imports_read — Read an ATS import batch
Read one ATS import dry-run/apply batch and its rows by public id.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"import_id"
],
"properties": {
"import_id": {
"type": "string",
"minLength": 1
},
"request_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Read an ATS import batch",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_ats_imports_apply — Confirm and apply an ATS import
Apply an approved ATS import preview with a preview_hash matching the stored dry-run. Creates people/jobs/interview_plans(stub)/job_postings/applications with idempotent replay; never sends outreach, merges people, or deletes records.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"import_id",
"preview_hash"
],
"properties": {
"import_id": {
"type": "string",
"minLength": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"preview_hash": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Confirm and apply an ATS import",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_source_links_list — List source and referral links
List source/referral attribution links without raw token material or source quality ranking.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"job_posting_id": {
"type": "string",
"minLength": 1
},
"starting_after": {
"type": "string",
"minLength": 1
},
"include_disabled": {
"type": "boolean"
}
},
"additionalProperties": false
}{
"title": "List source and referral links",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_source_links_read — Read a source or referral link
Read one source/referral attribution link by public id without raw token material.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"source_link_id"
],
"properties": {
"request_id": {
"type": "string",
"minLength": 1
},
"source_link_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Read a source or referral link",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_source_links_create — Create a source or referral link
Create an opaque source/referral link for a published job posting. Raw source_token is returned only in the create response; reads return token_hint, and active token-bearing links also return public_url.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"job_posting_id",
"source_label"
],
"properties": {
"expires_at": {
"anyOf": [
{
"type": "string",
"maxLength": 64
},
{
"type": "null"
}
]
},
"request_id": {
"type": "string",
"minLength": 1
},
"description": {
"anyOf": [
{
"type": "string",
"maxLength": 2000
},
{
"type": "null"
}
]
},
"source_label": {
"type": "string",
"maxLength": 200
},
"referrer_name": {
"anyOf": [
{
"type": "string",
"maxLength": 500
},
{
"type": "null"
}
]
},
"job_posting_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Create a source or referral link",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": false
}yardstick_source_links_disable — Disable a source or referral link
Disable a source/referral link so its public URL no longer stamps attribution.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"source_link_id"
],
"properties": {
"reason": {
"anyOf": [
{
"type": "string",
"maxLength": 500
},
{
"type": "null"
}
]
},
"request_id": {
"type": "string",
"minLength": 1
},
"source_link_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Disable a source or referral link",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": true
}yardstick_prospects_update — Update a prospect
Update bounded Talent CRM prospect relationship fields.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"prospect_id"
],
"properties": {
"request_id": {
"type": "string",
"minLength": 1
},
"prospect_id": {
"type": "string",
"minLength": 1
},
"source_label": {
"anyOf": [
{
"type": "string",
"maxLength": 200
},
{
"type": "null"
}
]
},
"owner_user_id": {
"anyOf": [
{
"type": "string",
"format": "uuid"
},
{
"type": "null"
}
]
},
"archived_reason": {
"anyOf": [
{
"type": "string",
"maxLength": 500
},
{
"type": "null"
}
]
},
"idempotency_key": {
"type": "string",
"minLength": 1
},
"last_reviewed_at": {
"type": [
"string",
"null"
]
},
"last_contacted_at": {
"type": [
"string",
"null"
]
},
"next_follow_up_at": {
"type": [
"string",
"null"
]
},
"next_follow_up_note": {
"anyOf": [
{
"type": "string",
"maxLength": 500
},
{
"type": "null"
}
]
},
"relationship_status": {
"enum": [
"active",
"archived"
],
"type": "string"
}
},
"additionalProperties": false
}{
"title": "Update a prospect",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_prospect_activities_list — List prospect activity
List bounded activity records for one Talent CRM prospect.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"prospect_id"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"prospect_id": {
"type": "string",
"minLength": 1
},
"starting_after": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "List prospect activity",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_prospect_activities_create — Log prospect activity
Create a bounded internal prospect activity note or touchpoint.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"prospect_id"
],
"properties": {
"body": {
"anyOf": [
{
"type": "string",
"maxLength": 4000
},
{
"type": "null"
}
]
},
"metadata": {
"type": "object",
"additionalProperties": {}
},
"request_id": {
"type": "string",
"minLength": 1
},
"occurred_at": {
"type": "string"
},
"prospect_id": {
"type": "string",
"minLength": 1
},
"source_label": {
"anyOf": [
{
"type": "string",
"maxLength": 200
},
{
"type": "null"
}
]
},
"activity_type": {
"enum": [
"note",
"call",
"meeting",
"source",
"status_change"
],
"type": "string"
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Log prospect activity",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": false
}yardstick_talent_pools_list — List talent pools
List Talent CRM pools visible to the current principal. Archived pools are excluded unless include_archived is true.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"starting_after": {
"type": "string",
"minLength": 1
},
"include_archived": {
"type": "boolean"
}
},
"additionalProperties": false
}{
"title": "List talent pools",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_talent_pools_read — Read a talent pool
Read one Talent CRM pool by public id.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"pool_id"
],
"properties": {
"pool_id": {
"type": "string",
"minLength": 1
},
"request_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Read a talent pool",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_talent_pools_create — Create a talent pool
Create a Talent CRM pool.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"maxLength": 160,
"minLength": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"description": {
"anyOf": [
{
"type": "string",
"maxLength": 1000
},
{
"type": "null"
}
]
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Create a talent pool",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": false
}yardstick_talent_pools_update — Update a talent pool
Update bounded Talent CRM pool fields.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"pool_id"
],
"properties": {
"name": {
"type": "string",
"maxLength": 160,
"minLength": 1
},
"pool_id": {
"type": "string",
"minLength": 1
},
"archived": {
"type": "boolean"
},
"request_id": {
"type": "string",
"minLength": 1
},
"description": {
"anyOf": [
{
"type": "string",
"maxLength": 1000
},
{
"type": "null"
}
]
},
"archived_reason": {
"anyOf": [
{
"type": "string",
"maxLength": 500
},
{
"type": "null"
}
]
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Update a talent pool",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_talent_pool_members_list — List talent pool members
List active prospect memberships for one Talent CRM pool.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"pool_id"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1
},
"pool_id": {
"type": "string",
"minLength": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"starting_after": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "List talent pool members",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_talent_pool_members_add — Add a prospect to a talent pool
Add an existing prospect to a Talent CRM pool.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"pool_id",
"prospect_id"
],
"properties": {
"pool_id": {
"type": "string",
"minLength": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"prospect_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Add a prospect to a talent pool",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_talent_pool_members_remove — Remove a prospect from a talent pool
Remove an active prospect membership from a Talent CRM pool.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"pool_id",
"prospect_id"
],
"properties": {
"pool_id": {
"type": "string",
"minLength": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"prospect_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Remove a prospect from a talent pool",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_applications_list — List applications
List application person + Job attachments visible to the current principal. Filter by --job-id to find candidates for a role, and by --hiring-manager-decision (advanced, held or waiting) for where the hiring manager's decision stands.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1
},
"job_id": {
"type": "string",
"minLength": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"starting_after": {
"type": "string",
"minLength": 1
},
"hiring_manager_decision": {
"enum": [
"advanced",
"held",
"waiting"
],
"type": "string"
}
},
"additionalProperties": false
}{
"title": "List applications",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_applications_read — Read an application
Read one application person + Job attachment by public id.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"application_id"
],
"properties": {
"request_id": {
"type": "string",
"minLength": 1
},
"application_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Read an application",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_applications_create — Add an application
Create a recruiter or agent-sourced application for an existing person and job posting.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"person_id",
"job_posting_id"
],
"properties": {
"person_id": {
"type": "string",
"minLength": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"job_posting_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Add an application",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": false
}yardstick_applications_update — Update an application
Update one application with schema-bound public API fields.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"application_id"
],
"properties": {
"stage": {
"type": "string",
"maxLength": 200
},
"request_id": {
"type": "string",
"minLength": 1
},
"application_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Update an application",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_applications_decide — Decide on an application
Decide on an application without a review task. Only the job's hiring manager may decide; anyone else gets application not found. Reason codes must be system codes or your organization's. Reject disqualifies the candidate.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"application_id",
"decision"
],
"properties": {
"note": {
"type": "string",
"maxLength": 10000
},
"decision": {
"enum": [
"approve",
"approve_and_schedule",
"reject",
"hold",
"ask_recruiter"
],
"type": "string"
},
"request_id": {
"type": "string",
"minLength": 1
},
"application_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
},
"reason_code_ids": {
"type": "array",
"items": {
"type": "string",
"format": "uuid"
}
}
},
"additionalProperties": false
}{
"title": "Decide on an application",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_applications_hiring_step_decision — Read the hiring manager decision
Read where the hiring manager's decision stands on the candidate's latest step that waits on one: advanced, held, waiting, or none.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"application_id"
],
"properties": {
"request_id": {
"type": "string",
"minLength": 1
},
"application_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Read the hiring manager decision",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_applications_decide_hiring_step — Decide a hiring manager step
Advance or hold a candidate on a step that waits on the hiring manager, or change that decision. The hiring manager or a recruiter on the job may decide. Leave out interview_id to decide the latest such step. A note can go to the recruiter with send_to_recruiter.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"application_id",
"decision"
],
"properties": {
"note": {
"type": "string",
"maxLength": 5000
},
"decision": {
"enum": [
"advance",
"hold"
],
"type": "string"
},
"request_id": {
"type": "string",
"minLength": 1
},
"interview_id": {
"type": "string",
"maxLength": 200,
"minLength": 1
},
"application_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
},
"send_to_recruiter": {
"type": "boolean"
}
},
"additionalProperties": false
}{
"title": "Decide a hiring manager step",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_applications_admit_candidate — Move an application to Candidates
Move one reviewed application to Candidates. Does not schedule interviews or send email.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"application_id"
],
"properties": {
"request_id": {
"type": "string",
"minLength": 1
},
"application_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Move an application to Candidates",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_applications_undo_candidate_admission — Undo an accidental move to Candidates
Correct one accidental candidate admission using its current admission ID. No time limit; refused once candidate activity starts. Preserves history and excludes the corrected episode from admission reporting.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"application_id",
"expected_admission_id"
],
"properties": {
"request_id": {
"type": "string",
"minLength": 1
},
"application_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
},
"expected_admission_id": {
"type": "string",
"format": "uuid"
}
},
"additionalProperties": false
}{
"title": "Undo an accidental move to Candidates",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_applications_transition_direct — Move an application to another status
Directly write a non-terminal application transition; approval-only statuses are rejected. Optionally target a configured stage by id with pipeline_stage_id (the resolved stage is reported back).
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"application_id",
"status"
],
"properties": {
"reason": {
"type": "string",
"maxLength": 2000
},
"status": {
"enum": [
"Screening",
"Interviewing",
"On Hold"
],
"type": "string"
},
"request_id": {
"type": "string",
"minLength": 1
},
"application_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
},
"pipeline_stage_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Move an application to another status",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_applications_transition_preview — Preview an application status change (nothing changed yet)
Preview approval-required application transitions only; bind fields and direct-write targets are rejected. Optionally target a configured stage by id with pipeline_stage_id (status must match the stage's mapped status).
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"application_id",
"status"
],
"properties": {
"reason": {
"type": "string",
"maxLength": 2000
},
"status": {
"enum": [
"Offer",
"Hired",
"Offer Rejected",
"Disqualified",
"Withdrawn"
],
"type": "string"
},
"request_id": {
"type": "string",
"minLength": 1
},
"application_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
},
"pipeline_stage_id": {
"type": "string",
"minLength": 1
},
"employment_start_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
}
},
"additionalProperties": false
}{
"title": "Preview an application status change (nothing changed yet)",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_applications_transition_bind — Confirm and apply an application status change
Bind an already-previewed application transition with explicit approval metadata and matching idempotency key.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"application_id",
"status",
"binding"
],
"properties": {
"reason": {
"type": "string",
"maxLength": 2000
},
"status": {
"enum": [
"Offer",
"Hired",
"Offer Rejected",
"Disqualified",
"Withdrawn"
],
"type": "string"
},
"binding": {
"type": "object",
"required": [
"preview_hash",
"approved_action_key",
"approved_input_hash",
"approved_idempotency_key",
"resource_version_precondition"
],
"properties": {
"preview_hash": {
"type": "string",
"minLength": 1
},
"approved_action_key": {
"type": "string",
"minLength": 1
},
"approved_input_hash": {
"type": "string",
"minLength": 1
},
"approved_idempotency_key": {
"type": "string",
"minLength": 1
},
"resource_version_precondition": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
},
"request_id": {
"type": "string",
"minLength": 1
},
"application_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
},
"employment_start_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
}
},
"additionalProperties": false
}{
"title": "Confirm and apply an application status change",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_applications_archive_preview — Preview archiving an application (nothing changed yet)
Preview application archive approval requirements only; bind fields are rejected.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"application_id"
],
"properties": {
"reason": {
"type": "string",
"maxLength": 2000
},
"request_id": {
"type": "string",
"minLength": 1
},
"application_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Preview archiving an application (nothing changed yet)",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_applications_archive_bind — Confirm and archive an application
Bind an already-previewed application archive with explicit approval metadata and matching idempotency key.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"application_id",
"binding"
],
"properties": {
"reason": {
"type": "string",
"maxLength": 2000
},
"binding": {
"type": "object",
"required": [
"preview_hash",
"approved_action_key",
"approved_input_hash",
"approved_idempotency_key",
"resource_version_precondition"
],
"properties": {
"preview_hash": {
"type": "string",
"minLength": 1
},
"approved_action_key": {
"type": "string",
"minLength": 1
},
"approved_input_hash": {
"type": "string",
"minLength": 1
},
"approved_idempotency_key": {
"type": "string",
"minLength": 1
},
"resource_version_precondition": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
},
"request_id": {
"type": "string",
"minLength": 1
},
"application_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Confirm and archive an application",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_applications_status_email_poc_preview — Preview the Offer status change and its candidate email (nothing changed yet)
Preview the fixed applications-owned Interviewing to Offer status/email approval POC without mutating status or email state.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"application_id",
"current_status",
"target_status",
"email_type",
"decision"
],
"properties": {
"mode": {
"enum": [
"test",
"live"
],
"type": "string"
},
"decision": {
"type": "string",
"const": "review_edit"
},
"email_type": {
"type": "string",
"const": "offer"
},
"request_id": {
"type": "string",
"minLength": 1
},
"target_status": {
"type": "string",
"const": "Offer"
},
"application_id": {
"type": "string",
"minLength": 1
},
"current_status": {
"type": "string",
"const": "Interviewing"
},
"idempotency_key": {
"type": "string",
"minLength": 1
},
"personalization_instruction": {
"anyOf": [
{
"type": "string",
"maxLength": 2000
},
{
"type": "null"
}
]
},
"requested_sender_identity_id": {
"anyOf": [
{
"type": "string",
"format": "uuid"
},
{
"type": "null"
}
]
}
},
"additionalProperties": false
}{
"title": "Preview the Offer status change and its candidate email (nothing changed yet)",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_applications_status_email_poc_bind — Confirm the Offer status change and send its candidate email
Bind the fixed applications-owned status/email approval POC with explicit approval metadata and a matching idempotency key.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"application_id",
"current_status",
"target_status",
"email_type",
"decision",
"binding"
],
"properties": {
"mode": {
"enum": [
"test",
"live"
],
"type": "string"
},
"binding": {
"type": "object",
"required": [
"preview_hash",
"approved_action_key",
"approved_input_hash",
"approved_idempotency_key",
"resource_version_precondition"
],
"properties": {
"preview_hash": {
"type": "string",
"minLength": 1
},
"approved_action_key": {
"type": "string",
"minLength": 1
},
"approved_input_hash": {
"type": "string",
"minLength": 1
},
"approved_idempotency_key": {
"type": "string",
"minLength": 1
},
"resource_version_precondition": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
},
"decision": {
"type": "string",
"const": "review_edit"
},
"email_type": {
"type": "string",
"const": "offer"
},
"request_id": {
"type": "string",
"minLength": 1
},
"target_status": {
"type": "string",
"const": "Offer"
},
"application_id": {
"type": "string",
"minLength": 1
},
"current_status": {
"type": "string",
"const": "Interviewing"
},
"idempotency_key": {
"type": "string",
"minLength": 1
},
"personalization_instruction": {
"anyOf": [
{
"type": "string",
"maxLength": 2000
},
{
"type": "null"
}
]
},
"requested_sender_identity_id": {
"anyOf": [
{
"type": "string",
"format": "uuid"
},
{
"type": "null"
}
]
}
},
"additionalProperties": false
}{
"title": "Confirm the Offer status change and send its candidate email",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_decision_brief_read — Read a hiring decision brief
Read the decision brief for an application.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"application_id"
],
"properties": {
"request_id": {
"type": "string",
"minLength": 1
},
"application_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Read a hiring decision brief",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_decision_brief_regenerate — Regenerate a hiring decision brief
Regenerate a decision brief for an application with idempotency metadata.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"application_id"
],
"properties": {
"request_id": {
"type": "string",
"minLength": 1
},
"application_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Regenerate a hiring decision brief",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": true
}yardstick_applications_email_decision_preview — Preview the candidate email for a status change (nothing sent)
Preview the candidate email decision for an application status change without mutating the application or drafts.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"application_id"
],
"properties": {
"request_id": {
"type": "string",
"minLength": 1
},
"application_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": {}
}{
"title": "Preview the candidate email for a status change (nothing sent)",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_applications_email_decision_apply — Apply a status change and its candidate email
Apply an application status-change email decision with idempotency metadata.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"application_id"
],
"properties": {
"request_id": {
"type": "string",
"minLength": 1
},
"application_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": {}
}{
"title": "Apply a status change and its candidate email",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_email_drafts_list — List candidate email drafts
List candidate email drafts with optional status and email-type filters.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1
},
"status": {
"type": "string",
"maxLength": 200,
"minLength": 1
},
"email_type": {
"enum": [
"acknowledgment",
"advancement",
"interview_confirmation",
"rejection",
"offer_declined",
"offer",
"hired",
"withdrawn",
"on_hold",
"scorecard_nudge",
"scorecard_escalation",
"decision_brief",
"prospect_outreach",
"candidate_follow_up"
],
"type": "string"
},
"request_id": {
"type": "string",
"minLength": 1
},
"starting_after": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "List candidate email drafts",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_email_drafts_read — Read a candidate email draft
Read a redacted candidate email draft.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"minLength": 1
},
"request_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Read a candidate email draft",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_email_drafts_preview — Preview a candidate email draft
Read rendered preview content for a candidate email draft.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"minLength": 1
},
"request_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Preview a candidate email draft",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_email_drafts_history — Read candidate email draft history
Read candidate email draft history and provenance.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"minLength": 1
},
"request_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Read candidate email draft history",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_email_drafts_update — Edit a candidate email draft
Save mutable candidate email draft fields or set/clear a validated sender override.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"minLength": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": {}
}{
"title": "Edit a candidate email draft",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_email_drafts_send — Send a candidate email
Send a pending candidate email draft with replay protection, or reclaim a never-delivered draft and send it.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"minLength": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
},
"reclaim_not_delivered": {
"type": "boolean"
}
},
"additionalProperties": false
}{
"title": "Send a candidate email",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_email_drafts_discard — Discard a candidate email draft
Discard a pending candidate email draft without provider mutation.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"minLength": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Discard a candidate email draft",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_email_automation_settings_read — Read email automation settings
Read candidate email automation settings.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"request_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Read email automation settings",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_email_automation_settings_update — Update email automation settings
Update candidate email automation settings.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": {}
}{
"title": "Update email automation settings",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_email_sender_settings_read — Read email sender settings
Read redacted email sender settings with sanitized queue diagnostics.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"request_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Read email sender settings",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_email_sender_connections_list — List email sender connections
List redacted sender provider connection state.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"request_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "List email sender connections",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_email_sender_defaults_list — List default email senders
List candidate email sender defaults.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"request_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "List default email senders",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_integrations_workspace_health_read — Check workspace integration health
Read sanitized Workspace integration health diagnostics.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"request_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Check workspace integration health",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_email_sender_defaults_set — Set the default sender for an email type
Set the default sender policy for a candidate email type.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"email_type",
"default_sender_type"
],
"properties": {
"email_type": {
"enum": [
"acknowledgment",
"advancement",
"interview_confirmation",
"rejection",
"offer_declined",
"offer",
"hired",
"withdrawn",
"on_hold",
"scorecard_nudge",
"scorecard_escalation",
"decision_brief",
"prospect_outreach",
"candidate_follow_up"
],
"type": "string"
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
},
"default_sender_type": {
"enum": [
"org_shared",
"owner",
"job_hiring_manager"
],
"type": "string"
},
"org_shared_sender_identity_id": {
"anyOf": [
{
"type": "string",
"format": "uuid"
},
{
"type": "null"
}
]
}
},
"additionalProperties": false
}{
"title": "Set the default sender for an email type",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_email_templates_list — List candidate and internal emails
List Candidate and Internal emails with automation usage counts.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"request_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "List candidate and internal emails",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_email_templates_read — Read an email
Read an email by built-in type or custom template key.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"email_type"
],
"properties": {
"email_type": {
"type": "string",
"pattern": "^[a-z][a-z0-9_]{0,99}$"
},
"request_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Read an email",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_email_templates_preview — Preview an email with sample data
Preview an email for sample variables.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"email_type"
],
"properties": {
"email_type": {
"type": "string",
"pattern": "^[a-z][a-z0-9_]{0,99}$"
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": {}
}{
"title": "Preview an email with sample data",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_email_templates_validate — Check an email for problems
Validate email subject, HTML, and text bodies.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"email_type"
],
"properties": {
"email_type": {
"type": "string",
"pattern": "^[a-z][a-z0-9_]{0,99}$"
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": {}
}{
"title": "Check an email for problems",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_email_templates_publish — Publish an email version
Update, create, duplicate, reset or delete an email. Set operation; custom emails use email_type as their template key.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"email_type"
],
"properties": {
"email_type": {
"type": "string",
"pattern": "^[a-z][a-z0-9_]{0,99}$"
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": {}
}{
"title": "Publish an email version",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": true
}yardstick_email_templates_create — Create a custom email
create an email. Use email_type for a built-in type or custom template key.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"email_type"
],
"properties": {
"email_type": {
"type": "string",
"pattern": "^[a-z][a-z0-9_]{0,99}$"
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": {}
}{
"title": "Create a custom email",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": false
}yardstick_email_templates_duplicate — Duplicate an email
duplicate an email. Use email_type for a built-in type or custom template key.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"email_type"
],
"properties": {
"email_type": {
"type": "string",
"pattern": "^[a-z][a-z0-9_]{0,99}$"
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": {}
}{
"title": "Duplicate an email",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": false
}yardstick_email_templates_reset — Reset an email to its Yardstick default
reset an email. Use email_type for a built-in type or custom template key.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"email_type"
],
"properties": {
"email_type": {
"type": "string",
"pattern": "^[a-z][a-z0-9_]{0,99}$"
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": {}
}{
"title": "Reset an email to its Yardstick default",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": true
}yardstick_email_templates_delete — Delete a custom email
delete an email. Use email_type for a built-in type or custom template key.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"email_type"
],
"properties": {
"email_type": {
"type": "string",
"pattern": "^[a-z][a-z0-9_]{0,99}$"
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": {}
}{
"title": "Delete a custom email",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": true
}yardstick_email_template_versions_list — List email template versions
List immutable email versions.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"email_type"
],
"properties": {
"email_type": {
"type": "string",
"pattern": "^[a-z][a-z0-9_]{0,99}$"
},
"request_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "List email template versions",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_email_templates_rollback — Restore an earlier email version
Restore an email to an immutable version.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"email_type",
"version_id"
],
"properties": {
"email_type": {
"type": "string",
"pattern": "^[a-z][a-z0-9_]{0,99}$"
},
"request_id": {
"type": "string",
"minLength": 1
},
"version_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Restore an earlier email version",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_email_templates_preview_customization — Preview AI customization for an email template (nothing published)
Preview AI sample customization for an email without publishing.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"email_type"
],
"properties": {
"email_type": {
"type": "string",
"pattern": "^[a-z][a-z0-9_]{0,99}$"
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": {}
}{
"title": "Preview AI customization for an email template (nothing published)",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_final_recommendation_record — Record a final hiring recommendation
Record direct final-recommendation evidence; this does not mutate application status.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"application_id",
"interviewer_user_id",
"rating"
],
"properties": {
"notes": {
"type": "string",
"maxLength": 8000
},
"rating": {
"type": "integer",
"maximum": 4,
"minimum": 0
},
"request_id": {
"type": "string",
"minLength": 1
},
"session_id": {
"type": "string",
"minLength": 1
},
"application_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
},
"interviewer_user_id": {
"type": "string"
}
},
"additionalProperties": false
}{
"title": "Record a final hiring recommendation",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_application_interview_sessions_list — List interviews for an application
List interview sessions for an application.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"application_id"
],
"properties": {
"request_id": {
"type": "string",
"minLength": 1
},
"application_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "List interviews for an application",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_application_interview_sessions_ensure — Make sure an interview exists for a round
Ensure an application interview session for an explicit round id.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"application_id",
"round_id"
],
"properties": {
"round_id": {
"type": "string",
"minLength": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"round_title": {
"type": "string",
"minLength": 1
},
"application_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
},
"interview_plan_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Make sure an interview exists for a round",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_opportunities_list — List opportunities
List read-only opportunity workflow views visible to the current principal.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"starting_after": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "List opportunities",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_opportunities_read — Read an opportunity
Read one read-only opportunity workflow view by public id.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"opportunity_id"
],
"properties": {
"request_id": {
"type": "string",
"minLength": 1
},
"opportunity_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Read an opportunity",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_opportunities_next_action — Check the next action on an opportunity
Read the next action state for an opportunity without mutating it.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"opportunity_id"
],
"properties": {
"request_id": {
"type": "string",
"minLength": 1
},
"opportunity_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Check the next action on an opportunity",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_opportunities_deep_link — Get a link that opens an opportunity in Yardstick
Create a public deep link for an opportunity workflow view.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"opportunity_id"
],
"properties": {
"request_id": {
"type": "string",
"minLength": 1
},
"opportunity_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Get a link that opens an opportunity in Yardstick",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_reporting_search — Search recruiting reports
Search redacted recruiting reporting summaries through the public reporting API.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query_family",
"window_start",
"window_end"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1
},
"job_id": {
"type": "string",
"maxLength": 128,
"minLength": 1
},
"stages": {
"type": "string",
"maxLength": 1000,
"minLength": 1
},
"statuses": {
"type": "string",
"maxLength": 1000,
"minLength": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"role_label": {
"type": "string",
"maxLength": 500,
"minLength": 1
},
"score_band": {
"type": "string",
"maxLength": 100,
"minLength": 1
},
"stale_days": {
"type": "integer",
"minimum": 0
},
"window_end": {
"type": "string",
"maxLength": 128,
"minLength": 1
},
"query_family": {
"enum": [
"role_health_attention",
"funnel_snapshot_by_role",
"stale_opportunity_queue",
"missing_feedback_queue",
"candidate_pool_strength",
"source_signals",
"prospect_ops_summary",
"offer_performance"
],
"type": "string"
},
"source_label": {
"type": "string",
"maxLength": 500,
"minLength": 1
},
"window_start": {
"type": "string",
"maxLength": 128,
"minLength": 1
},
"job_posting_id": {
"type": "string",
"maxLength": 128,
"minLength": 1
},
"starting_after": {
"type": "string",
"minLength": 1
},
"minimum_sample_size": {
"type": "integer",
"minimum": 0
}
},
"additionalProperties": false
}{
"title": "Search recruiting reports",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_departments_list — List departments
List Departments visible to the current principal.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"starting_after": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "List departments",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_departments_read — Read a department
Read one Department by public id.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"department_id"
],
"properties": {
"request_id": {
"type": "string",
"minLength": 1
},
"department_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Read a department",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_departments_create — Create a department (confirm in Yardstick)
Create a Department through the public Yardstick API.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"maxLength": 200,
"minLength": 1
},
"slug": {
"type": "string",
"maxLength": 200,
"minLength": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"description": {
"anyOf": [
{
"type": "string",
"maxLength": 2000
},
{
"type": "null"
}
]
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Create a department (confirm in Yardstick)",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": false
}yardstick_departments_update — Update a department (confirm in Yardstick)
Update one Department with schema-bound public API fields.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"department_id"
],
"properties": {
"name": {
"type": "string",
"maxLength": 200,
"minLength": 1
},
"slug": {
"type": "string",
"maxLength": 200,
"minLength": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"description": {
"anyOf": [
{
"type": "string",
"maxLength": 2000
},
{
"type": "null"
}
]
},
"department_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Update a department (confirm in Yardstick)",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_departments_members_list — List department members
List Department members for an authorized Department.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"department_id"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"department_id": {
"type": "string",
"minLength": 1
},
"starting_after": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "List department members",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_departments_members_add — Add a department member (confirm in Yardstick)
Add an existing person to a Department.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"department_id",
"person_id"
],
"properties": {
"person_id": {
"type": "string",
"minLength": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"department_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Add a department member (confirm in Yardstick)",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_departments_members_set_lead — Set the department lead (confirm in Yardstick)
Set one Department member as lead.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"department_id",
"person_id"
],
"properties": {
"role": {
"type": "string",
"const": "lead",
"default": "lead"
},
"person_id": {
"type": "string",
"minLength": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"department_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Set the department lead (confirm in Yardstick)",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_departments_members_remove — Remove a department member (confirm in Yardstick)
Remove a Department member, optionally with a replacement lead.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"department_id",
"person_id"
],
"properties": {
"person_id": {
"type": "string",
"minLength": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"department_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
},
"replacement_lead_person_id": {
"anyOf": [
{
"type": "string",
"minLength": 1
},
{
"type": "null"
}
]
}
},
"additionalProperties": false
}{
"title": "Remove a department member (confirm in Yardstick)",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_departments_invitations_list — List department invitations
List redacted Department invitation views.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"department_id"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"department_id": {
"type": "string",
"minLength": 1
},
"starting_after": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "List department invitations",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_departments_invitations_create — Invite someone to a department (confirm in Yardstick)
Create a Department-scoped invitation without returning token material.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"department_id",
"email",
"role"
],
"properties": {
"name": {
"type": "string",
"maxLength": 200
},
"role": {
"enum": [
"department_lead",
"recruiter"
],
"type": "string"
},
"email": {
"type": "string",
"format": "email",
"maxLength": 320
},
"full_name": {
"type": "string",
"maxLength": 200
},
"request_id": {
"type": "string",
"minLength": 1
},
"department_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
},
"expires_in_hours": {
"type": "integer",
"maximum": 720,
"minimum": 1
}
},
"additionalProperties": false
}{
"title": "Invite someone to a department (confirm in Yardstick)",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": false
}yardstick_access_grants_list — List access grants
List explicit access grants visible to the current principal.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"starting_after": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "List access grants",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_access_grants_read — Read an access grant
Read one explicit access grant by public id.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"access_grant_id"
],
"properties": {
"request_id": {
"type": "string",
"minLength": 1
},
"access_grant_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Read an access grant",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_access_grants_create — Grant someone access to a record (confirm in Yardstick)
Create a reasoned, revocable, audited access grant.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"subject_person_id",
"scope",
"target_id",
"artifact_classes",
"reason"
],
"properties": {
"scope": {
"enum": [
"job",
"department",
"application",
"report"
],
"type": "string"
},
"reason": {
"type": "string",
"maxLength": 2000,
"minLength": 1
},
"revocable": {
"type": "boolean"
},
"target_id": {
"type": "string",
"minLength": 1
},
"expires_at": {
"type": "string",
"format": "date-time"
},
"request_id": {
"type": "string",
"minLength": 1
},
"effective_at": {
"type": "string",
"format": "date-time"
},
"idempotency_key": {
"type": "string",
"minLength": 1
},
"artifact_classes": {
"type": "array",
"items": {
"enum": [
"application",
"interview_plan",
"scorecard",
"decision_brief",
"report"
],
"type": "string"
},
"maxItems": 20,
"minItems": 1
},
"subject_person_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Grant someone access to a record (confirm in Yardstick)",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": false
}yardstick_access_grants_revoke — Revoke an access grant (confirm in Yardstick)
Revoke an explicit access grant with optional reason text.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"access_grant_id"
],
"properties": {
"reason": {
"type": "string",
"maxLength": 2000
},
"request_id": {
"type": "string",
"minLength": 1
},
"access_grant_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Revoke an access grant (confirm in Yardstick)",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": true
}yardstick_jobs_list — List jobs
List internal Job containers visible to the current principal.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"starting_after": {
"type": "string",
"minLength": 1
},
"include_archived": {
"type": "boolean"
}
},
"additionalProperties": false
}{
"title": "List jobs",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_jobs_create — Create a job
Create an internal Job container without mutating job postings, applications, or interview plans.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"title"
],
"properties": {
"title": {
"type": "string",
"maxLength": 200,
"minLength": 1
},
"status": {
"enum": [
"draft",
"open",
"paused"
],
"type": "string"
},
"location": {
"type": "string",
"maxLength": 200
},
"department": {
"type": "string",
"maxLength": 200
},
"request_id": {
"type": "string",
"minLength": 1
},
"description": {
"type": "string",
"maxLength": 20000
},
"department_id": {
"anyOf": [
{
"type": "string",
"pattern": "^dpt_[a-z0-9]+$"
},
{
"type": "null"
}
]
},
"location_type": {
"enum": [
"remote",
"hybrid",
"onsite"
],
"type": "string"
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Create a job",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": false
}yardstick_jobs_read — Read a job
Read one internal Job container by public id.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"job_id"
],
"properties": {
"job_id": {
"type": "string",
"minLength": 1
},
"request_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Read a job",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_jobs_prospect_matches — List prospect matches for a job
List deterministic Talent CRM prospect matches for one Job. Read-only; includes evidence, caveats, and blocked lifecycle states without outreach, conversion, import, or AI ranking.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"job_id"
],
"properties": {
"job_id": {
"type": "string",
"minLength": 1
},
"request_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "List prospect matches for a job",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_jobs_update — Update a job
Update one internal Job container with schema-bound public API fields.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"job_id"
],
"properties": {
"title": {
"type": "string",
"maxLength": 200,
"minLength": 1
},
"job_id": {
"type": "string",
"minLength": 1
},
"status": {
"enum": [
"draft",
"open",
"paused"
],
"type": "string"
},
"location": {
"anyOf": [
{
"type": "string",
"maxLength": 200
},
{
"type": "null"
}
]
},
"department": {
"anyOf": [
{
"type": "string",
"maxLength": 200
},
{
"type": "null"
}
]
},
"request_id": {
"type": "string",
"minLength": 1
},
"description": {
"anyOf": [
{
"type": "string",
"maxLength": 20000
},
{
"type": "null"
}
]
},
"department_id": {
"anyOf": [
{
"type": "string",
"pattern": "^dpt_[a-z0-9]+$"
},
{
"type": "null"
}
]
},
"location_type": {
"anyOf": [
{
"enum": [
"remote",
"hybrid",
"onsite"
],
"type": "string"
},
{
"type": "null"
}
]
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Update a job",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_jobs_close — Close a job
Close one Job row only; linked job postings, applications, and interview plans are not mutated.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"job_id"
],
"properties": {
"job_id": {
"type": "string",
"minLength": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Close a job",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_jobs_archive — Archive a job
Archive one Job row only; linked job postings, applications, and interview plans are not mutated.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"job_id"
],
"properties": {
"job_id": {
"type": "string",
"minLength": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Archive a job",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_jobs_attach_artifact — Link an item to a job
Link an existing interview plan, job posting, or application to a Job. Idempotent when already linked to the same Job; conflicts when linked elsewhere. Requires jobs:write and the artifact's own write scope.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"job_id",
"artifact_type",
"artifact_id"
],
"properties": {
"job_id": {
"type": "string",
"minLength": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"artifact_id": {
"type": "string",
"minLength": 1
},
"artifact_type": {
"enum": [
"interview_plan",
"job_posting",
"application"
],
"type": "string"
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Link an item to a job",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_jobs_detach_artifact — Unlink an item from a job
Clear the link between an artifact and a Job. Idempotent when already unlinked. Requires jobs:write and the artifact's own write scope.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"job_id",
"artifact_type",
"artifact_id"
],
"properties": {
"job_id": {
"type": "string",
"minLength": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"artifact_id": {
"type": "string",
"minLength": 1
},
"artifact_type": {
"enum": [
"interview_plan",
"job_posting",
"application"
],
"type": "string"
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Unlink an item from a job",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_pipelines_list — List hiring pipelines
List the organization's pipeline templates with their ordered stages. Canonical default stages are flagged canonical_locked.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"request_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "List hiring pipelines",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_pipelines_read — Read a hiring pipeline
Read one pipeline template and its ordered stages by public id.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"pipeline_id"
],
"properties": {
"request_id": {
"type": "string",
"minLength": 1
},
"pipeline_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Read a hiring pipeline",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_pipelines_create — Create a hiring pipeline
Create a custom pipeline template with optional inline stages. Does not affect the org default pipeline or candidate tracking.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"name",
"slug"
],
"properties": {
"name": {
"type": "string",
"maxLength": 200,
"minLength": 1
},
"slug": {
"type": "string",
"pattern": "^[a-z0-9][a-z0-9_]{0,62}$"
},
"stages": {
"type": "array",
"items": {
"type": "object",
"required": [
"name",
"slug",
"stage_kind"
],
"properties": {
"name": {
"type": "string",
"maxLength": 200,
"minLength": 1
},
"slug": {
"type": "string",
"pattern": "^[a-z0-9][a-z0-9_]{0,62}$"
},
"stage_kind": {
"enum": [
"normal",
"offer",
"hired",
"rejected",
"terminal"
],
"type": "string"
},
"is_terminal": {
"type": "boolean"
},
"approval_scope": {
"anyOf": [
{
"enum": [
"applications:offer",
"applications:hire",
"applications:reject",
"applications:withdraw"
],
"type": "string"
},
{
"type": "null"
}
]
}
},
"additionalProperties": false
},
"maxItems": 100
},
"request_id": {
"type": "string",
"minLength": 1
},
"description": {
"anyOf": [
{
"type": "string",
"maxLength": 2000
},
{
"type": "null"
}
]
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Create a hiring pipeline",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": false
}yardstick_pipelines_clone — Clone a hiring pipeline
Clone a pipeline and its stages. Set copy_rules to copy its workflow rules too (requires automation_rules:write). Returns rules_copied.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"pipeline_id",
"name",
"slug"
],
"properties": {
"name": {
"type": "string",
"maxLength": 200,
"minLength": 1
},
"slug": {
"type": "string",
"pattern": "^[a-z0-9][a-z0-9_-]{0,62}$"
},
"copy_rules": {
"type": "boolean"
},
"request_id": {
"type": "string",
"minLength": 1
},
"pipeline_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Clone a hiring pipeline",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": false
}yardstick_pipelines_update — Update a hiring pipeline
Rename, re-describe, or toggle active for one pipeline template.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"pipeline_id"
],
"properties": {
"name": {
"type": "string",
"maxLength": 200,
"minLength": 1
},
"is_active": {
"type": "boolean"
},
"request_id": {
"type": "string",
"minLength": 1
},
"description": {
"anyOf": [
{
"type": "string",
"maxLength": 2000
},
{
"type": "null"
}
]
},
"pipeline_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Update a hiring pipeline",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_pipelines_stages_create — Add a stage to a hiring pipeline
Append (or insert at a position) a stage to a pipeline with a kind and optional approval scope.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"pipeline_id",
"name",
"slug",
"stage_kind"
],
"properties": {
"name": {
"type": "string",
"maxLength": 200,
"minLength": 1
},
"slug": {
"type": "string",
"pattern": "^[a-z0-9][a-z0-9_]{0,62}$"
},
"position": {
"type": "integer",
"minimum": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"stage_kind": {
"enum": [
"normal",
"offer",
"hired",
"rejected",
"terminal"
],
"type": "string"
},
"is_terminal": {
"type": "boolean"
},
"pipeline_id": {
"type": "string",
"minLength": 1
},
"approval_scope": {
"anyOf": [
{
"enum": [
"applications:offer",
"applications:hire",
"applications:reject",
"applications:withdraw"
],
"type": "string"
},
{
"type": "null"
}
]
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Add a stage to a hiring pipeline",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": false
}yardstick_pipelines_stages_update — Edit a hiring pipeline stage
Edit a pipeline stage. Canonical default stages allow display-name change only; slug/stage_kind/approval_scope/is_terminal are locked.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"pipeline_id",
"stage_id"
],
"properties": {
"name": {
"type": "string",
"maxLength": 200,
"minLength": 1
},
"slug": {
"type": "string",
"pattern": "^[a-z0-9][a-z0-9_]{0,62}$"
},
"stage_id": {
"type": "string",
"minLength": 1
},
"is_active": {
"type": "boolean"
},
"request_id": {
"type": "string",
"minLength": 1
},
"stage_kind": {
"enum": [
"normal",
"offer",
"hired",
"rejected",
"terminal"
],
"type": "string"
},
"is_terminal": {
"type": "boolean"
},
"pipeline_id": {
"type": "string",
"minLength": 1
},
"approval_scope": {
"anyOf": [
{
"enum": [
"applications:offer",
"applications:hire",
"applications:reject",
"applications:withdraw"
],
"type": "string"
},
{
"type": "null"
}
]
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Edit a hiring pipeline stage",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_pipelines_reorder_stages — Reorder hiring pipeline stages
Reorder all stages of a pipeline by supplying the complete stage id order. Constraint-safe; allowed for canonical stages.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"pipeline_id",
"stage_ids"
],
"properties": {
"stage_ids": {
"type": "array",
"items": {
"type": "string",
"minLength": 1
},
"maxItems": 200,
"minItems": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"pipeline_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Reorder hiring pipeline stages",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_pipelines_stages_delete_preview — Preview deleting a hiring pipeline stage (nothing changed yet)
Preview deleting a pipeline stage; returns the candidate-count impact and binding fields. Canonical default stages are rejected.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"pipeline_id",
"stage_id"
],
"properties": {
"stage_id": {
"type": "string",
"minLength": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"pipeline_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Preview deleting a hiring pipeline stage (nothing changed yet)",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_pipelines_stages_delete_bind — Confirm and delete a hiring pipeline stage
Bind an approved pipeline-stage delete with explicit approval metadata and a matching idempotency key. Refuses while candidates remain.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"pipeline_id",
"stage_id",
"binding"
],
"properties": {
"binding": {
"type": "object",
"required": [
"preview_hash",
"approved_action_key",
"approved_input_hash",
"approved_idempotency_key",
"resource_version_precondition"
],
"properties": {
"preview_hash": {
"type": "string",
"minLength": 1
},
"approved_action_key": {
"type": "string",
"minLength": 1
},
"approved_input_hash": {
"type": "string",
"minLength": 1
},
"approved_idempotency_key": {
"type": "string",
"minLength": 1
},
"resource_version_precondition": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
},
"stage_id": {
"type": "string",
"minLength": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"pipeline_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Confirm and delete a hiring pipeline stage",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_pipelines_assign_to_job — Assign a hiring pipeline to a job
Assign a pipeline to a job (jobs.pipeline_template_id) or clear it with pipeline_id: null. Pipeline validated by org; job resolved by org+mode.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"job_id",
"pipeline_id"
],
"properties": {
"job_id": {
"type": "string",
"minLength": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"pipeline_id": {
"anyOf": [
{
"type": "string",
"minLength": 1
},
{
"type": "null"
}
]
},
"stage_mapping": {
"type": "object",
"propertyNames": {
"minLength": 1
},
"additionalProperties": {
"type": "string",
"minLength": 1
}
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Assign a hiring pipeline to a job",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_pipelines_assign_to_job_preview — Preview assigning a hiring pipeline to a job
Preview the job's stages in use, candidate counts and suggested same-name mapping before changing its pipeline. Makes no changes.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"job_id",
"pipeline_id"
],
"properties": {
"job_id": {
"type": "string",
"minLength": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"pipeline_id": {
"anyOf": [
{
"type": "string",
"minLength": 1
},
{
"type": "null"
}
]
}
},
"additionalProperties": false
}{
"title": "Preview assigning a hiring pipeline to a job",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_automation_rules_copy — Copy a rule to jobs or pipelines
Copy one hiring process rule to job_ids, or one pipeline rule to pipeline_ids. Matches steps by name or kind and position, stages by name or mapped status. Unmatched copies start off and require Pick a step or Pick a stage. Copies are independent user rules.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"rule_id"
],
"properties": {
"job_ids": {
"type": "array",
"items": {
"type": "string",
"minLength": 1
},
"maxItems": 50,
"minItems": 1
},
"rule_id": {
"type": "string",
"minLength": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"pipeline_ids": {
"type": "array",
"items": {
"type": "string",
"minLength": 1
},
"maxItems": 50,
"minItems": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Copy a rule to jobs or pipelines",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": false
}yardstick_automation_rules_list — List stage automation rules
List all job and pipeline rules. Filter by job_id (null for pipeline rules), department_id, pipeline_id, trigger, email or is_active. Job and department filters include inherited pipeline rules; pipeline filters also include hiring-step rules on jobs using that pipeline.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"email": {
"type": "string",
"minLength": 1
},
"job_id": {
"type": "string",
"minLength": 1
},
"trigger": {
"type": "string",
"minLength": 1
},
"is_active": {
"type": "boolean"
},
"request_id": {
"type": "string",
"minLength": 1
},
"pipeline_id": {
"type": "string",
"minLength": 1
},
"department_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "List stage automation rules",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_automation_rules_bulk — Confirm bulk automation rule changes
Switch rules on, off or delete them. First use mode=preview with rule_ids or filter. Show the affected rules and skipped rules to the user and get explicit confirmation BEFORE applying. Then use mode=apply with only the exact rule_ids returned by preview; never reapply the filter. Pick a step rules are skipped when switching on. Warn that shared pipeline rules change for every job on that pipeline, including jobs outside the filter.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"action",
"mode"
],
"properties": {
"mode": {
"enum": [
"preview",
"apply"
],
"type": "string"
},
"action": {
"enum": [
"on",
"off",
"delete"
],
"type": "string"
},
"filter": {
"type": "object",
"properties": {
"email": {
"type": "string",
"minLength": 1
},
"job_id": {
"type": "string",
"minLength": 1
},
"trigger": {
"type": "string",
"minLength": 1
},
"is_active": {
"type": "boolean"
},
"pipeline_id": {
"type": "string",
"minLength": 1
},
"department_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
},
"rule_ids": {
"type": "array",
"items": {
"type": "string",
"minLength": 1
},
"maxItems": 500,
"minItems": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Confirm bulk automation rule changes",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_automation_runs_retry — Try a workflow run again after fixing setup
Try a workflow run again after fixing missing setup. Only clean refusals and active rules qualify; unknown outcomes are refused.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"run_id"
],
"properties": {
"run_id": {
"type": "string",
"minLength": 1
},
"request_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Try a workflow run again after fixing setup",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": true
}yardstick_automation_runs_list — List stage automation runs
List workflow automation runs including public_state, reason, next_action, due_at and interview_session_id. Filter by application-id or rule-id. Read-only; runs are system-written.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"rule_id": {
"type": "string",
"minLength": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"application_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "List stage automation runs",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_automation_rules_read — Read a stage automation rule
Read one automation rule by public id (its trigger, typed action, target stage, and is_active state).
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"rule_id"
],
"properties": {
"rule_id": {
"type": "string",
"minLength": 1
},
"request_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Read a stage automation rule",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_automation_rules_create — Create a stage automation rule
Create a named workflow automation rule with stage or step triggers, job scope, delivery mode, timing and a typed action. Authoring executes no action.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"trigger",
"action"
],
"properties": {
"name": {
"type": "string",
"maxLength": 200
},
"action": {
"anyOf": [
{
"type": "object",
"required": [
"type",
"task"
],
"properties": {
"task": {
"type": "object",
"required": [
"assignee",
"title"
],
"properties": {
"title": {
"type": "string",
"maxLength": 500,
"minLength": 1
},
"due_in": {
"type": "object",
"required": [
"value",
"unit"
],
"properties": {
"unit": {
"enum": [
"days",
"hours"
],
"type": "string"
},
"value": {
"type": "integer",
"maximum": 8760,
"minimum": 1
}
},
"additionalProperties": false
},
"assignee": {
"anyOf": [
{
"type": "string",
"const": "recruiter"
},
{
"type": "object",
"required": [
"user_id"
],
"properties": {
"user_id": {
"type": "string",
"format": "uuid"
}
},
"additionalProperties": false
}
]
}
},
"additionalProperties": false
},
"type": {
"type": "string",
"const": "update_scheduling"
},
"delivery": {
"enum": [
"auto_send",
"auto_draft_review"
],
"type": "string",
"default": "auto_draft_review"
},
"template_key": {
"type": "string",
"maxLength": 200,
"minLength": 1
}
},
"additionalProperties": false
},
{
"type": "object",
"required": [
"type",
"task_type",
"task_title"
],
"properties": {
"type": {
"type": "string",
"const": "create_task"
},
"due_in": {
"type": "object",
"required": [
"value",
"unit"
],
"properties": {
"unit": {
"enum": [
"days",
"hours"
],
"type": "string"
},
"value": {
"type": "integer",
"maximum": 8760,
"minimum": 1
}
},
"description": "Due this many days or hours after the rule fires; at most 365 days or 8760 hours. Cannot combine with due_date.",
"additionalProperties": false
},
"context": {
"type": "object",
"additionalProperties": {}
},
"due_date": {
"type": "string",
"maxLength": 64,
"minLength": 1,
"description": "Existing fixed deadline; use due_in for recurring rules."
},
"task_type": {
"type": "string",
"maxLength": 200,
"minLength": 1,
"description": "Add to My Tasks: scorecard_review on feedback_submitted, or coordination for a general follow-up. Same-kind tasks are stacked."
},
"task_title": {
"type": "string",
"maxLength": 500,
"minLength": 1,
"description": "Task title; {candidate} resolves to the candidate name."
},
"assigned_role": {
"enum": [
"assigned_interviewer",
"recruiter",
"hiring_manager",
"team_owner"
],
"type": "string"
},
"assigned_user_email": {
"type": "string",
"maxLength": 320,
"minLength": 1
}
},
"additionalProperties": false
},
{
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"const": "send_email"
},
"email_type": {
"anyOf": [
{
"enum": [
"acknowledgment",
"advancement",
"interview_confirmation",
"rejection",
"offer_declined",
"offer",
"hired",
"withdrawn",
"on_hold"
],
"type": "string"
},
{
"type": "string",
"const": "interview_cancellation"
}
]
},
"sender_type": {
"enum": [
"owner",
"job_hiring_manager"
],
"type": "string",
"description": "Who the email comes from: owner (the job recruiter) or job_hiring_manager. Omit to use the company's sender setting."
},
"template_key": {
"type": "string",
"maxLength": 200,
"minLength": 1
}
},
"additionalProperties": false
},
{
"type": "object",
"required": [
"type",
"interview_ids",
"format"
],
"properties": {
"type": {
"type": "string",
"const": "send_scheduling_invitation"
},
"format": {
"enum": [
"combined",
"separate"
],
"type": "string"
},
"template_key": {
"type": "string",
"maxLength": 200,
"minLength": 1
},
"interview_ids": {
"type": "array",
"items": {
"type": "string",
"minLength": 1
}
}
},
"additionalProperties": false
},
{
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"const": "send_preparation_email"
},
"template_key": {
"enum": [
"candidate_preparation",
"onsite_logistics",
"technical_preparation"
],
"type": "string"
}
},
"additionalProperties": false
},
{
"type": "object",
"required": [
"type",
"audience",
"template"
],
"properties": {
"type": {
"type": "string",
"const": "send_internal_email"
},
"audience": {
"enum": [
"assigned_interviewer",
"recruiter",
"hiring_manager",
"team_owner",
"offer_approver",
"offer_requester"
],
"type": "string"
},
"template": {
"type": "string",
"maxLength": 200,
"minLength": 1
}
},
"additionalProperties": false
},
{
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"const": "verify_calendar_event"
}
},
"additionalProperties": false
}
]
},
"job_id": {
"anyOf": [
{
"type": "string",
"minLength": 1
},
{
"type": "null"
}
]
},
"timing": {
"anyOf": [
{
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"const": "immediate"
}
},
"additionalProperties": false
},
{
"type": "object",
"required": [
"type",
"delayMinutes"
],
"properties": {
"type": {
"type": "string",
"const": "delay"
},
"delayMinutes": {
"type": "integer",
"minimum": 0
}
},
"additionalProperties": false
},
{
"type": "object",
"required": [
"type",
"anchor",
"offsetMinutes"
],
"properties": {
"type": {
"type": "string",
"const": "interview_relative"
},
"anchor": {
"enum": [
"start",
"end"
],
"type": "string"
},
"offsetMinutes": {
"type": "integer"
}
},
"additionalProperties": false
}
]
},
"trigger": {
"enum": [
"stage_enter",
"stage_exit",
"step_ready",
"booking_created",
"booking_changed",
"step_completed",
"feedback_submitted",
"all_scorecards_submitted",
"hiring_manager_advanced",
"hiring_manager_held",
"interview_time",
"assignment_changed",
"booking_cancelled",
"scorecard_due",
"scorecard_overdue",
"decision_brief_ready",
"coaching_report_ready",
"offer_approval_due",
"offer_approval_escalation_due"
],
"type": "string"
},
"position": {
"type": "integer",
"minimum": 0
},
"condition": {
"type": "object",
"properties": {
"step_kinds": {
"type": "array",
"items": {
"enum": [
"candidate_interview",
"reference_check",
"internal_debrief",
"offer_meeting"
],
"type": "string"
},
"minItems": 1
},
"interview_ids": {
"type": "array",
"items": {
"type": "string",
"minLength": 1
},
"minItems": 1
},
"step_position": {
"anyOf": [
{
"type": "object",
"required": [
"which"
],
"properties": {
"which": {
"type": "string",
"const": "next"
}
},
"additionalProperties": false
},
{
"type": "object",
"required": [
"which",
"kind"
],
"properties": {
"kind": {
"enum": [
"candidate_interview",
"reference_check",
"internal_debrief",
"offer_meeting"
],
"type": "string"
},
"which": {
"type": "string",
"const": "first"
}
},
"additionalProperties": false
},
{
"type": "object",
"required": [
"which",
"kind"
],
"properties": {
"kind": {
"enum": [
"candidate_interview",
"reference_check",
"internal_debrief",
"offer_meeting"
],
"type": "string"
},
"which": {
"type": "string",
"const": "last"
}
},
"additionalProperties": false
},
{
"type": "object",
"required": [
"which",
"kind",
"anchor_kind"
],
"properties": {
"kind": {
"enum": [
"candidate_interview",
"reference_check",
"internal_debrief",
"offer_meeting"
],
"type": "string"
},
"which": {
"type": "string",
"const": "last_before"
},
"anchor_kind": {
"enum": [
"candidate_interview",
"reference_check",
"internal_debrief",
"offer_meeting"
],
"type": "string"
}
},
"additionalProperties": false
}
]
}
},
"additionalProperties": true
},
"is_active": {
"type": "boolean"
},
"job_scope": {
"enum": [
"all_compatible",
"selected"
],
"type": "string"
},
"request_id": {
"type": "string",
"minLength": 1
},
"starter_key": {
"anyOf": [
{
"type": "string",
"maxLength": 100
},
{
"type": "null"
}
]
},
"delivery_mode": {
"enum": [
"auto_send",
"auto_draft_review"
],
"type": "string"
},
"idempotency_key": {
"type": "string",
"minLength": 1
},
"job_posting_ids": {
"type": "array",
"items": {
"type": "string",
"format": "uuid"
}
},
"needs_step_pick": {
"type": "boolean"
},
"pipeline_stage_id": {
"anyOf": [
{
"type": "string",
"minLength": 1
},
{
"type": "null"
}
]
},
"pipeline_template_id": {
"anyOf": [
{
"type": "string",
"minLength": 1
},
{
"type": "null"
}
]
}
},
"additionalProperties": false
}{
"title": "Create a stage automation rule",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": false
}yardstick_automation_rules_update — Edit a stage automation rule
Edit a workflow automation rule's name, stage or step trigger, action, condition, job scope, delivery mode, timing or active state.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"rule_id"
],
"properties": {
"name": {
"type": "string",
"maxLength": 200
},
"action": {
"anyOf": [
{
"type": "object",
"required": [
"type",
"task"
],
"properties": {
"task": {
"type": "object",
"required": [
"assignee",
"title"
],
"properties": {
"title": {
"type": "string",
"maxLength": 500,
"minLength": 1
},
"due_in": {
"type": "object",
"required": [
"value",
"unit"
],
"properties": {
"unit": {
"enum": [
"days",
"hours"
],
"type": "string"
},
"value": {
"type": "integer",
"maximum": 8760,
"minimum": 1
}
},
"additionalProperties": false
},
"assignee": {
"anyOf": [
{
"type": "string",
"const": "recruiter"
},
{
"type": "object",
"required": [
"user_id"
],
"properties": {
"user_id": {
"type": "string",
"format": "uuid"
}
},
"additionalProperties": false
}
]
}
},
"additionalProperties": false
},
"type": {
"type": "string",
"const": "update_scheduling"
},
"delivery": {
"enum": [
"auto_send",
"auto_draft_review"
],
"type": "string",
"default": "auto_draft_review"
},
"template_key": {
"type": "string",
"maxLength": 200,
"minLength": 1
}
},
"additionalProperties": false
},
{
"type": "object",
"required": [
"type",
"task_type",
"task_title"
],
"properties": {
"type": {
"type": "string",
"const": "create_task"
},
"due_in": {
"type": "object",
"required": [
"value",
"unit"
],
"properties": {
"unit": {
"enum": [
"days",
"hours"
],
"type": "string"
},
"value": {
"type": "integer",
"maximum": 8760,
"minimum": 1
}
},
"description": "Due this many days or hours after the rule fires; at most 365 days or 8760 hours. Cannot combine with due_date.",
"additionalProperties": false
},
"context": {
"type": "object",
"additionalProperties": {}
},
"due_date": {
"type": "string",
"maxLength": 64,
"minLength": 1,
"description": "Existing fixed deadline; use due_in for recurring rules."
},
"task_type": {
"type": "string",
"maxLength": 200,
"minLength": 1,
"description": "Add to My Tasks: scorecard_review on feedback_submitted, or coordination for a general follow-up. Same-kind tasks are stacked."
},
"task_title": {
"type": "string",
"maxLength": 500,
"minLength": 1,
"description": "Task title; {candidate} resolves to the candidate name."
},
"assigned_role": {
"enum": [
"assigned_interviewer",
"recruiter",
"hiring_manager",
"team_owner"
],
"type": "string"
},
"assigned_user_email": {
"type": "string",
"maxLength": 320,
"minLength": 1
}
},
"additionalProperties": false
},
{
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"const": "send_email"
},
"email_type": {
"anyOf": [
{
"enum": [
"acknowledgment",
"advancement",
"interview_confirmation",
"rejection",
"offer_declined",
"offer",
"hired",
"withdrawn",
"on_hold"
],
"type": "string"
},
{
"type": "string",
"const": "interview_cancellation"
}
]
},
"sender_type": {
"enum": [
"owner",
"job_hiring_manager"
],
"type": "string",
"description": "Who the email comes from: owner (the job recruiter) or job_hiring_manager. Omit to use the company's sender setting."
},
"template_key": {
"type": "string",
"maxLength": 200,
"minLength": 1
}
},
"additionalProperties": false
},
{
"type": "object",
"required": [
"type",
"interview_ids",
"format"
],
"properties": {
"type": {
"type": "string",
"const": "send_scheduling_invitation"
},
"format": {
"enum": [
"combined",
"separate"
],
"type": "string"
},
"template_key": {
"type": "string",
"maxLength": 200,
"minLength": 1
},
"interview_ids": {
"type": "array",
"items": {
"type": "string",
"minLength": 1
}
}
},
"additionalProperties": false
},
{
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"const": "send_preparation_email"
},
"template_key": {
"enum": [
"candidate_preparation",
"onsite_logistics",
"technical_preparation"
],
"type": "string"
}
},
"additionalProperties": false
},
{
"type": "object",
"required": [
"type",
"audience",
"template"
],
"properties": {
"type": {
"type": "string",
"const": "send_internal_email"
},
"audience": {
"enum": [
"assigned_interviewer",
"recruiter",
"hiring_manager",
"team_owner",
"offer_approver",
"offer_requester"
],
"type": "string"
},
"template": {
"type": "string",
"maxLength": 200,
"minLength": 1
}
},
"additionalProperties": false
},
{
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"const": "verify_calendar_event"
}
},
"additionalProperties": false
}
]
},
"job_id": {
"anyOf": [
{
"type": "string",
"minLength": 1
},
{
"type": "null"
}
]
},
"timing": {
"anyOf": [
{
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"const": "immediate"
}
},
"additionalProperties": false
},
{
"type": "object",
"required": [
"type",
"delayMinutes"
],
"properties": {
"type": {
"type": "string",
"const": "delay"
},
"delayMinutes": {
"type": "integer",
"minimum": 0
}
},
"additionalProperties": false
},
{
"type": "object",
"required": [
"type",
"anchor",
"offsetMinutes"
],
"properties": {
"type": {
"type": "string",
"const": "interview_relative"
},
"anchor": {
"enum": [
"start",
"end"
],
"type": "string"
},
"offsetMinutes": {
"type": "integer"
}
},
"additionalProperties": false
}
]
},
"rule_id": {
"type": "string",
"minLength": 1
},
"trigger": {
"enum": [
"stage_enter",
"stage_exit",
"step_ready",
"booking_created",
"booking_changed",
"step_completed",
"feedback_submitted",
"all_scorecards_submitted",
"hiring_manager_advanced",
"hiring_manager_held",
"interview_time",
"assignment_changed",
"booking_cancelled",
"scorecard_due",
"scorecard_overdue",
"decision_brief_ready",
"coaching_report_ready",
"offer_approval_due",
"offer_approval_escalation_due"
],
"type": "string"
},
"position": {
"anyOf": [
{
"type": "integer",
"minimum": 0
},
{
"type": "null"
}
]
},
"condition": {
"type": "object",
"properties": {
"step_kinds": {
"type": "array",
"items": {
"enum": [
"candidate_interview",
"reference_check",
"internal_debrief",
"offer_meeting"
],
"type": "string"
},
"minItems": 1
},
"interview_ids": {
"type": "array",
"items": {
"type": "string",
"minLength": 1
},
"minItems": 1
},
"step_position": {
"anyOf": [
{
"type": "object",
"required": [
"which"
],
"properties": {
"which": {
"type": "string",
"const": "next"
}
},
"additionalProperties": false
},
{
"type": "object",
"required": [
"which",
"kind"
],
"properties": {
"kind": {
"enum": [
"candidate_interview",
"reference_check",
"internal_debrief",
"offer_meeting"
],
"type": "string"
},
"which": {
"type": "string",
"const": "first"
}
},
"additionalProperties": false
},
{
"type": "object",
"required": [
"which",
"kind"
],
"properties": {
"kind": {
"enum": [
"candidate_interview",
"reference_check",
"internal_debrief",
"offer_meeting"
],
"type": "string"
},
"which": {
"type": "string",
"const": "last"
}
},
"additionalProperties": false
},
{
"type": "object",
"required": [
"which",
"kind",
"anchor_kind"
],
"properties": {
"kind": {
"enum": [
"candidate_interview",
"reference_check",
"internal_debrief",
"offer_meeting"
],
"type": "string"
},
"which": {
"type": "string",
"const": "last_before"
},
"anchor_kind": {
"enum": [
"candidate_interview",
"reference_check",
"internal_debrief",
"offer_meeting"
],
"type": "string"
}
},
"additionalProperties": false
}
]
}
},
"additionalProperties": true
},
"is_active": {
"type": "boolean"
},
"job_scope": {
"enum": [
"all_compatible",
"selected"
],
"type": "string"
},
"request_id": {
"type": "string",
"minLength": 1
},
"starter_key": {
"anyOf": [
{
"type": "string",
"maxLength": 100
},
{
"type": "null"
}
]
},
"delivery_mode": {
"enum": [
"auto_send",
"auto_draft_review"
],
"type": "string"
},
"idempotency_key": {
"type": "string",
"minLength": 1
},
"job_posting_ids": {
"type": "array",
"items": {
"type": "string",
"format": "uuid"
}
},
"needs_step_pick": {
"type": "boolean"
},
"pipeline_stage_id": {
"anyOf": [
{
"type": "string",
"minLength": 1
},
{
"type": "null"
}
]
},
"pipeline_template_id": {
"anyOf": [
{
"type": "string",
"minLength": 1
},
{
"type": "null"
}
]
}
},
"additionalProperties": false
}{
"title": "Edit a stage automation rule",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_automation_rules_delete — Delete a stage automation rule
Delete an automation rule. Plain delete (no approval preview→bind): rules are inert config, so deleting unfired config moves no candidates.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"rule_id"
],
"properties": {
"rule_id": {
"type": "string",
"minLength": 1
},
"request_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Delete a stage automation rule",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_automation_rules_preview_rule — Preview a saved workflow rule (runs nothing)
Preview a saved workflow rule for a real application: recipients, sender, rendered email, scheduling links and missing prerequisites. Executes no action.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"rule_id",
"application_id"
],
"properties": {
"rule_id": {
"type": "string",
"minLength": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"application_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Preview a saved workflow rule (runs nothing)",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_automation_rules_preview_draft — Preview an unsaved workflow rule (runs nothing)
Preview a rule before saving it, for a real application: the same result as preview-rule. Pass the rule as you would to create (CLI: --body-json '{"rule":{...}}'); add rule_id to preview unsaved edits to that rule. Saves nothing and executes no action.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"application_id",
"rule"
],
"properties": {
"rule": {
"type": "object",
"required": [
"trigger",
"action"
],
"properties": {
"name": {
"type": "string",
"maxLength": 200
},
"action": {
"anyOf": [
{
"type": "object",
"required": [
"type",
"task"
],
"properties": {
"task": {
"type": "object",
"required": [
"assignee",
"title"
],
"properties": {
"title": {
"type": "string",
"maxLength": 500,
"minLength": 1
},
"due_in": {
"type": "object",
"required": [
"value",
"unit"
],
"properties": {
"unit": {
"enum": [
"days",
"hours"
],
"type": "string"
},
"value": {
"type": "integer",
"maximum": 8760,
"minimum": 1
}
},
"additionalProperties": false
},
"assignee": {
"anyOf": [
{
"type": "string",
"const": "recruiter"
},
{
"type": "object",
"required": [
"user_id"
],
"properties": {
"user_id": {
"type": "string",
"format": "uuid"
}
},
"additionalProperties": false
}
]
}
},
"additionalProperties": false
},
"type": {
"type": "string",
"const": "update_scheduling"
},
"delivery": {
"enum": [
"auto_send",
"auto_draft_review"
],
"type": "string",
"default": "auto_draft_review"
},
"template_key": {
"type": "string",
"maxLength": 200,
"minLength": 1
}
},
"additionalProperties": false
},
{
"type": "object",
"required": [
"type",
"task_type",
"task_title"
],
"properties": {
"type": {
"type": "string",
"const": "create_task"
},
"due_in": {
"type": "object",
"required": [
"value",
"unit"
],
"properties": {
"unit": {
"enum": [
"days",
"hours"
],
"type": "string"
},
"value": {
"type": "integer",
"maximum": 8760,
"minimum": 1
}
},
"description": "Due this many days or hours after the rule fires; at most 365 days or 8760 hours. Cannot combine with due_date.",
"additionalProperties": false
},
"context": {
"type": "object",
"additionalProperties": {}
},
"due_date": {
"type": "string",
"maxLength": 64,
"minLength": 1,
"description": "Existing fixed deadline; use due_in for recurring rules."
},
"task_type": {
"type": "string",
"maxLength": 200,
"minLength": 1,
"description": "Add to My Tasks: scorecard_review on feedback_submitted, or coordination for a general follow-up. Same-kind tasks are stacked."
},
"task_title": {
"type": "string",
"maxLength": 500,
"minLength": 1,
"description": "Task title; {candidate} resolves to the candidate name."
},
"assigned_role": {
"enum": [
"assigned_interviewer",
"recruiter",
"hiring_manager",
"team_owner"
],
"type": "string"
},
"assigned_user_email": {
"type": "string",
"maxLength": 320,
"minLength": 1
}
},
"additionalProperties": false
},
{
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"const": "send_email"
},
"email_type": {
"anyOf": [
{
"enum": [
"acknowledgment",
"advancement",
"interview_confirmation",
"rejection",
"offer_declined",
"offer",
"hired",
"withdrawn",
"on_hold"
],
"type": "string"
},
{
"type": "string",
"const": "interview_cancellation"
}
]
},
"sender_type": {
"enum": [
"owner",
"job_hiring_manager"
],
"type": "string",
"description": "Who the email comes from: owner (the job recruiter) or job_hiring_manager. Omit to use the company's sender setting."
},
"template_key": {
"type": "string",
"maxLength": 200,
"minLength": 1
}
},
"additionalProperties": false
},
{
"type": "object",
"required": [
"type",
"interview_ids",
"format"
],
"properties": {
"type": {
"type": "string",
"const": "send_scheduling_invitation"
},
"format": {
"enum": [
"combined",
"separate"
],
"type": "string"
},
"template_key": {
"type": "string",
"maxLength": 200,
"minLength": 1
},
"interview_ids": {
"type": "array",
"items": {
"type": "string",
"minLength": 1
}
}
},
"additionalProperties": false
},
{
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"const": "send_preparation_email"
},
"template_key": {
"enum": [
"candidate_preparation",
"onsite_logistics",
"technical_preparation"
],
"type": "string"
}
},
"additionalProperties": false
},
{
"type": "object",
"required": [
"type",
"audience",
"template"
],
"properties": {
"type": {
"type": "string",
"const": "send_internal_email"
},
"audience": {
"enum": [
"assigned_interviewer",
"recruiter",
"hiring_manager",
"team_owner",
"offer_approver",
"offer_requester"
],
"type": "string"
},
"template": {
"type": "string",
"maxLength": 200,
"minLength": 1
}
},
"additionalProperties": false
},
{
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"const": "verify_calendar_event"
}
},
"additionalProperties": false
}
]
},
"job_id": {
"anyOf": [
{
"type": "string",
"minLength": 1
},
{
"type": "null"
}
]
},
"timing": {
"anyOf": [
{
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"const": "immediate"
}
},
"additionalProperties": false
},
{
"type": "object",
"required": [
"type",
"delayMinutes"
],
"properties": {
"type": {
"type": "string",
"const": "delay"
},
"delayMinutes": {
"type": "integer",
"minimum": 0
}
},
"additionalProperties": false
},
{
"type": "object",
"required": [
"type",
"anchor",
"offsetMinutes"
],
"properties": {
"type": {
"type": "string",
"const": "interview_relative"
},
"anchor": {
"enum": [
"start",
"end"
],
"type": "string"
},
"offsetMinutes": {
"type": "integer"
}
},
"additionalProperties": false
}
]
},
"trigger": {
"enum": [
"stage_enter",
"stage_exit",
"step_ready",
"booking_created",
"booking_changed",
"step_completed",
"feedback_submitted",
"all_scorecards_submitted",
"hiring_manager_advanced",
"hiring_manager_held",
"interview_time",
"assignment_changed",
"booking_cancelled",
"scorecard_due",
"scorecard_overdue",
"decision_brief_ready",
"coaching_report_ready",
"offer_approval_due",
"offer_approval_escalation_due"
],
"type": "string"
},
"position": {
"type": "integer",
"minimum": 0
},
"condition": {
"type": "object",
"properties": {
"step_kinds": {
"type": "array",
"items": {
"enum": [
"candidate_interview",
"reference_check",
"internal_debrief",
"offer_meeting"
],
"type": "string"
},
"minItems": 1
},
"interview_ids": {
"type": "array",
"items": {
"type": "string",
"minLength": 1
},
"minItems": 1
},
"step_position": {
"anyOf": [
{
"type": "object",
"required": [
"which"
],
"properties": {
"which": {
"type": "string",
"const": "next"
}
},
"additionalProperties": false
},
{
"type": "object",
"required": [
"which",
"kind"
],
"properties": {
"kind": {
"enum": [
"candidate_interview",
"reference_check",
"internal_debrief",
"offer_meeting"
],
"type": "string"
},
"which": {
"type": "string",
"const": "first"
}
},
"additionalProperties": false
},
{
"type": "object",
"required": [
"which",
"kind"
],
"properties": {
"kind": {
"enum": [
"candidate_interview",
"reference_check",
"internal_debrief",
"offer_meeting"
],
"type": "string"
},
"which": {
"type": "string",
"const": "last"
}
},
"additionalProperties": false
},
{
"type": "object",
"required": [
"which",
"kind",
"anchor_kind"
],
"properties": {
"kind": {
"enum": [
"candidate_interview",
"reference_check",
"internal_debrief",
"offer_meeting"
],
"type": "string"
},
"which": {
"type": "string",
"const": "last_before"
},
"anchor_kind": {
"enum": [
"candidate_interview",
"reference_check",
"internal_debrief",
"offer_meeting"
],
"type": "string"
}
},
"additionalProperties": false
}
]
}
},
"additionalProperties": true
},
"is_active": {
"type": "boolean"
},
"job_scope": {
"enum": [
"all_compatible",
"selected"
],
"type": "string"
},
"starter_key": {
"anyOf": [
{
"type": "string",
"maxLength": 100
},
{
"type": "null"
}
]
},
"delivery_mode": {
"enum": [
"auto_send",
"auto_draft_review"
],
"type": "string"
},
"job_posting_ids": {
"type": "array",
"items": {
"type": "string",
"format": "uuid"
}
},
"needs_step_pick": {
"type": "boolean"
},
"pipeline_stage_id": {
"anyOf": [
{
"type": "string",
"minLength": 1
},
{
"type": "null"
}
]
},
"pipeline_template_id": {
"anyOf": [
{
"type": "string",
"minLength": 1
},
{
"type": "null"
}
]
}
},
"description": "The rule as you would pass it to create.",
"additionalProperties": false
},
"rule_id": {
"type": "string",
"minLength": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"application_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Preview an unsaved workflow rule (runs nothing)",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_automation_rules_preview — Preview which automations a stage change would fire (runs nothing)
Dry-run preview: resolve the active rules + their resolved action params for a sample application entering/leaving a stage. INERT — mints no scheduling link, creates no task, sends no email; executes nothing.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"application_id",
"trigger",
"pipeline_stage_id"
],
"properties": {
"trigger": {
"enum": [
"stage_enter",
"stage_exit",
"step_ready",
"booking_created",
"booking_changed",
"step_completed",
"feedback_submitted",
"all_scorecards_submitted",
"hiring_manager_advanced",
"hiring_manager_held",
"interview_time",
"assignment_changed",
"booking_cancelled",
"scorecard_due",
"scorecard_overdue",
"decision_brief_ready",
"coaching_report_ready",
"offer_approval_due",
"offer_approval_escalation_due"
],
"type": "string"
},
"request_id": {
"type": "string",
"minLength": 1
},
"application_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
},
"pipeline_stage_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Preview which automations a stage change would fire (runs nothing)",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_automation_starters_list — List automation starters
List your organization’s saved automation starters.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"request_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "List automation starters",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_automation_starters_create — Create an automation starter
Create a named organization starter from portable rule definitions.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"name",
"rules"
],
"properties": {
"name": {
"type": "string",
"maxLength": 200,
"minLength": 1
},
"rules": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": {}
},
"maxItems": 200
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Create an automation starter",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": false
}yardstick_automation_starters_rename — Rename an automation starter
Rename an organization starter without changing existing job copies.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"starter_id",
"name"
],
"properties": {
"name": {
"type": "string",
"maxLength": 200,
"minLength": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"starter_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Rename an automation starter",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_automation_starters_delete — Delete an automation starter
Delete an organization starter while keeping existing job copies.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"starter_id"
],
"properties": {
"request_id": {
"type": "string",
"minLength": 1
},
"starter_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Delete an automation starter",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_automation_starters_save_job — Save job automations as a starter
Save a job’s automation rules as a named organization starter.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"job_id",
"name"
],
"properties": {
"name": {
"type": "string",
"maxLength": 200,
"minLength": 1
},
"job_id": {
"type": "string",
"minLength": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Save job automations as a starter",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": false
}yardstick_automation_starters_preview — Preview copying automations into a job
Preview copying a starter or job’s rules, including step and stage matches and unmatched rules.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"job_id",
"source"
],
"properties": {
"job_id": {
"type": "string",
"minLength": 1
},
"source": {
"type": "object",
"required": [
"type",
"id"
],
"properties": {
"id": {
"type": "string",
"minLength": 1
},
"type": {
"enum": [
"starter",
"job"
],
"type": "string"
}
},
"additionalProperties": false
},
"matches": {
"type": "object",
"additionalProperties": {
"type": "object",
"properties": {
"steps": {
"type": "object",
"additionalProperties": {
"anyOf": [
{
"type": "string",
"minLength": 1
},
{
"type": "null"
}
]
}
},
"stage_id": {
"anyOf": [
{
"type": "string",
"minLength": 1
},
{
"type": "null"
}
]
}
},
"additionalProperties": false
}
},
"request_id": {
"type": "string",
"minLength": 1
},
"source_digest": {
"type": "string",
"pattern": "^[a-f0-9]{64}$"
}
},
"additionalProperties": false
}{
"title": "Preview copying automations into a job",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_automation_starters_apply — Copy automations into a job
Copy reviewed rules into a job using chosen matches; keep unmatched rules off and existing rules intact.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"job_id",
"source"
],
"properties": {
"job_id": {
"type": "string",
"minLength": 1
},
"source": {
"type": "object",
"required": [
"type",
"id"
],
"properties": {
"id": {
"type": "string",
"minLength": 1
},
"type": {
"enum": [
"starter",
"job"
],
"type": "string"
}
},
"additionalProperties": false
},
"matches": {
"type": "object",
"additionalProperties": {
"type": "object",
"properties": {
"steps": {
"type": "object",
"additionalProperties": {
"anyOf": [
{
"type": "string",
"minLength": 1
},
{
"type": "null"
}
]
}
},
"stage_id": {
"anyOf": [
{
"type": "string",
"minLength": 1
},
{
"type": "null"
}
]
}
},
"additionalProperties": false
}
},
"request_id": {
"type": "string",
"minLength": 1
},
"source_digest": {
"type": "string",
"pattern": "^[a-f0-9]{64}$"
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Copy automations into a job",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": false
}yardstick_built_in_agents_list — List built-in agents
List the built-in-agent catalog with each built-in agent's current status, explicit defaults or disabled state, and latest work summary.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"request_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "List built-in agents",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_built_in_agents_read — Read a built-in agent
Read one built-in agent by catalog id (for example scorecard-chaser, nightly-screening, or interview-kit-prep): what it does, what it never does without you, current status, and latest work summary.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"built_in_agent_id"
],
"properties": {
"request_id": {
"type": "string",
"minLength": 1
},
"built_in_agent_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Read a built-in agent",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_built_in_agents_runs — List built-in-agent run history
List the organization's built-in-agent run history as a flat work report. Nightly screening reports scheduled-work counts and held, released, or invalidated review outputs; interview-kit preparation reports the scheduled week and count-only results. It never includes candidate, draft, recipient, kit, or provider details. delivery_unknown is not delivered and is not retried. Filterable by built-in-agent id. Read-only and mode-scoped.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"request_id": {
"type": "string",
"minLength": 1
},
"built_in_agent_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "List built-in-agent run history",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_built_in_agents_enable_preview — Preview turning on a built-in agent (nothing changed yet)
Preview enabling a built-in agent; returns the approval-required envelope stating exactly what starts happening (and what is never sent without you) plus binding fields. Side-effect free.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"built_in_agent_id"
],
"properties": {
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
},
"built_in_agent_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Preview turning on a built-in agent (nothing changed yet)",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_built_in_agents_enable_bind — Confirm and turn on a built-in agent
Bind an approved built-in-agent enable preview with explicit approval metadata and a matching idempotency key. Writes the built-in agent's declared settings home and records one audit row.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"built_in_agent_id",
"binding"
],
"properties": {
"binding": {
"type": "object",
"required": [
"preview_hash",
"approved_action_key",
"approved_input_hash",
"approved_idempotency_key",
"resource_version_precondition"
],
"properties": {
"preview_hash": {
"type": "string",
"minLength": 1
},
"approved_action_key": {
"type": "string",
"minLength": 1
},
"approved_input_hash": {
"type": "string",
"minLength": 1
},
"approved_idempotency_key": {
"type": "string",
"minLength": 1
},
"resource_version_precondition": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
},
"built_in_agent_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Confirm and turn on a built-in agent",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_built_in_agents_configure_preview — Preview built-in-agent settings changes (nothing changed yet)
Preview configuring a built-in agent (config is validated against the built-in agent's declared schema; enabled is a first-class key, so { enabled: false } is the off switch). Side-effect free; pass config via --body-json.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"built_in_agent_id",
"config"
],
"properties": {
"config": {
"type": "object",
"additionalProperties": {}
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
},
"built_in_agent_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Preview built-in-agent settings changes (nothing changed yet)",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_built_in_agents_configure_bind — Confirm and save built-in-agent settings
Bind an approved built-in-agent configure preview (same config plus approval metadata and a matching idempotency key). Writes only the built-in agent's declared settings keys and records one audit row.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"built_in_agent_id",
"config",
"binding"
],
"properties": {
"config": {
"type": "object",
"additionalProperties": {}
},
"binding": {
"type": "object",
"required": [
"preview_hash",
"approved_action_key",
"approved_input_hash",
"approved_idempotency_key",
"resource_version_precondition"
],
"properties": {
"preview_hash": {
"type": "string",
"minLength": 1
},
"approved_action_key": {
"type": "string",
"minLength": 1
},
"approved_input_hash": {
"type": "string",
"minLength": 1
},
"approved_idempotency_key": {
"type": "string",
"minLength": 1
},
"resource_version_precondition": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
},
"built_in_agent_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Confirm and save built-in-agent settings",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_job_postings_list — List job postings
List job postings visible to the current principal.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"starting_after": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "List job postings",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_job_postings_read — Read a job posting
Read one job posting by public id.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"job_posting_id"
],
"properties": {
"request_id": {
"type": "string",
"minLength": 1
},
"job_posting_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Read a job posting",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_job_postings_validate — Check a draft job posting for problems
Validate a draft job posting without mutating it.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"job_posting_id"
],
"properties": {
"request_id": {
"type": "string",
"minLength": 1
},
"job_posting_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Check a draft job posting for problems",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_job_postings_create — Create a draft job posting
Create a draft job posting through the public Yardstick API.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"title",
"interview_plan_id",
"slug"
],
"properties": {
"slug": {
"type": "string",
"maxLength": 200,
"minLength": 1
},
"title": {
"type": "string",
"maxLength": 200,
"minLength": 1
},
"location": {
"type": "string",
"maxLength": 200
},
"department": {
"type": "string",
"maxLength": 200
},
"request_id": {
"type": "string",
"minLength": 1
},
"salary_max": {
"type": "integer",
"minimum": 0
},
"salary_min": {
"type": "integer",
"minimum": 0
},
"description": {
"type": "string",
"maxLength": 20000
},
"requirements": {
"type": "string",
"maxLength": 20000
},
"location_type": {
"enum": [
"remote",
"hybrid",
"onsite"
],
"type": "string"
},
"salary_display": {
"type": "boolean"
},
"idempotency_key": {
"type": "string",
"minLength": 1
},
"salary_currency": {
"type": "string",
"maxLength": 8,
"minLength": 3
},
"custom_questions": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"question",
"type",
"required"
],
"properties": {
"id": {
"type": "string",
"minLength": 1
},
"type": {
"enum": [
"text",
"textarea",
"single-select",
"yes-no"
],
"type": "string"
},
"options": {
"type": "array",
"items": {
"type": "string",
"maxLength": 200,
"minLength": 1
},
"maxItems": 50
},
"question": {
"type": "string",
"maxLength": 2000,
"minLength": 1
},
"required": {
"type": "boolean"
}
},
"additionalProperties": false
},
"maxItems": 50
},
"location_country": {
"type": "string",
"description": "Assigned ISO 3166-1 alpha-2 country code."
},
"interview_plan_id": {
"type": "string",
"pattern": "^ipd_[0-9A-Za-z]{16,64}$",
"description": "Published interview plan id (ipd_...) returned by `interview-plans publish` — not an interview-plan draft id. The plan must already be attached to a Job via `jobs attach-artifact`."
}
},
"additionalProperties": false
}{
"title": "Create a draft job posting",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": false
}yardstick_job_postings_update — Update a job posting
Update a job posting with schema-bound public API fields.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"job_posting_id"
],
"properties": {
"slug": {
"type": "string",
"maxLength": 200,
"minLength": 1
},
"title": {
"type": "string",
"maxLength": 200,
"minLength": 1
},
"location": {
"anyOf": [
{
"type": "string",
"maxLength": 200
},
{
"type": "null"
}
]
},
"department": {
"anyOf": [
{
"type": "string",
"maxLength": 200
},
{
"type": "null"
}
]
},
"request_id": {
"type": "string",
"minLength": 1
},
"salary_max": {
"anyOf": [
{
"type": "integer",
"minimum": 0
},
{
"type": "null"
}
]
},
"salary_min": {
"anyOf": [
{
"type": "integer",
"minimum": 0
},
{
"type": "null"
}
]
},
"description": {
"anyOf": [
{
"type": "string",
"maxLength": 20000
},
{
"type": "null"
}
]
},
"requirements": {
"anyOf": [
{
"type": "string",
"maxLength": 20000
},
{
"type": "null"
}
]
},
"location_type": {
"enum": [
"remote",
"hybrid",
"onsite"
],
"type": "string"
},
"job_posting_id": {
"type": "string",
"minLength": 1
},
"salary_display": {
"type": "boolean"
},
"idempotency_key": {
"type": "string",
"minLength": 1
},
"salary_currency": {
"type": "string",
"maxLength": 8,
"minLength": 3
},
"custom_questions": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"question",
"type",
"required"
],
"properties": {
"id": {
"type": "string",
"minLength": 1
},
"type": {
"enum": [
"text",
"textarea",
"single-select",
"yes-no"
],
"type": "string"
},
"options": {
"type": "array",
"items": {
"type": "string",
"maxLength": 200,
"minLength": 1
},
"maxItems": 50
},
"question": {
"type": "string",
"maxLength": 2000,
"minLength": 1
},
"required": {
"type": "boolean"
}
},
"additionalProperties": false
},
"maxItems": 50
},
"location_country": {
"anyOf": [
{
"type": "string",
"description": "Assigned ISO 3166-1 alpha-2 country code."
},
{
"type": "null"
}
],
"description": "Assigned ISO 3166-1 alpha-2 country code."
},
"interview_plan_id": {
"type": "string",
"pattern": "^ipd_[0-9A-Za-z]{16,64}$",
"description": "Published interview plan id (ipd_...) returned by `interview-plans publish` — not an interview-plan draft id. The plan must already be attached to a Job via `jobs attach-artifact`."
}
},
"additionalProperties": false
}{
"title": "Update a job posting",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_job_postings_publish_preview — Preview publishing a job posting (nothing changed yet)
Preview job-posting publish approval requirements only; bind fields are rejected.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"job_posting_id"
],
"properties": {
"request_id": {
"type": "string",
"minLength": 1
},
"job_posting_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Preview publishing a job posting (nothing changed yet)",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_job_postings_publish_bind — Confirm and publish a job posting
Bind an already-previewed job-posting publish with explicit approval metadata and matching idempotency key.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"job_posting_id",
"binding"
],
"properties": {
"binding": {
"type": "object",
"required": [
"preview_hash",
"approved_action_key",
"approved_input_hash",
"approved_idempotency_key",
"resource_version_precondition"
],
"properties": {
"preview_hash": {
"type": "string",
"minLength": 1
},
"approved_action_key": {
"type": "string",
"minLength": 1
},
"approved_input_hash": {
"type": "string",
"minLength": 1
},
"approved_idempotency_key": {
"type": "string",
"minLength": 1
},
"resource_version_precondition": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
},
"request_id": {
"type": "string",
"minLength": 1
},
"job_posting_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Confirm and publish a job posting",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_job_postings_archive_preview — Preview archiving a job posting (nothing changed yet)
Preview job-posting archive approval requirements only; bind fields are rejected.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"job_posting_id"
],
"properties": {
"request_id": {
"type": "string",
"minLength": 1
},
"job_posting_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Preview archiving a job posting (nothing changed yet)",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_job_postings_archive_bind — Confirm and archive a job posting
Bind an already-previewed job-posting archive with explicit approval metadata and matching idempotency key.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"job_posting_id",
"binding"
],
"properties": {
"binding": {
"type": "object",
"required": [
"preview_hash",
"approved_action_key",
"approved_input_hash",
"approved_idempotency_key",
"resource_version_precondition"
],
"properties": {
"preview_hash": {
"type": "string",
"minLength": 1
},
"approved_action_key": {
"type": "string",
"minLength": 1
},
"approved_input_hash": {
"type": "string",
"minLength": 1
},
"approved_idempotency_key": {
"type": "string",
"minLength": 1
},
"resource_version_precondition": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
},
"request_id": {
"type": "string",
"minLength": 1
},
"job_posting_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Confirm and archive a job posting",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_interview_plans_list — List published interview plans
List published interview plans, newest first. Optional job_id narrows the list to one job and takes a job_ public display id. Use this to find an interview plan id when you only hold a job id.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1
},
"job_id": {
"type": "string",
"minLength": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"starting_after": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "List published interview plans",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_interview_plans_read — Read a published interview plan
Read one interview plan by public id.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"interview_plan_id"
],
"properties": {
"request_id": {
"type": "string",
"minLength": 1
},
"interview_plan_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Read a published interview plan",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_interview_plans_archive — Archive an interview plan
Archive one interview plan. Already-archived plans succeed without a write. A plan still attached to a job is refused — detach it from the job first.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"interview_plan_id"
],
"properties": {
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
},
"interview_plan_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Archive an interview plan",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_interview_plans_unarchive — Restore an archived interview plan
Restore one archived interview plan. Plans that are already live succeed without a write. If the plan's job has since acquired another live plan, the restore is refused and names that plan.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"interview_plan_id"
],
"properties": {
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
},
"interview_plan_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Restore an archived interview plan",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_interview_plans_set_hiring_manager_decides — Set whether the hiring manager decides a step
Turn on or off whether a plan step waits on the hiring manager's decision before the candidate moves on. Only workflow managers on an open job can change it.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"interview_plan_id",
"step_id",
"hiring_manager_decides"
],
"properties": {
"step_id": {
"type": "string",
"maxLength": 200,
"minLength": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
},
"interview_plan_id": {
"type": "string",
"minLength": 1
},
"hiring_manager_decides": {
"type": "boolean"
}
},
"additionalProperties": false
}{
"title": "Set whether the hiring manager decides a step",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_interview_plan_drafts_generate_outcomes — Generate draft hiring outcomes
Generate draft interview-plan outcomes from explicit role context, or pass accepted_outcomes to store caller-written outcomes verbatim with no AI generation (the deterministic draft bootstrap).
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"action",
"input"
],
"properties": {
"input": {
"type": "object",
"required": [
"role_context"
],
"properties": {
"instructions": {
"type": "string",
"maxLength": 10000
},
"role_context": {
"type": "object",
"properties": {
"title": {
"type": "string",
"maxLength": 300
},
"role_title": {
"type": "string",
"maxLength": 300
},
"additional_context": {
"type": "string",
"maxLength": 20000
},
"organization_context": {
"type": "string",
"maxLength": 10000
}
},
"additionalProperties": false
},
"source_job_id": {
"type": "string"
},
"accepted_outcomes": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"maxLength": 128
},
"tag": {
"type": "string",
"maxLength": 128
},
"text": {
"type": "string",
"maxLength": 500,
"minLength": 1
},
"title": {
"type": "string",
"maxLength": 500,
"minLength": 1
},
"priority": {
"type": "string",
"maxLength": 128
},
"description": {
"type": "string",
"maxLength": 5000
}
},
"additionalProperties": false
},
"maxItems": 25,
"minItems": 1
}
},
"additionalProperties": false
},
"action": {
"type": "string",
"const": "interview_plan.generate_outcomes"
},
"resource": {
"type": "object",
"required": [
"type"
],
"properties": {
"id": {
"type": "string",
"pattern": "^ipd_[0-9A-Za-z]{16,64}$"
},
"type": {
"type": "string",
"const": "interview_plan_draft"
}
},
"additionalProperties": false
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Generate draft hiring outcomes",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": true
}yardstick_interview_plan_drafts_confirm_outcomes — Confirm draft hiring outcomes
Confirm draft interview-plan outcomes before generating later stages.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"action",
"resource",
"input"
],
"properties": {
"input": {
"type": "object",
"required": [
"accepted_outcomes"
],
"properties": {
"source_stage": {
"type": "object",
"required": [
"stage"
],
"properties": {
"stage": {
"enum": [
"role_context",
"outcomes",
"competencies",
"skills"
],
"type": "string"
},
"version": {
"type": "integer",
"minimum": 0
}
},
"additionalProperties": false
},
"revision_notes": {
"type": "string",
"maxLength": 10000
},
"accepted_outcomes": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"maxLength": 128
},
"tag": {
"type": "string",
"maxLength": 128
},
"text": {
"type": "string",
"maxLength": 500,
"minLength": 1
},
"title": {
"type": "string",
"maxLength": 500,
"minLength": 1
},
"priority": {
"type": "string",
"maxLength": 128
},
"description": {
"type": "string",
"maxLength": 5000
}
},
"additionalProperties": false
},
"maxItems": 25,
"minItems": 1
}
},
"additionalProperties": false
},
"action": {
"type": "string",
"const": "interview_plan.confirm_outcomes"
},
"resource": {
"type": "object",
"required": [
"type",
"id"
],
"properties": {
"id": {
"type": "string",
"pattern": "^ipd_[0-9A-Za-z]{16,64}$"
},
"type": {
"type": "string",
"const": "interview_plan_draft"
}
},
"additionalProperties": false
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Confirm draft hiring outcomes",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_interview_plan_drafts_generate_competencies — Generate draft competencies
Generate draft interview-plan competencies from confirmed outcomes.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"action",
"resource",
"input"
],
"properties": {
"input": {
"type": "object",
"properties": {
"outcome_ids": {
"type": "array",
"items": {
"type": "string",
"maxLength": 128
},
"maxItems": 50
},
"instructions": {
"type": "string",
"maxLength": 10000
},
"source_stage": {
"type": "object",
"required": [
"stage"
],
"properties": {
"stage": {
"type": "string",
"const": "outcomes"
},
"version": {
"type": "integer",
"minimum": 0
}
},
"additionalProperties": false
}
},
"additionalProperties": false
},
"action": {
"type": "string",
"const": "interview_plan.generate_competencies"
},
"resource": {
"type": "object",
"required": [
"type",
"id"
],
"properties": {
"id": {
"type": "string",
"pattern": "^ipd_[0-9A-Za-z]{16,64}$"
},
"type": {
"type": "string",
"const": "interview_plan_draft"
}
},
"additionalProperties": false
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Generate draft competencies",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": true
}yardstick_interview_plan_drafts_generate_skills — Generate draft job skills
Generate draft interview-plan skills from confirmed competencies.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"action",
"resource",
"input"
],
"properties": {
"input": {
"type": "object",
"properties": {
"instructions": {
"type": "string",
"maxLength": 10000
},
"source_stage": {
"type": "object",
"required": [
"stage"
],
"properties": {
"stage": {
"type": "string",
"const": "competencies"
},
"version": {
"type": "integer",
"minimum": 0
}
},
"additionalProperties": false
},
"accepted_skills": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"maxLength": 128
},
"name": {
"type": "string",
"maxLength": 300
},
"skill": {
"type": "string",
"maxLength": 300
},
"title": {
"type": "string",
"maxLength": 300
},
"details": {
"type": "string",
"maxLength": 5000
},
"category": {
"type": "string",
"maxLength": 128
},
"description": {
"type": "string",
"maxLength": 5000
},
"requirement": {
"type": "string",
"maxLength": 5000
}
},
"additionalProperties": false
},
"maxItems": 50,
"minItems": 1
}
},
"additionalProperties": false
},
"action": {
"type": "string",
"const": "interview_plan.generate_skills"
},
"resource": {
"type": "object",
"required": [
"type",
"id"
],
"properties": {
"id": {
"type": "string",
"pattern": "^ipd_[0-9A-Za-z]{16,64}$"
},
"type": {
"type": "string",
"const": "interview_plan_draft"
}
},
"additionalProperties": false
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Generate draft job skills",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": true
}yardstick_interview_plan_drafts_generate_rounds — Generate draft interview rounds
Generate draft interview-plan rounds from confirmed skills.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"action",
"resource",
"input"
],
"properties": {
"input": {
"type": "object",
"properties": {
"instructions": {
"type": "string",
"maxLength": 10000
},
"source_stage": {
"type": "object",
"required": [
"stage"
],
"properties": {
"stage": {
"type": "string",
"const": "skills"
},
"version": {
"type": "integer",
"minimum": 0
}
},
"additionalProperties": false
},
"accepted_rounds": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"maxLength": 128
},
"name": {
"type": "string",
"maxLength": 300
},
"round": {
"type": "string",
"maxLength": 300
},
"title": {
"type": "string",
"maxLength": 300
},
"purpose": {
"type": "string",
"maxLength": 5000
},
"duration": {
"type": "integer",
"maximum": 480,
"minimum": 0
},
"description": {
"type": "string",
"maxLength": 5000
},
"primaryFocus": {
"type": "string",
"maxLength": 500
},
"questionTypes": {
"type": "array",
"items": {
"type": "string",
"maxLength": 300
},
"maxItems": 50
},
"interviewerGuidance": {
"type": "string",
"maxLength": 5000
},
"recommendedQuestionCount": {
"type": "integer",
"maximum": 100,
"minimum": 0
}
},
"additionalProperties": false
},
"maxItems": 20,
"minItems": 1
}
},
"additionalProperties": false
},
"action": {
"type": "string",
"const": "interview_plan.generate_rounds"
},
"resource": {
"type": "object",
"required": [
"type",
"id"
],
"properties": {
"id": {
"type": "string",
"pattern": "^ipd_[0-9A-Za-z]{16,64}$"
},
"type": {
"type": "string",
"const": "interview_plan_draft"
}
},
"additionalProperties": false
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Generate draft interview rounds",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": true
}yardstick_interview_plan_drafts_generate_anchors — Generate draft scorecard anchors
Generate scorecard behavioral anchors (levels 1-4) for each draft competency, or one competency when competency_id is supplied.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"action",
"resource",
"input"
],
"properties": {
"input": {
"type": "object",
"properties": {
"instructions": {
"type": "string",
"maxLength": 10000
},
"source_stage": {
"type": "object",
"required": [
"stage"
],
"properties": {
"stage": {
"type": "string",
"const": "competencies"
},
"version": {
"type": "integer",
"minimum": 0
}
},
"additionalProperties": false
},
"competency_id": {
"type": "string",
"maxLength": 128
}
},
"additionalProperties": false
},
"action": {
"type": "string",
"const": "interview_plan.generate_anchors"
},
"resource": {
"type": "object",
"required": [
"type",
"id"
],
"properties": {
"id": {
"type": "string",
"pattern": "^ipd_[0-9A-Za-z]{16,64}$"
},
"type": {
"type": "string",
"const": "interview_plan_draft"
}
},
"additionalProperties": false
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Generate draft scorecard anchors",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": true
}yardstick_interview_plan_drafts_generate_questions_directions — Generate draft questions and interviewer directions
Generate interview questions and interviewer/candidate directions for each draft round, or one round when round_id is supplied.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"action",
"resource",
"input"
],
"properties": {
"input": {
"type": "object",
"properties": {
"round_id": {
"type": "string",
"maxLength": 128
},
"instructions": {
"type": "string",
"maxLength": 10000
},
"source_stage": {
"type": "object",
"required": [
"stage"
],
"properties": {
"stage": {
"type": "string",
"const": "interview_sequence"
},
"version": {
"type": "integer",
"minimum": 0
}
},
"additionalProperties": false
}
},
"additionalProperties": false
},
"action": {
"type": "string",
"const": "interview_plan.generate_questions_directions"
},
"resource": {
"type": "object",
"required": [
"type",
"id"
],
"properties": {
"id": {
"type": "string",
"pattern": "^ipd_[0-9A-Za-z]{16,64}$"
},
"type": {
"type": "string",
"const": "interview_plan_draft"
}
},
"additionalProperties": false
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Generate draft questions and interviewer directions",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": true
}yardstick_interview_plan_drafts_list — List interview plan drafts
List interview-plan drafts, newest first. Optional job_id narrows the list to one job and takes a job_ public display id. Use this to find an ipd_ draft id again after an interrupted builder session.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1
},
"job_id": {
"type": "string",
"minLength": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"starting_after": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "List interview plan drafts",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_interview_plan_drafts_read — Read an interview plan draft
Read one interview-plan draft in full: every stage checkpoint (outcomes, competencies, job skills, interview sequence, questions and directions), stage_versions for source_stage preconditions, status, and source metadata. Question ids are always present (question_N fallback), so edits can target them directly.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"draft_id"
],
"properties": {
"draft_id": {
"type": "string",
"minLength": 1
},
"request_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Read an interview plan draft",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_interview_plan_drafts_add_competencies — Add competencies to an interview plan draft
Add competencies to a draft exactly as written — deterministic, no AI generation. Requires confirmed outcomes; the resulting stage must stay within 25 competencies. Optional source_stage {stage: competencies, version} returns 409 when stale.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"action",
"resource",
"input"
],
"properties": {
"input": {
"type": "object",
"required": [
"items"
],
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"maxLength": 128
},
"name": {
"type": "string",
"maxLength": 300
},
"title": {
"type": "string",
"maxLength": 300
},
"details": {
"type": "string",
"maxLength": 5000
},
"competency": {
"type": "string",
"maxLength": 300
},
"definition": {
"type": "string",
"maxLength": 5000
},
"description": {
"type": "string",
"maxLength": 5000
}
},
"additionalProperties": false
},
"maxItems": 25,
"minItems": 1
},
"source_stage": {
"type": "object",
"required": [
"stage"
],
"properties": {
"stage": {
"type": "string",
"const": "competencies"
},
"version": {
"type": "integer",
"minimum": 0
}
},
"additionalProperties": false
}
},
"additionalProperties": false
},
"action": {
"type": "string",
"const": "interview_plan.add_competencies"
},
"resource": {
"type": "object",
"required": [
"type",
"id"
],
"properties": {
"id": {
"type": "string",
"pattern": "^ipd_[0-9A-Za-z]{16,64}$"
},
"type": {
"type": "string",
"const": "interview_plan_draft"
}
},
"additionalProperties": false
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Add competencies to an interview plan draft",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": false
}yardstick_interview_plan_drafts_update_competencies — Rewrite or reorder draft competencies
Replace draft competencies by id and/or reorder them with order (a complete permutation of resulting ids) — deterministic, no AI generation. Updating in place keeps the item id. Optional source_stage {stage: competencies, version} returns 409 when stale.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"action",
"resource",
"input"
],
"properties": {
"input": {
"type": "object",
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"maxLength": 128
},
"name": {
"type": "string",
"maxLength": 300
},
"title": {
"type": "string",
"maxLength": 300
},
"details": {
"type": "string",
"maxLength": 5000
},
"competency": {
"type": "string",
"maxLength": 300
},
"definition": {
"type": "string",
"maxLength": 5000
},
"description": {
"type": "string",
"maxLength": 5000
}
},
"additionalProperties": false
},
"maxItems": 25
},
"order": {
"type": "array",
"items": {
"type": "string",
"maxLength": 128,
"minLength": 1
},
"maxItems": 25,
"minItems": 1
},
"source_stage": {
"type": "object",
"required": [
"stage"
],
"properties": {
"stage": {
"type": "string",
"const": "competencies"
},
"version": {
"type": "integer",
"minimum": 0
}
},
"additionalProperties": false
}
},
"additionalProperties": false
},
"action": {
"type": "string",
"const": "interview_plan.update_competencies"
},
"resource": {
"type": "object",
"required": [
"type",
"id"
],
"properties": {
"id": {
"type": "string",
"pattern": "^ipd_[0-9A-Za-z]{16,64}$"
},
"type": {
"type": "string",
"const": "interview_plan_draft"
}
},
"additionalProperties": false
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Rewrite or reorder draft competencies",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_interview_plan_drafts_delete_competencies — Delete draft competencies
Delete draft competencies by id. Prunes each deleted competency's behavioral anchors in the same write and reports the pruned ids; the stage must keep at least one competency. Optional source_stage {stage: competencies, version} returns 409 when stale.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"action",
"resource",
"input"
],
"properties": {
"input": {
"type": "object",
"required": [
"ids"
],
"properties": {
"ids": {
"type": "array",
"items": {
"type": "string",
"maxLength": 128,
"minLength": 1
},
"maxItems": 25,
"minItems": 1
},
"source_stage": {
"type": "object",
"required": [
"stage"
],
"properties": {
"stage": {
"type": "string",
"const": "competencies"
},
"version": {
"type": "integer",
"minimum": 0
}
},
"additionalProperties": false
}
},
"additionalProperties": false
},
"action": {
"type": "string",
"const": "interview_plan.delete_competencies"
},
"resource": {
"type": "object",
"required": [
"type",
"id"
],
"properties": {
"id": {
"type": "string",
"pattern": "^ipd_[0-9A-Za-z]{16,64}$"
},
"type": {
"type": "string",
"const": "interview_plan_draft"
}
},
"additionalProperties": false
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Delete draft competencies",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_interview_plan_drafts_add_skills — Add job skills to an interview plan draft
Add job skills to a draft exactly as written — deterministic, no AI generation. Requires competencies; the resulting stage must stay within 50 skills. Optional source_stage {stage: skills, version} returns 409 when stale.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"action",
"resource",
"input"
],
"properties": {
"input": {
"type": "object",
"required": [
"items"
],
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"maxLength": 128
},
"name": {
"type": "string",
"maxLength": 300
},
"skill": {
"type": "string",
"maxLength": 300
},
"title": {
"type": "string",
"maxLength": 300
},
"details": {
"type": "string",
"maxLength": 5000
},
"category": {
"type": "string",
"maxLength": 128
},
"description": {
"type": "string",
"maxLength": 5000
},
"requirement": {
"type": "string",
"maxLength": 5000
}
},
"additionalProperties": false
},
"maxItems": 50,
"minItems": 1
},
"source_stage": {
"type": "object",
"required": [
"stage"
],
"properties": {
"stage": {
"type": "string",
"const": "skills"
},
"version": {
"type": "integer",
"minimum": 0
}
},
"additionalProperties": false
}
},
"additionalProperties": false
},
"action": {
"type": "string",
"const": "interview_plan.add_skills"
},
"resource": {
"type": "object",
"required": [
"type",
"id"
],
"properties": {
"id": {
"type": "string",
"pattern": "^ipd_[0-9A-Za-z]{16,64}$"
},
"type": {
"type": "string",
"const": "interview_plan_draft"
}
},
"additionalProperties": false
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Add job skills to an interview plan draft",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": false
}yardstick_interview_plan_drafts_update_skills — Rewrite or reorder draft job skills
Replace draft job skills by id and/or reorder them with order (a complete permutation of resulting ids) — deterministic, no AI generation. Optional source_stage {stage: skills, version} returns 409 when stale.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"action",
"resource",
"input"
],
"properties": {
"input": {
"type": "object",
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"maxLength": 128
},
"name": {
"type": "string",
"maxLength": 300
},
"skill": {
"type": "string",
"maxLength": 300
},
"title": {
"type": "string",
"maxLength": 300
},
"details": {
"type": "string",
"maxLength": 5000
},
"category": {
"type": "string",
"maxLength": 128
},
"description": {
"type": "string",
"maxLength": 5000
},
"requirement": {
"type": "string",
"maxLength": 5000
}
},
"additionalProperties": false
},
"maxItems": 50
},
"order": {
"type": "array",
"items": {
"type": "string",
"maxLength": 128,
"minLength": 1
},
"maxItems": 50,
"minItems": 1
},
"source_stage": {
"type": "object",
"required": [
"stage"
],
"properties": {
"stage": {
"type": "string",
"const": "skills"
},
"version": {
"type": "integer",
"minimum": 0
}
},
"additionalProperties": false
}
},
"additionalProperties": false
},
"action": {
"type": "string",
"const": "interview_plan.update_skills"
},
"resource": {
"type": "object",
"required": [
"type",
"id"
],
"properties": {
"id": {
"type": "string",
"pattern": "^ipd_[0-9A-Za-z]{16,64}$"
},
"type": {
"type": "string",
"const": "interview_plan_draft"
}
},
"additionalProperties": false
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Rewrite or reorder draft job skills",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_interview_plan_drafts_delete_skills — Delete draft job skills
Delete draft job skills by id; the stage must keep at least one skill. Optional source_stage {stage: skills, version} returns 409 when stale.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"action",
"resource",
"input"
],
"properties": {
"input": {
"type": "object",
"required": [
"ids"
],
"properties": {
"ids": {
"type": "array",
"items": {
"type": "string",
"maxLength": 128,
"minLength": 1
},
"maxItems": 50,
"minItems": 1
},
"source_stage": {
"type": "object",
"required": [
"stage"
],
"properties": {
"stage": {
"type": "string",
"const": "skills"
},
"version": {
"type": "integer",
"minimum": 0
}
},
"additionalProperties": false
}
},
"additionalProperties": false
},
"action": {
"type": "string",
"const": "interview_plan.delete_skills"
},
"resource": {
"type": "object",
"required": [
"type",
"id"
],
"properties": {
"id": {
"type": "string",
"pattern": "^ipd_[0-9A-Za-z]{16,64}$"
},
"type": {
"type": "string",
"const": "interview_plan_draft"
}
},
"additionalProperties": false
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Delete draft job skills",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_interview_plan_drafts_add_rounds — Add interview rounds to an interview plan draft
Add interview rounds to a draft exactly as written — deterministic, no AI generation. Requires skills; the resulting sequence must stay within 20 rounds. Optional source_stage {stage: interview_sequence, version} returns 409 when stale.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"action",
"resource",
"input"
],
"properties": {
"input": {
"type": "object",
"required": [
"items"
],
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"maxLength": 128
},
"name": {
"type": "string",
"maxLength": 300
},
"round": {
"type": "string",
"maxLength": 300
},
"title": {
"type": "string",
"maxLength": 300
},
"purpose": {
"type": "string",
"maxLength": 5000
},
"duration": {
"type": "integer",
"maximum": 480,
"minimum": 0
},
"description": {
"type": "string",
"maxLength": 5000
},
"primaryFocus": {
"type": "string",
"maxLength": 500
},
"questionTypes": {
"type": "array",
"items": {
"type": "string",
"maxLength": 300
},
"maxItems": 50
},
"interviewerGuidance": {
"type": "string",
"maxLength": 5000
},
"recommendedQuestionCount": {
"type": "integer",
"maximum": 100,
"minimum": 0
}
},
"additionalProperties": false
},
"maxItems": 20,
"minItems": 1
},
"source_stage": {
"type": "object",
"required": [
"stage"
],
"properties": {
"stage": {
"type": "string",
"const": "interview_sequence"
},
"version": {
"type": "integer",
"minimum": 0
}
},
"additionalProperties": false
}
},
"additionalProperties": false
},
"action": {
"type": "string",
"const": "interview_plan.add_rounds"
},
"resource": {
"type": "object",
"required": [
"type",
"id"
],
"properties": {
"id": {
"type": "string",
"pattern": "^ipd_[0-9A-Za-z]{16,64}$"
},
"type": {
"type": "string",
"const": "interview_plan_draft"
}
},
"additionalProperties": false
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Add interview rounds to an interview plan draft",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": false
}yardstick_interview_plan_drafts_update_rounds — Rewrite or reorder draft interview rounds
Replace draft interview rounds by id and/or reorder them with order (a complete permutation of resulting ids) — deterministic, no AI generation. A round updated in place keeps its id, so its questions and directions are preserved (not pruned). Optional source_stage {stage: interview_sequence, version} returns 409 when stale.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"action",
"resource",
"input"
],
"properties": {
"input": {
"type": "object",
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"maxLength": 128
},
"name": {
"type": "string",
"maxLength": 300
},
"round": {
"type": "string",
"maxLength": 300
},
"title": {
"type": "string",
"maxLength": 300
},
"purpose": {
"type": "string",
"maxLength": 5000
},
"duration": {
"type": "integer",
"maximum": 480,
"minimum": 0
},
"description": {
"type": "string",
"maxLength": 5000
},
"primaryFocus": {
"type": "string",
"maxLength": 500
},
"questionTypes": {
"type": "array",
"items": {
"type": "string",
"maxLength": 300
},
"maxItems": 50
},
"interviewerGuidance": {
"type": "string",
"maxLength": 5000
},
"recommendedQuestionCount": {
"type": "integer",
"maximum": 100,
"minimum": 0
}
},
"additionalProperties": false
},
"maxItems": 20
},
"order": {
"type": "array",
"items": {
"type": "string",
"maxLength": 128,
"minLength": 1
},
"maxItems": 20,
"minItems": 1
},
"source_stage": {
"type": "object",
"required": [
"stage"
],
"properties": {
"stage": {
"type": "string",
"const": "interview_sequence"
},
"version": {
"type": "integer",
"minimum": 0
}
},
"additionalProperties": false
}
},
"additionalProperties": false
},
"action": {
"type": "string",
"const": "interview_plan.update_rounds"
},
"resource": {
"type": "object",
"required": [
"type",
"id"
],
"properties": {
"id": {
"type": "string",
"pattern": "^ipd_[0-9A-Za-z]{16,64}$"
},
"type": {
"type": "string",
"const": "interview_plan_draft"
}
},
"additionalProperties": false
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Rewrite or reorder draft interview rounds",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_interview_plan_drafts_delete_rounds — Delete draft interview rounds
Delete draft interview rounds by id. Prunes each deleted round's questions and directions in the same write and reports the pruned ids; the sequence must keep at least one round. Optional source_stage {stage: interview_sequence, version} returns 409 when stale.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"action",
"resource",
"input"
],
"properties": {
"input": {
"type": "object",
"required": [
"ids"
],
"properties": {
"ids": {
"type": "array",
"items": {
"type": "string",
"maxLength": 128,
"minLength": 1
},
"maxItems": 20,
"minItems": 1
},
"source_stage": {
"type": "object",
"required": [
"stage"
],
"properties": {
"stage": {
"type": "string",
"const": "interview_sequence"
},
"version": {
"type": "integer",
"minimum": 0
}
},
"additionalProperties": false
}
},
"additionalProperties": false
},
"action": {
"type": "string",
"const": "interview_plan.delete_rounds"
},
"resource": {
"type": "object",
"required": [
"type",
"id"
],
"properties": {
"id": {
"type": "string",
"pattern": "^ipd_[0-9A-Za-z]{16,64}$"
},
"type": {
"type": "string",
"const": "interview_plan_draft"
}
},
"additionalProperties": false
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Delete draft interview rounds",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_interview_plan_drafts_add_questions — Add questions to a draft interview round
Add questions to one draft round exactly as written — deterministic, no AI generation. Requires rounds; each round holds at most 50 questions. The first question edit on a round persists question_N ids for every question in that round. Optional source_stage {stage: questions_and_directions, version} returns 409 when stale.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"action",
"resource",
"input"
],
"properties": {
"input": {
"type": "object",
"required": [
"round_id",
"questions"
],
"properties": {
"round_id": {
"type": "string",
"maxLength": 128,
"minLength": 1
},
"questions": {
"type": "array",
"items": {
"type": "object",
"required": [
"text"
],
"properties": {
"id": {
"type": "string",
"maxLength": 128
},
"tags": {
"type": "array",
"items": {
"type": "string",
"maxLength": 128
},
"maxItems": 20
},
"text": {
"type": "string",
"maxLength": 5000,
"minLength": 1
},
"guidance": {
"type": "string",
"maxLength": 10000
},
"followUpQuestions": {
"type": "array",
"items": {
"type": "string",
"maxLength": 2000
},
"maxItems": 20
}
},
"additionalProperties": false
},
"maxItems": 50,
"minItems": 1
},
"source_stage": {
"type": "object",
"required": [
"stage"
],
"properties": {
"stage": {
"type": "string",
"const": "questions_and_directions"
},
"version": {
"type": "integer",
"minimum": 0
}
},
"additionalProperties": false
}
},
"additionalProperties": false
},
"action": {
"type": "string",
"const": "interview_plan.add_questions"
},
"resource": {
"type": "object",
"required": [
"type",
"id"
],
"properties": {
"id": {
"type": "string",
"pattern": "^ipd_[0-9A-Za-z]{16,64}$"
},
"type": {
"type": "string",
"const": "interview_plan_draft"
}
},
"additionalProperties": false
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Add questions to a draft interview round",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": false
}yardstick_interview_plan_drafts_update_questions — Rewrite or reorder a draft round's questions
Replace one draft round's questions by id and/or reorder them with order (a complete permutation of that round's resulting question ids) — deterministic, no AI generation. Read the draft first: stored questions expose stable question_N ids. Optional source_stage {stage: questions_and_directions, version} returns 409 when stale.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"action",
"resource",
"input"
],
"properties": {
"input": {
"type": "object",
"required": [
"round_id"
],
"properties": {
"order": {
"type": "array",
"items": {
"type": "string",
"maxLength": 128,
"minLength": 1
},
"maxItems": 50,
"minItems": 1
},
"round_id": {
"type": "string",
"maxLength": 128,
"minLength": 1
},
"questions": {
"type": "array",
"items": {
"type": "object",
"required": [
"text"
],
"properties": {
"id": {
"type": "string",
"maxLength": 128
},
"tags": {
"type": "array",
"items": {
"type": "string",
"maxLength": 128
},
"maxItems": 20
},
"text": {
"type": "string",
"maxLength": 5000,
"minLength": 1
},
"guidance": {
"type": "string",
"maxLength": 10000
},
"followUpQuestions": {
"type": "array",
"items": {
"type": "string",
"maxLength": 2000
},
"maxItems": 20
}
},
"additionalProperties": false
},
"maxItems": 50
},
"source_stage": {
"type": "object",
"required": [
"stage"
],
"properties": {
"stage": {
"type": "string",
"const": "questions_and_directions"
},
"version": {
"type": "integer",
"minimum": 0
}
},
"additionalProperties": false
}
},
"additionalProperties": false
},
"action": {
"type": "string",
"const": "interview_plan.update_questions"
},
"resource": {
"type": "object",
"required": [
"type",
"id"
],
"properties": {
"id": {
"type": "string",
"pattern": "^ipd_[0-9A-Za-z]{16,64}$"
},
"type": {
"type": "string",
"const": "interview_plan_draft"
}
},
"additionalProperties": false
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Rewrite or reorder a draft round's questions",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_interview_plan_drafts_delete_questions — Delete questions from a draft interview round
Delete questions from one draft round by question id. Optional source_stage {stage: questions_and_directions, version} returns 409 when stale.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"action",
"resource",
"input"
],
"properties": {
"input": {
"type": "object",
"required": [
"round_id",
"ids"
],
"properties": {
"ids": {
"type": "array",
"items": {
"type": "string",
"maxLength": 128,
"minLength": 1
},
"maxItems": 50,
"minItems": 1
},
"round_id": {
"type": "string",
"maxLength": 128,
"minLength": 1
},
"source_stage": {
"type": "object",
"required": [
"stage"
],
"properties": {
"stage": {
"type": "string",
"const": "questions_and_directions"
},
"version": {
"type": "integer",
"minimum": 0
}
},
"additionalProperties": false
}
},
"additionalProperties": false
},
"action": {
"type": "string",
"const": "interview_plan.delete_questions"
},
"resource": {
"type": "object",
"required": [
"type",
"id"
],
"properties": {
"id": {
"type": "string",
"pattern": "^ipd_[0-9A-Za-z]{16,64}$"
},
"type": {
"type": "string",
"const": "interview_plan_draft"
}
},
"additionalProperties": false
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Delete questions from a draft interview round",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_interview_plan_drafts_update_round_directions — Set a draft round's interviewer and candidate directions
Set one draft round's interviewer and/or candidate directions exactly as written — deterministic, no AI generation. Provide at least one of the two direction fields. Optional source_stage {stage: questions_and_directions, version} returns 409 when stale.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"action",
"resource",
"input"
],
"properties": {
"input": {
"type": "object",
"required": [
"round_id"
],
"properties": {
"round_id": {
"type": "string",
"maxLength": 128,
"minLength": 1
},
"source_stage": {
"type": "object",
"required": [
"stage"
],
"properties": {
"stage": {
"type": "string",
"const": "questions_and_directions"
},
"version": {
"type": "integer",
"minimum": 0
}
},
"additionalProperties": false
},
"candidate_directions": {
"type": "string",
"maxLength": 20000
},
"interviewer_directions": {
"type": "string",
"maxLength": 20000
}
},
"additionalProperties": false
},
"action": {
"type": "string",
"const": "interview_plan.update_round_directions"
},
"resource": {
"type": "object",
"required": [
"type",
"id"
],
"properties": {
"id": {
"type": "string",
"pattern": "^ipd_[0-9A-Za-z]{16,64}$"
},
"type": {
"type": "string",
"const": "interview_plan_draft"
}
},
"additionalProperties": false
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Set a draft round's interviewer and candidate directions",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_interview_plan_drafts_update_anchors — Set draft scorecard anchors
Upsert behavioral anchors for draft items, keyed by item id with levels 1-4 — deterministic, no AI generation. Requires competencies; anchors keyed to unknown item ids are rejected by id. Optional source_stage {stage: questions_and_directions, version} returns 409 when stale.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"action",
"resource",
"input"
],
"properties": {
"input": {
"type": "object",
"required": [
"anchors"
],
"properties": {
"anchors": {
"type": "object",
"propertyNames": {
"maxLength": 128,
"minLength": 1
},
"additionalProperties": {
"type": "array",
"items": {
"type": "object",
"required": [
"level",
"description"
],
"properties": {
"level": {
"type": "integer",
"maximum": 4,
"minimum": 1
},
"description": {
"type": "string",
"maxLength": 5000,
"minLength": 1
}
},
"additionalProperties": false
},
"maxItems": 4,
"minItems": 1
}
},
"source_stage": {
"type": "object",
"required": [
"stage"
],
"properties": {
"stage": {
"type": "string",
"const": "questions_and_directions"
},
"version": {
"type": "integer",
"minimum": 0
}
},
"additionalProperties": false
}
},
"additionalProperties": false
},
"action": {
"type": "string",
"const": "interview_plan.update_anchors"
},
"resource": {
"type": "object",
"required": [
"type",
"id"
],
"properties": {
"id": {
"type": "string",
"pattern": "^ipd_[0-9A-Za-z]{16,64}$"
},
"type": {
"type": "string",
"const": "interview_plan_draft"
}
},
"additionalProperties": false
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Set draft scorecard anchors",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_interview_plan_drafts_delete_anchors — Delete draft scorecard anchors
Delete behavioral-anchor entries for draft items by item id. Optional source_stage {stage: questions_and_directions, version} returns 409 when stale.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"action",
"resource",
"input"
],
"properties": {
"input": {
"type": "object",
"required": [
"item_ids"
],
"properties": {
"item_ids": {
"type": "array",
"items": {
"type": "string",
"maxLength": 128,
"minLength": 1
},
"maxItems": 100,
"minItems": 1
},
"source_stage": {
"type": "object",
"required": [
"stage"
],
"properties": {
"stage": {
"type": "string",
"const": "questions_and_directions"
},
"version": {
"type": "integer",
"minimum": 0
}
},
"additionalProperties": false
}
},
"additionalProperties": false
},
"action": {
"type": "string",
"const": "interview_plan.delete_anchors"
},
"resource": {
"type": "object",
"required": [
"type",
"id"
],
"properties": {
"id": {
"type": "string",
"pattern": "^ipd_[0-9A-Za-z]{16,64}$"
},
"type": {
"type": "string",
"const": "interview_plan_draft"
}
},
"additionalProperties": false
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Delete draft scorecard anchors",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_interview_plan_drafts_clear_outcomes — Clear all draft outcomes, leaving the section empty
Clear every outcome from a draft, leaving the stage deliberately empty — deterministic, no AI generation. Outcomes have no item-level delete, and confirm_outcomes requires at least one outcome, so this is the only way to record that the section was addressed and left empty. The emptied draft cannot be published as a new plan; bind the emptying onto an already-live plan with modify_active. Optional source_stage {stage: outcomes, version} returns 409 when stale.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"action",
"resource",
"input"
],
"properties": {
"input": {
"type": "object",
"properties": {
"source_stage": {
"type": "object",
"required": [
"stage"
],
"properties": {
"stage": {
"type": "string",
"const": "outcomes"
},
"version": {
"type": "integer",
"minimum": 0
}
},
"additionalProperties": false
}
},
"additionalProperties": false
},
"action": {
"type": "string",
"const": "interview_plan.clear_outcomes"
},
"resource": {
"type": "object",
"required": [
"type",
"id"
],
"properties": {
"id": {
"type": "string",
"pattern": "^ipd_[0-9A-Za-z]{16,64}$"
},
"type": {
"type": "string",
"const": "interview_plan_draft"
}
},
"additionalProperties": false
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Clear all draft outcomes, leaving the section empty",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_interview_plan_drafts_clear_competencies — Clear all draft competencies, leaving the section empty
Clear every competency from a draft, leaving the stage deliberately empty — deterministic, no AI generation. Prunes the behavioral anchors of every cleared competency in the same write and reports the pruned ids. The emptied draft cannot be published as a new plan; bind the emptying onto an already-live plan with modify_active. Optional source_stage {stage: competencies, version} returns 409 when stale.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"action",
"resource",
"input"
],
"properties": {
"input": {
"type": "object",
"properties": {
"source_stage": {
"type": "object",
"required": [
"stage"
],
"properties": {
"stage": {
"type": "string",
"const": "competencies"
},
"version": {
"type": "integer",
"minimum": 0
}
},
"additionalProperties": false
}
},
"additionalProperties": false
},
"action": {
"type": "string",
"const": "interview_plan.clear_competencies"
},
"resource": {
"type": "object",
"required": [
"type",
"id"
],
"properties": {
"id": {
"type": "string",
"pattern": "^ipd_[0-9A-Za-z]{16,64}$"
},
"type": {
"type": "string",
"const": "interview_plan_draft"
}
},
"additionalProperties": false
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Clear all draft competencies, leaving the section empty",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_interview_plan_drafts_clear_job_skills — Clear all draft job skills, leaving the section empty
Clear every job skill from a draft, leaving the stage deliberately empty — deterministic, no AI generation. The item delete refuses to remove the last skill, so this is the only way to record that the section was addressed and left empty. The emptied draft cannot be published as a new plan; bind the emptying onto an already-live plan with modify_active. Optional source_stage {stage: skills, version} returns 409 when stale.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"action",
"resource",
"input"
],
"properties": {
"input": {
"type": "object",
"properties": {
"source_stage": {
"type": "object",
"required": [
"stage"
],
"properties": {
"stage": {
"type": "string",
"const": "skills"
},
"version": {
"type": "integer",
"minimum": 0
}
},
"additionalProperties": false
}
},
"additionalProperties": false
},
"action": {
"type": "string",
"const": "interview_plan.clear_job_skills"
},
"resource": {
"type": "object",
"required": [
"type",
"id"
],
"properties": {
"id": {
"type": "string",
"pattern": "^ipd_[0-9A-Za-z]{16,64}$"
},
"type": {
"type": "string",
"const": "interview_plan_draft"
}
},
"additionalProperties": false
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Clear all draft job skills, leaving the section empty",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_interview_plan_drafts_clear_interview_sequence — Clear all draft interview rounds, leaving the section empty
Clear every interview round from a draft, leaving the stage deliberately empty — deterministic, no AI generation. Prunes the questions and directions of every cleared round in the same write and reports the pruned round ids. The emptied draft cannot be published as a new plan; bind the emptying onto an already-live plan with modify_active. Optional source_stage {stage: interview_sequence, version} returns 409 when stale.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"action",
"resource",
"input"
],
"properties": {
"input": {
"type": "object",
"properties": {
"source_stage": {
"type": "object",
"required": [
"stage"
],
"properties": {
"stage": {
"type": "string",
"const": "interview_sequence"
},
"version": {
"type": "integer",
"minimum": 0
}
},
"additionalProperties": false
}
},
"additionalProperties": false
},
"action": {
"type": "string",
"const": "interview_plan.clear_interview_sequence"
},
"resource": {
"type": "object",
"required": [
"type",
"id"
],
"properties": {
"id": {
"type": "string",
"pattern": "^ipd_[0-9A-Za-z]{16,64}$"
},
"type": {
"type": "string",
"const": "interview_plan_draft"
}
},
"additionalProperties": false
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Clear all draft interview rounds, leaving the section empty",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_interview_plan_drafts_validate — Check an interview plan draft for problems
Validate an interview-plan draft without publishing it.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"action",
"resource",
"input"
],
"properties": {
"input": {
"type": "object",
"properties": {
"include_warnings": {
"type": "boolean"
}
},
"additionalProperties": false
},
"action": {
"type": "string",
"const": "interview_plan.validate_draft"
},
"resource": {
"type": "object",
"required": [
"type",
"id"
],
"properties": {
"id": {
"type": "string",
"pattern": "^ipd_[0-9A-Za-z]{16,64}$"
},
"type": {
"type": "string",
"const": "interview_plan_draft"
}
},
"additionalProperties": false
},
"request_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Check an interview plan draft for problems",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_interview_plans_publish_preview — Preview publishing an interview plan (nothing changed yet)
Preview interview-plan publish approval requirements only; bind fields are rejected.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"action",
"input"
],
"properties": {
"input": {
"type": "object",
"required": [
"draft_id"
],
"properties": {
"draft_id": {
"type": "string",
"pattern": "^ipd_[0-9A-Za-z]{16,64}$"
},
"approval_id": {
"type": "string",
"maxLength": 128
},
"expected_draft_version": {
"type": "integer",
"minimum": 0
}
},
"additionalProperties": false
},
"action": {
"type": "string",
"const": "interview_plan.publish"
},
"resource": {
"type": "object",
"required": [
"type"
],
"properties": {
"id": {
"type": "string",
"minLength": 1
},
"type": {
"type": "string",
"const": "interview_plan"
}
},
"additionalProperties": false
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Preview publishing an interview plan (nothing changed yet)",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_interview_plans_publish_bind — Confirm and publish an interview plan
Bind an already-previewed interview-plan publish with explicit approval metadata and matching idempotency key.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"action",
"input",
"binding"
],
"properties": {
"input": {
"type": "object",
"required": [
"draft_id"
],
"properties": {
"draft_id": {
"type": "string",
"pattern": "^ipd_[0-9A-Za-z]{16,64}$"
},
"approval_id": {
"type": "string",
"maxLength": 128
},
"expected_draft_version": {
"type": "integer",
"minimum": 0
}
},
"additionalProperties": false
},
"action": {
"type": "string",
"const": "interview_plan.publish"
},
"binding": {
"type": "object",
"required": [
"preview_hash",
"approved_action_key",
"approved_input_hash",
"approved_idempotency_key",
"resource_version_precondition"
],
"properties": {
"preview_hash": {
"type": "string",
"minLength": 1
},
"approved_action_key": {
"type": "string",
"minLength": 1
},
"approved_input_hash": {
"type": "string",
"minLength": 1
},
"approved_idempotency_key": {
"type": "string",
"minLength": 1
},
"resource_version_precondition": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
},
"resource": {
"type": "object",
"required": [
"type"
],
"properties": {
"id": {
"type": "string",
"minLength": 1
},
"type": {
"type": "string",
"const": "interview_plan"
}
},
"additionalProperties": false
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Confirm and publish an interview plan",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_interview_plans_modify_active_preview — Preview editing a live interview plan (nothing changed yet)
Preview interview-plan active-modification approval requirements only; bind fields are rejected.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"action",
"input"
],
"properties": {
"input": {
"type": "object",
"required": [
"draft_id",
"active_plan_id"
],
"properties": {
"draft_id": {
"type": "string",
"pattern": "^ipd_[0-9A-Za-z]{16,64}$"
},
"approval_id": {
"type": "string",
"maxLength": 128
},
"active_plan_id": {
"type": "string",
"pattern": "^ipd_[0-9A-Za-z]{16,64}$"
},
"expected_plan_version": {
"type": "integer",
"minimum": 0
},
"expected_draft_version": {
"type": "integer",
"minimum": 0
}
},
"additionalProperties": false
},
"action": {
"type": "string",
"const": "interview_plan.modify_active"
},
"resource": {
"type": "object",
"required": [
"type"
],
"properties": {
"id": {
"type": "string",
"pattern": "^ipd_[0-9A-Za-z]{16,64}$"
},
"type": {
"type": "string",
"const": "interview_plan"
}
},
"additionalProperties": false
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Preview editing a live interview plan (nothing changed yet)",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_interview_plans_modify_active_bind — Confirm and edit a live interview plan
Bind an already-previewed interview-plan active modification with explicit approval metadata and matching idempotency key.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"action",
"input",
"binding"
],
"properties": {
"input": {
"type": "object",
"required": [
"draft_id",
"active_plan_id"
],
"properties": {
"draft_id": {
"type": "string",
"pattern": "^ipd_[0-9A-Za-z]{16,64}$"
},
"approval_id": {
"type": "string",
"maxLength": 128
},
"active_plan_id": {
"type": "string",
"pattern": "^ipd_[0-9A-Za-z]{16,64}$"
},
"expected_plan_version": {
"type": "integer",
"minimum": 0
},
"expected_draft_version": {
"type": "integer",
"minimum": 0
}
},
"additionalProperties": false
},
"action": {
"type": "string",
"const": "interview_plan.modify_active"
},
"binding": {
"type": "object",
"required": [
"preview_hash",
"approved_action_key",
"approved_input_hash",
"approved_idempotency_key",
"resource_version_precondition"
],
"properties": {
"preview_hash": {
"type": "string",
"minLength": 1
},
"approved_action_key": {
"type": "string",
"minLength": 1
},
"approved_input_hash": {
"type": "string",
"minLength": 1
},
"approved_idempotency_key": {
"type": "string",
"minLength": 1
},
"resource_version_precondition": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
},
"resource": {
"type": "object",
"required": [
"type"
],
"properties": {
"id": {
"type": "string",
"pattern": "^ipd_[0-9A-Za-z]{16,64}$"
},
"type": {
"type": "string",
"const": "interview_plan"
}
},
"additionalProperties": false
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Confirm and edit a live interview plan",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_interview_sessions_read — Read an interview
Read one interview session by public id.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"interview_session_id"
],
"properties": {
"request_id": {
"type": "string",
"minLength": 1
},
"interview_session_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Read an interview",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_interview_sessions_interviewers_list — List interviewers on an interview
List interviewers assigned to an interview session.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"interview_session_id"
],
"properties": {
"request_id": {
"type": "string",
"minLength": 1
},
"interview_session_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "List interviewers on an interview",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_interview_sessions_available_interviewers_list — List members assignable as interviewers
List organization members who can be assigned as interviewers, newest membership first. Use this to pick a usr_ public display id before assigning an interviewer.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"starting_after": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "List members assignable as interviewers",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_interview_sessions_interviewers_assign — Assign an interviewer to an interview
Assign an interviewer to an interview session. Email notification is attempted by default; set notify_interviewer to false to opt out. The response reports the safe interviewer_email outcome.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"interview_session_id",
"interviewer_user_id"
],
"properties": {
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
},
"notify_interviewer": {
"type": "boolean"
},
"interviewer_user_id": {
"type": "string"
},
"interview_session_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Assign an interviewer to an interview",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_interview_sessions_interviewers_unassign — Remove an interviewer from an interview
Unassign an interviewer from an interview session.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"interview_session_id",
"interviewer_user_id"
],
"properties": {
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
},
"interviewer_user_id": {
"type": "string"
},
"interview_session_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Remove an interviewer from an interview",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_interview_sessions_start — Start an interview
Start an interview session for an explicit interviewer.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"interview_session_id",
"interviewer_user_id"
],
"properties": {
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
},
"interviewer_user_id": {
"type": "string"
},
"interview_session_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Start an interview",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_interview_sessions_complete — Complete an interview
Complete an interview session for an explicit interviewer.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"interview_session_id",
"interviewer_user_id"
],
"properties": {
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
},
"interviewer_user_id": {
"type": "string"
},
"interview_session_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Complete an interview",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_interview_sessions_feedback_read — Read your interview feedback
Read your assigned interview questions, scorecard ratings and question notes.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"interview_session_id"
],
"properties": {
"request_id": {
"type": "string",
"minLength": 1
},
"interview_session_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Read your interview feedback",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_interview_sessions_scorecard_remove_rating — Remove your scorecard entry
Remove one of your own scorecard entries without changing other feedback.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"interview_session_id",
"item_type",
"item_id"
],
"properties": {
"item_id": {
"type": "string",
"maxLength": 200,
"minLength": 1
},
"item_type": {
"enum": [
"outcome",
"competency",
"skill",
"recommendation"
],
"type": "string"
},
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
},
"interview_session_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Remove your scorecard entry",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_interview_sessions_question_notes_save — Save your question note
Save your note for an existing interview question, including completed interviews.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"interview_session_id",
"question_id",
"notes"
],
"properties": {
"notes": {
"type": "string",
"maxLength": 8000
},
"request_id": {
"type": "string",
"minLength": 1
},
"question_id": {
"type": "string",
"maxLength": 200,
"minLength": 1
},
"follow_up_used": {
"type": "array",
"items": {
"type": "string",
"maxLength": 2000
},
"maxItems": 20
},
"idempotency_key": {
"type": "string",
"minLength": 1
},
"interview_session_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Save your question note",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_interview_sessions_scorecard_submit — Submit an interview scorecard
Submit an interview-session scorecard with explicit ratings.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"interview_session_id",
"interviewer_user_id",
"ratings"
],
"properties": {
"ratings": {
"type": "array",
"items": {
"type": "object",
"required": [
"item_type",
"item_id",
"item_title",
"rating"
],
"properties": {
"notes": {
"type": "string"
},
"rating": {
"type": "integer",
"maximum": 4,
"minimum": 0
},
"item_id": {
"type": "string",
"minLength": 1
},
"item_type": {
"enum": [
"outcome",
"competency",
"skill",
"recommendation"
],
"type": "string"
},
"item_title": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
},
"minItems": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"overall_notes": {
"type": "string",
"maxLength": 8000
},
"idempotency_key": {
"type": "string",
"minLength": 1
},
"interviewer_user_id": {
"type": "string"
},
"interview_session_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Submit an interview scorecard",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_interview_sessions_readiness — Check interview scheduling readiness
Read interview-session scheduling readiness.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"interview_session_id"
],
"properties": {
"request_id": {
"type": "string",
"minLength": 1
},
"interview_session_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Check interview scheduling readiness",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_interview_sessions_scheduling_link_generate — Generate a candidate scheduling link
Generate a scheduling link for an interview session.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"interview_session_id"
],
"properties": {
"request_id": {
"type": "string",
"minLength": 1
},
"idempotency_key": {
"type": "string",
"minLength": 1
},
"interview_session_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Generate a candidate scheduling link",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": true
}yardstick_interview_sessions_cancel — Cancel a scheduled interview
Cancel a scheduled interview session, releasing the provider booking and invalidating its scheduling links.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"interview_session_id"
],
"properties": {
"reason": {
"type": "string",
"maxLength": 500,
"minLength": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"skip_provider": {
"type": "boolean"
},
"idempotency_key": {
"type": "string",
"minLength": 1
},
"interview_session_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "Cancel a scheduled interview",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}yardstick_events_list — List API events
List public Yardstick API events visible to the current principal.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"starting_after": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "List API events",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yardstick_audit_log_list — List audit log entries
List public Yardstick audit log entries visible to the current principal.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1
},
"request_id": {
"type": "string",
"minLength": 1
},
"starting_after": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"title": "List audit log entries",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}Prompts
Not advertised
Resources
Not advertised
30-day availability
Aggregated from read-only remote checks; this is not a tool-execution or security guarantee.
- Successful checks
- 1 of 1 (100%)
- Average latency
- 1085 ms
- 95th percentile latency
- 1085 ms
Maintenance history
Public check and source-refresh events. Editorial and ownership records remain private.
- · probe · passed · 1085 ms · metadata changed · 275 tool(s)
Connect from your client
Each snippet registers the same endpoint; pick the client you use.
Claude Code
claude mcp add --transport http yardstick-mcp https://api.yardstick.team/mcpCodex
codex mcp add yardstick-mcp --url https://api.yardstick.team/mcpCursor
{
"mcpServers": {
"yardstick-mcp": {
"url": "https://api.yardstick.team/mcp"
}
}
}Cline
{
"mcpServers": {
"yardstick-mcp": {
"type": "streamableHttp",
"url": "https://api.yardstick.team/mcp",
"disabled": false
}
}
}VS Code
{
"servers": {
"yardstick-mcp": {
"type": "http",
"url": "https://api.yardstick.team/mcp"
}
}
}Gemini CLI
gemini mcp add --transport http yardstick-mcp https://api.yardstick.team/mcpClaude Desktop
https://api.yardstick.team/mcpWindsurf
{
"mcpServers": {
"yardstick-mcp": {
"serverUrl": "https://api.yardstick.team/mcp"
}
}
}Let your agent find its tools
Find servers like Yardstick MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.
Other crm, sales, and marketing servers
Do you run Yardstick MCP?
Prove ownership with a DNS record, a well-known file, or your Official MCP Registry entry, and your edits publish immediately. Proofs are re-checked weekly; admins can still hide or remove a listing.