Skip to main content
curl -X DELETE "https://backend.jobhive.ai/v1/interviews/int_abc123def456" \
  -H "Authorization: Bearer YOUR_API_KEY"
{
  "success": true,
  "data": {
    "id": "int_abc123def456",
    "status": "cancelled",
    "cancelled_at": "2024-01-15T14:45:00Z",
    "cancellation_reason": "Position has been filled",
    "refund_details": {
      "credits_refunded": 1,
      "refund_reason": "Interview cancelled before start time"
    },
    "notification_sent": true
  },
  "meta": {
    "timestamp": "2024-01-15T14:45:00Z",
    "request_id": "req_cancel_int_001"
  }
}
Cancels a scheduled interview or terminates an in-progress interview. This action is irreversible and will immediately notify the candidate if the interview hasn’t started yet.
Canceling an interview is permanent. Consider using the update endpoint to reschedule instead.

Path Parameters

id
string
required
Unique interview identifier (e.g., int_abc123def456)

Query Parameters

reason
string
Reason for cancellation to include in candidate notification
send_notification
boolean
default:"true"
Whether to send cancellation notification to candidate
refund_credits
boolean
default:"true"
Whether to refund credits for unused interview (scheduled interviews only)

Response

id
string
Unique interview identifier
status
string
Updated interview status: cancelled
cancelled_at
string
ISO 8601 timestamp when interview was cancelled
cancellation_reason
string
Reason provided for cancellation
refund_details
object
Credit refund information (if applicable)
notification_sent
boolean
Whether cancellation notification was sent to candidate

Cancellation Rules

Different rules apply based on interview status:
StatusCancellation AllowedCredit RefundCandidate Notification
scheduled✅ Yes✅ Full refund✅ Auto-sent
in_progress✅ Yes❌ No refund❌ Not applicable
completed❌ Not allowed❌ Not applicable❌ Not applicable
cancelled❌ Already cancelled❌ Not applicable❌ Not applicable

Examples

curl -X DELETE "https://backend.jobhive.ai/v1/interviews/int_abc123def456" \
  -H "Authorization: Bearer YOUR_API_KEY"
{
  "success": true,
  "data": {
    "id": "int_abc123def456",
    "status": "cancelled",
    "cancelled_at": "2024-01-15T14:45:00Z",
    "cancellation_reason": "Position has been filled",
    "refund_details": {
      "credits_refunded": 1,
      "refund_reason": "Interview cancelled before start time"
    },
    "notification_sent": true
  },
  "meta": {
    "timestamp": "2024-01-15T14:45:00Z",
    "request_id": "req_cancel_int_001"
  }
}

Error Responses

{
  "success": false,
  "error": {
    "code": "INTERVIEW_NOT_FOUND",
    "message": "Interview with ID 'int_invalid123' not found"
  }
}

Webhook Events

Cancelling an interview triggers the following webhook events:
  • interview.cancelled - Sent when interview is successfully cancelled
  • candidate.notified - Sent when cancellation notification is delivered (if applicable)
  • credits.refunded - Sent when credits are refunded to account (if applicable)
Candidates will receive an email notification about the cancellation unless send_notification=false is specified. The notification includes the cancellation reason if provided.
Consider using the Update Interview endpoint to reschedule instead of cancelling, which preserves the interview history and avoids notification churn.