---
title: "Update interview template by id."
method: PUT
path: "/interview/templates/{id}"
tags: ["interview-templates"]
deprecated: true
---

# Update interview template by id.

`PUT /interview/templates/{id}`

## Request

- Base URL: `https://api.smartrecruiters.com/interview-templates`
- URL: `https://api.smartrecruiters.com/interview-templates/interview/templates/{id}`
- Auth: one of:
  - OAuth 2
    - Authorization code: `https://www.smartrecruiters.com/identity/oauth/allow`
    - Client credentials
    - Token URL: `https://api.smartrecruiters.com/identity/oauth/token` scopes: `interview_templates_manage`
  - API key in header `x-smarttoken`

> **Deprecated.**

Updates interview template by id. Deprecated: use PUT /public-api/templates/{id} instead.

## Path parameters

- `id` string, uuid, required

## Request body

- InterviewTemplateUpdateExternal
  - `templateName` string, required: Template name
  - `durationInMinutes` integer, required: Duration of the interview
  - `hiringStage` string: Preferred hiring stage to which the template applies
  - `hiringStep` string: Preferred hiring step to which the template applies
  - `customHiringStep` boolean: Indicates that this is a custom hiring step and can be applied to any step
  - `hiringTeamRoleToInterviewerCount` object, required: Required number of interviewers for given hiring team roles
  - `format` 'ONSITE_JOB' | 'ONSITE' | 'PHONE' | 'VIDEO' | 'VIDEO_CALENDAR' | 'VIDEO_MEETING_ZOOM' | 'OTHER', required: Format of the interview
  - `location` string: Location of the interview
  - `zoomHostId` string: Identifier of the user being the zoom interview host. Deprecated due to irrelevant and therefore no substitution is needed.
  - `organizerId` string: Identifier of the user being the zoom interview organizer. Deprecated due to irrelevant and therefore no substitution is needed.
  - `privateInterview` boolean, required: Flag indicating whether the interview invitation is private
  - `invitations` InvitationUpdateExternal[], required: List of interview invitations
    - `email` EmailInvitationInputExternal, required: Email invitation update
      - `subject` string, required: Email subject
      - `content` string, required: Email content
      - `bccEmployeeIds` string[]: List of employees who will receive a copy of this invitation
    - `sms` SmsInvitationInputExternal: Sms invitation update
      - `content` string, required: Invitation content
      - `confirmationMessage` string, required: Confirmation message
    - `whatsApp` WhatsAppInvitationInputExternal: WhatsApp invitation update
      - `enabled` boolean, required: WhatsApp invitation enabled?
    - `line` LineInvitationInputExternal: Line invitation update
      - `content` string, required: Invitation content
      - `confirmationMessage` string, required: Confirmation message
    - `language` string: Invitation language
    - `repeat` RepeatInputExternalDto: Repeat invitation configuration update
      - `intervalInMinutes` integer: Time between invitations resends in minutes. Maximum value is 4320 minutes (3 days).
      - `count` integer: Number of times that invitation will be sent again. Maximum value is 5.
  - `reminders` ReminderRequestExternal[], nullable, required: List containing interview reminders configuration
    - `channel` 'SMS' | 'WHATS_APP' | 'LINE_ME' | 'EMAIL', required: Communication method for the reminder to be sent.
    - `advanceTimes` integer[], nullable: List of delivery times indicating how many times and how many minutes before the interview the reminder should be sent.
    - `language` string, nullable: Language in which the reminder message has been written.
    - `message` ReminderMessageInputExternal: Content of the reminder message. Applies only to Sms, Line and Email reminders. WhatsApp reminders uses predefined templates which cannot be customised.
      - `content` string, required: Content of the reminder.

## Response `200`

Successfully updated interview template.

- InterviewTemplateDetailsExternal
  - `templateId` string, uuid: Template id
  - `templateName` string: Template name
  - `durationInMinutes` integer: Duration of the interview
  - `hiringStage` string: Preferred hiring stage to which the template applies
  - `hiringStep` string: Preferred hiring step to which the template applies
  - `hiringTeamRoleToInterviewerCount` object: Required number of interviewers for given hiring team roles
  - `format` 'ONSITE_JOB' | 'ONSITE' | 'PHONE' | 'VIDEO' | 'VIDEO_CALENDAR' | 'VIDEO_MEETING_ZOOM' | 'OTHER': Format of the interview
  - `location` string: Location of the interview
  - `privateInterview` boolean: Flag indicating whether the interview invitation is private
  - `zoomHostId` string: Identifier of the user being the zoom interview host. Deprecated due to irrelevant and therefore no substitution is needed.
  - `organizerId` string: Identifier of the user being the zoom interview organizer. Deprecated due to irrelevant and therefore no substitution is needed.
  - `invitations` InvitationExternal[]: List containing interview invitations
    - `email` EmailInvitationExternal: Email invitation
      - `subject` string: Email subject
      - `content` string: Email content
      - `bccEmployeeIds` string[]: List of employees who will receive a copy of this invitation
    - `sms` SmsInvitationExternal: Sms invitation
      - `content` string: Invitation content
      - `confirmationMessage` string: Confirmation message
    - `whatsApp` WhatsAppInvitationExternal: WhatsApp invitation
      - `enabled` boolean: WhatsApp invitation enabled?
    - `line` LineInvitationExternal: Line invitation
      - `content` string: Invitation content
      - `confirmationMessage` string: Confirmation message
    - `language` string: The language the invitation will be translated into
    - `repeat` RepeatExternalDto: Repeat invitation configuration
      - `intervalInMinutes` integer: Time between invitations resends in minutes. Maximum value is 4320 minutes (3 days).
      - `count` integer: Number of times that invitation will be sent again. Maximum value is 5.
  - `reminders` ReminderExternal[]: List containing interview reminders
    - `reminderChannel` 'SMS' | 'WHATS_APP' | 'LINE_ME' | 'EMAIL': Communication method for the reminder to be sent.
    - `advanceTimes` integer[]: List of delivery times indicating how many times and how many minutes before the interview the reminder should be sent.
    - `message` ReminderMessageExternal: Content of the reminder message. Applies only to Sms, Line and Email reminders. WhatsApp reminders uses predefined templates which are resolved just before sending them to candidates.
      - `subject` string: Subject of the reminder. Applies only to email reminders.
      - `content` string: Content of the reminder.
      - `bccEmployeeIds` string[]: List of employees who will receive a copy of this reminder
    - `language` string: Language in which the reminder message has been written.
  - `isDefault` boolean: Flag indicating whether the template is one of the predefined ones

## Other responses

- `400`: Invalid input.
- `401`: Unauthorized.
- `403`: Forbidden.
- `404`: Interview template not found.

---

[API](https://skmtc.dev/smartrecruiters/apis/interview-templates-api.md) - [All operations](https://skmtc.dev/smartrecruiters/apis/interview-templates-api/llms.txt) - [OpenAPI document](https://skmtc.dev/smartrecruiters/apis/interview-templates-api/revisions/080537e890a2?raw)
