---
name: "hiring_invite_to_interview"
area: "hiring"
title: "Invite to an interview"
price: "$0.05"
method: "POST"
url: "https://api.conecto.chat/v1/tools/hiring_invite_to_interview"
mcp_server: "https://api.conecto.chat/mcp/hiring"
auth: "Authorization: Bearer <conecto_sk_ key>"
docs_url: "https://conecto.chat/tools/hiring/hiring_invite_to_interview"
---

# Invite to an interview (`hiring_invite_to_interview`)

Emails an applicant a link to book an interview on one of the calendar's meeting types, and can move them to a stage.

Email an applicant a link to book an interview on one of your calendar's meeting types (calendar area), in the business's name. When they book, it shows in their history. Optionally move them to a stage such as Interview.

Price: $0.05 a call. A call that fails costs nothing.

## Use it when

A candidate should book an interview.

## Say this to your agent

> Invite Maria to book a workshop interview, and move her to Interview.

## Inputs

| Name | Type | Required | Description | Allowed values | Default |
|---|---|---|---|---|---|
| `applicant_id` | integer | yes | At least 1. |  |  |
| `meeting_type` | string | yes | The meeting type's slug from calendar_list_meeting_types. 1 to 60 characters. |  |  |
| `message` | string | no | Your own words; a short invitation when left out. Up to 5,000 characters. |  |  |
| `move_to` | string | no | Up to 60 characters. |  |  |

## Example

Written for Halverson Cycle & Repair, a bike shop with a repair workshop in Portland, Oregon.

MCP: call `hiring_invite_to_interview` on the MCP server `https://api.conecto.chat/mcp/hiring` with these arguments:

```json
{
  "applicant_id": 4101,
  "meeting_type": "workshop-interview",
  "move_to": "Interview"
}
```

REST:

```bash
curl https://api.conecto.chat/v1/tools/hiring_invite_to_interview \
  -H "Authorization: Bearer $CONECTO_KEY" \
  -H "Content-Type: application/json" \
  -d '{"applicant_id": 4101, "meeting_type": "workshop-interview", "move_to": "Interview"}'
```

## Response

```json
{
  "call_id": "5f0c8a2e-3b7d-4c1e-9a64-2d8e1f7b0c93",
  "tool": "hiring_invite_to_interview",
  "status": "succeeded",
  "replayed": false,
  "cost_usd": "$0.05",
  "balance_usd": "$19.75",
  "result": {
    "sent_to": "maria.santos@example.com",
    "booking_url": "https://cncto.co/book/halverson-cycle/workshop-interview",
    "applicant": {
      "applicant_id": 4101,
      "job": "bike-mechanic",
      "name": "Maria Santos",
      "email": "maria.santos@example.com",
      "phone": "+1 503 555 0130",
      "stage": "Interview",
      "rating": null,
      "source": "careers",
      "applied_at": "2026-10-14T08:00:00+00:00",
      "updated_at": "2026-10-14T08:00:00+00:00",
      "has_resume": true,
      "flags": [],
      "screened": null,
      "stage_since": "2026-10-14T08:00:00+00:00",
      "stages_reached": [
        "Applied",
        "Interview"
      ],
      "assessments": [],
      "interview": {
        "meeting_type": "workshop-interview",
        "title": "Workshop interview",
        "invited_at": "2026-10-14T08:00:00+00:00",
        "status": "invited",
        "start": null
      },
      "next_step": {
        "step": "book_interview",
        "label": "Invited to book",
        "waiting_on": "candidate",
        "at": "2026-10-17T08:00:00+00:00",
        "overdue": false,
        "about": "Workshop interview"
      },
      "match_score": null,
      "screening_summary": null,
      "passed_filter_at": null,
      "risk": "high",
      "signals": {
        "risk": "high",
        "high": [
          {
            "code": "shared_phone",
            "applicant_ids": [
              2
            ],
            "text": "The same phone number is on 1 other application under another email address."
          }
        ],
        "minor": [],
        "authentic": [
          {
            "code": "name_in_email",
            "text": "Their name is in their email address."
          }
        ],
        "checked_at": "2026-10-14T08:00:00+00:00"
      },
      "spam": false,
      "links": [],
      "cover_letter": "I have worked in bike shops for six years, the last two also building wheels for a cyclocross team.",
      "answers": [
        {
          "question": "How many years have you worked as a bike mechanic?",
          "answer": 6
        },
        {
          "question": "Can you lift 50 lb?",
          "answer": true
        }
      ],
      "screening": null,
      "notes": [],
      "history": [
        {
          "at": "2026-10-14T08:00:00+00:00",
          "change": "Applied"
        },
        {
          "at": "2026-10-14T08:00:00+00:00",
          "change": "Invited to book Workshop interview",
          "by": "Pip"
        }
      ],
      "interview_invite": {
        "meeting_type": "workshop-interview",
        "sent_at": "2026-10-14T08:00:00+00:00"
      },
      "resume": {
        "file_id": "cb762e55-3052-4bc4-917e-d823dd88b1a1",
        "name": "Résumé Maria Santos.pdf",
        "content_type": "application/pdf",
        "size": "1.1 KB",
        "size_bytes": 1153,
        "sha256": "6b65acac1ceea7ed3492428300b2b14437c63d6d3c622e96f0d76366e03b0fb9",
        "created_at": "2026-10-14T08:00:00+00:00",
        "download_url": "https://cncto.co/d/cb762e55-3052-4bc4-917e-d823dd88b1a1?t=eyJmIjoiY2I3NjJlNTUtMzA1Mi00YmM0LTkxN2UtZDgyM2RkODhiMWExIiwiZXhwIjoxNzkyNTAyMjA4fQ:1xInEO:RsGKYG8tWzYP-vPvoYvjzLdQG1bxtPfRIGd0txtF_7U",
        "link_expires_in_hours": 24
      }
    }
  }
}
```

`result`: sent_to, the booking_url sent, and the applicant as they now are.

## Errors

| Code | Status | When | Fix |
|---|---|---|---|
| `not_found` | 404 | No applicant of the business has that applicant_id. | Find them with hiring_list_applicants. |
| `payment_required` | 402 | The application came in while the balance could not pay its fee, so it is held. | Top up; the application opens once its fee is paid. |
| `invalid_input` | 400 | The stage is not one of the job's stages. | Use a stage the message lists. |
| `send_failed` | 502 | The email could not be sent; nothing was charged. | Call again in a moment. |
| `not_found` | 404 | No meeting type has that slug. | Use one from calendar_list_meeting_types. |
| `not_bookable` | 409 | The meeting type is not taking bookings. | Switch it on with calendar_save_meeting_type. |

The refusals every tool can give (401 key, 402 balance, 429 limits) are on the errors page: https://conecto.chat/docs/errors.md

## Related

- [hiring_setup_careers](https://conecto.chat/tools/hiring/hiring_setup_careers.md): Sets up the careers page at cncto.co/j/<name>: its name, intro, website, reply-to address and who hears about applications. $0.001 a call.
- [hiring_design_careers](https://conecto.chat/tools/hiring/hiring_design_careers.md): Gives the careers and job pages the business's own look: colours, a font, corners, a cover, a headline and its own CSS. $0.001 a call.
- [hiring_create_job](https://conecto.chat/tools/hiring/hiring_create_job.md): Posts a job with its own page and application form on the careers page. $0.01 a call.
- [hiring_update_job](https://conecto.chat/tools/hiring/hiring_update_job.md): Changes a job's details, its criteria and filter, or opens or closes it. $0.01 a call.
- [hiring_list_jobs](https://conecto.chat/tools/hiring/hiring_list_jobs.md): The business's jobs with their status, page and applicants per stage. Free up to 1,000,000 reads a month.
- [hiring_list_applicants](https://conecto.chat/tools/hiring/hiring_list_applicants.md): Applicants, newest or best match first: for one job or all, by stage, screening, risk, name or email, or the ones kept as spam. Free up to 1,000,000 reads a month.
- [hiring_get_applicant](https://conecto.chat/tools/hiring/hiring_get_applicant.md): One application in full: answers, résumé link, screening and match score, the checks on who sent it, notes and history. Free up to 1,000,000 reads a month.
- [hiring_screen_queue](https://conecto.chat/tools/hiring/hiring_screen_queue.md): The next applications nobody has screened, with the job's criteria and the résumé as text, blind by default. Free up to 1,000,000 reads a month.
- [hiring_record_screening](https://conecto.chat/tools/hiring/hiring_record_screening.md): Saves a review of one application: strong, partial or weak, a summary, and each criterion with its evidence. $0.01 a call.
- [hiring_mark_spam](https://conecto.chat/tools/hiring/hiring_mark_spam.md): Moves one application to spam or back, and can block the network and email domain it came from. $0.001 a call.
- [hiring_get_blocklist](https://conecto.chat/tools/hiring/hiring_get_blocklist.md): The networks and email domains whose applications are kept as spam. Free up to 1,000,000 reads a month.
- [hiring_update_blocklist](https://conecto.chat/tools/hiring/hiring_update_blocklist.md): Blocks or unblocks networks and email domains; what comes from them is kept as spam, with no fee and no emails. $0.001 a call.
- [hiring_move_applicant](https://conecto.chat/tools/hiring/hiring_move_applicant.md): Moves an applicant to another stage of their job, with a note; the candidate is not told. $0.01 a call.
- [hiring_hire_applicant](https://conecto.chat/tools/hiring/hiring_hire_applicant.md): Hires an applicant in one call: Hired in hiring, a person in HR with their résumé on file, and their onboarding checklist started. $0.25 a call.
- [hiring_note](https://conecto.chat/tools/hiring/hiring_note.md): Adds a note to an applicant, rates them 1 to 5, or both. $0.01 a call.
- [hiring_email_applicant](https://conecto.chat/tools/hiring/hiring_email_applicant.md): Emails an applicant in the business's name; replies go to the careers page's reply-to address. $0.02 a call.
- [hiring_save_assessment](https://conecto.chat/tools/hiring/hiring_save_assessment.md): Writes a skills test or changes one: questions scored on their own, written answers to mark, a time limit and shuffling. $0.01 a call.
- [hiring_list_assessments](https://conecto.chat/tools/hiring/hiring_list_assessments.md): The business's skills tests: title, questions, time limit, and how many were sent and completed. Free up to 1,000,000 reads a month.
- [hiring_send_assessment](https://conecto.chat/tools/hiring/hiring_send_assessment.md): Emails an applicant their own link to a skills test. $0.02 a call.
- [hiring_assessment_results](https://conecto.chat/tools/hiring/hiring_assessment_results.md): An applicant's tests: status, score, each answer against the expected one, answers to mark, time taken and how often they left the page. Free up to 1,000,000 reads a month.
- [hiring_mark_assessment](https://conecto.chat/tools/hiring/hiring_mark_assessment.md): Gives points to the written answers of a completed test. $0.01 a call.
- [hiring_delete_assessment](https://conecto.chat/tools/hiring/hiring_delete_assessment.md): Deletes a skills test with every candidate's answers to it. Free.
- [hiring_delete_applicant](https://conecto.chat/tools/hiring/hiring_delete_applicant.md): Deletes an applicant and their résumé for good. Free.
- [hiring_dashboard_link](https://conecto.chat/tools/hiring/hiring_dashboard_link.md): A one-time link to hiring at a glance: each applicant's stage and next step, the tests and interviews waiting, and the open jobs. Free up to 1,000,000 reads a month.
