> ## Documentation Index
> Fetch the complete documentation index at: https://ai-recruiter.micro1.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Create a new interview (custom questions)

> This endpoint creates a new interview with only custom questions, returns a unique interview ID and a corresponding interview URL. You can send this URL to candidates, add it to a job post or alternatively, use the invite candidate endpoint to send invitations for the interview.



## OpenAPI

````yaml /openapi.json post /custom/interview
openapi: 3.0.3
info:
  title: micro1 Public API
  description: micro1 ai-interview platform public API
  version: 1.0.0
  termsOfService: https://www.micro1.ai/terms-conditions
  contact:
    name: micro1 API Support
    url: https://www.micro1.ai
    email: support@micro1.ai
servers:
  - url: https://public.api.micro1.ai
    description: Production server
security:
  - apiKey: []
paths:
  /custom/interview:
    post:
      tags:
        - Interview
      summary: Create a new interview (custom questions)
      description: >-
        This endpoint creates a new interview with only custom questions,
        returns a unique interview ID and a corresponding interview URL. You can
        send this URL to candidates, add it to a job post or alternatively, use
        the invite candidate endpoint to send invitations for the interview.
      operationId: aiInterviewer-ce2743c0-2309-41eb-8ff2-44c55c138c25
      parameters: []
      requestBody:
        description: Request body to create an interview
        required: false
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/5bf9749c-a439-449a-bbed-fc2c74dd9b39'
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/fe74cb1a-f0be-4b3f-97c1-7c97f143f926'
          headers:
            Access-Control-Allow-Origin:
              description: >-
                The Access-Control-Allow-Origin response header indicates
                whether the response can be shared with requesting code from the
                given
                [origin](https://developer.mozilla.org/en-US/docs/Glossary/Origin).
                - [MDN
                Link](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Allow-Origin)
              schema:
                $ref: '#/components/schemas/Access-Control-Allow-Origin'
            Access-Control-Allow-Credentials:
              description: >-
                The Access-Control-Allow-Credentials response header tells
                browsers whether to expose the response to the frontend
                JavaScript code when the request's credentials mode
                ([Request.credentials](https://developer.mozilla.org/en-US/docs/Web/API/Request/credentials))
                is include. - [MDN
                Link](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Allow-Credentials)
              schema:
                $ref: '#/components/schemas/Access-Control-Allow-Credentials'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/5333077b-0b49-46f7-bc97-51cb80bca346'
          headers:
            Access-Control-Allow-Origin:
              description: >-
                The Access-Control-Allow-Origin response header indicates
                whether the response can be shared with requesting code from the
                given
                [origin](https://developer.mozilla.org/en-US/docs/Glossary/Origin).
                - [MDN
                Link](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Allow-Origin)
              schema:
                $ref: '#/components/schemas/Access-Control-Allow-Origin'
            Access-Control-Allow-Credentials:
              description: >-
                The Access-Control-Allow-Credentials response header tells
                browsers whether to expose the response to the frontend
                JavaScript code when the request's credentials mode
                ([Request.credentials](https://developer.mozilla.org/en-US/docs/Web/API/Request/credentials))
                is include. - [MDN
                Link](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Allow-Credentials)
              schema:
                $ref: '#/components/schemas/Access-Control-Allow-Credentials'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/0e874cf3-8175-4bc0-be8e-58d4bfc07a79'
          headers:
            Access-Control-Allow-Origin:
              description: >-
                The Access-Control-Allow-Origin response header indicates
                whether the response can be shared with requesting code from the
                given
                [origin](https://developer.mozilla.org/en-US/docs/Glossary/Origin).
                - [MDN
                Link](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Allow-Origin)
              schema:
                $ref: '#/components/schemas/Access-Control-Allow-Origin'
            Access-Control-Allow-Credentials:
              description: >-
                The Access-Control-Allow-Credentials response header tells
                browsers whether to expose the response to the frontend
                JavaScript code when the request's credentials mode
                ([Request.credentials](https://developer.mozilla.org/en-US/docs/Web/API/Request/credentials))
                is include. - [MDN
                Link](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Allow-Credentials)
              schema:
                $ref: '#/components/schemas/Access-Control-Allow-Credentials'
      security:
        - apiKey: []
components:
  schemas:
    5bf9749c-a439-449a-bbed-fc2c74dd9b39:
      title: CreateCustomQuestionInterviewRequest
      description: Request to create an interview with only custom questions
      type: object
      required:
        - interview_name
        - custom_question_list
      properties:
        interview_name:
          type: string
          description: Name of the interview
          example: Candidate Screening Interview
        custom_question_list:
          type: array
          items:
            type: object
            properties:
              question:
                type: string
                description: The question to ask the candidate
                example: What are your strengths and weaknesses?
              time:
                type: number
                description: The time limit for the question in minutes (min 1, max 4)
                example: 2
              type:
                type: string
                description: The type of question
                example: audio
                enum:
                  - audio
                  - text
          description: Custom questions for the interview (max 20)
          example:
            - question: What are your strengths and weaknesses?
              time: 2
              type: audio
        interview_language:
          type: string
          description: The language in which the AI interview will be conducted
          default: en
          example: en
          enum:
            - en
            - fr
            - de
            - he
            - hi
            - pt
            - es
            - es-la
            - tr
            - ja
            - sv
            - ar
            - pl
            - dk
            - kr
            - it
            - nl
            - cz
            - ua
            - ur
            - id
            - en-GB
            - es-MX
            - cn
            - zh-CN
            - zh-TW
            - zh-HK
            - ru
            - bn
            - ms
            - pt-BR
            - vi
            - tl
            - th
            - afb
            - pt-PT
        can_change_interview_language:
          type: boolean
          description: Whether the candidate can change the language
          default: false
        is_proctoring_required:
          type: boolean
          description: Whether the proctoring is required
          default: true
    fe74cb1a-f0be-4b3f-97c1-7c97f143f926:
      title: CreateInterviewResponse
      description: Response for creating an interview
      type: object
      properties:
        status:
          type: boolean
          description: Whether the request was successful
          example: true
        message:
          type: string
          description: The message for the response
          example: Interview created successfully
        data:
          type: object
          description: Interview details
          properties:
            interview_id:
              type: string
              description: Unique identifier for the interview
              example: 123e4567-e89b-12d3-a456-426614174000
            invite_url:
              type: string
              description: The URL to invite the candidates to the interview
              example: >-
                https://interview.micro1.ai/intro/micro1?uid=123e4567-e89b-12d3-a456-426614174000
    Access-Control-Allow-Origin:
      type: string
      default: '*'
      example: https://developer.mozilla.org
    Access-Control-Allow-Credentials:
      type: boolean
      default: true
    5333077b-0b49-46f7-bc97-51cb80bca346:
      title: BadRequestResponse
      description: Response for bad requests
      type: object
      properties:
        status:
          type: boolean
          description: Whether the request was successful
          example: false
        message:
          type: string
          description: The error message
          example: Invalid request
    0e874cf3-8175-4bc0-be8e-58d4bfc07a79:
      title: InternalServerErrorResponse
      description: Response for internal server error
      type: object
      properties:
        status:
          type: boolean
          description: Whether the request was successful
          example: false
  securitySchemes:
    apiKey:
      description: API key to access the API
      type: apiKey
      name: x-api-key
      in: header

````