> ## Documentation Index
> Fetch the complete documentation index at: https://docs.instaview.sk/llms.txt
> Use this file to discover all available pages before exploring further.

# Invoke New Call Attempt

> Creates a new call attempt on a conversation. Optionally schedules it for a future time. Individual call attempt management is forbidden for ONLINE conversations.

<Info>
  `POST /interviews/{id}/call-attempts` is a permanent alias of this endpoint and keeps working unchanged, with the same scopes and the same response. See [Resource names](/api-reference/introduction#resource-names).
</Info>

Creates a new call attempt on an existing phone conversation — a way to place a call by hand, or to schedule a retry after an attempt that did not connect.

<Warning>
  **ONLINE conversations**: managing individual call attempts is forbidden on an `ONLINE` conversation. There, the whole conversation is the unit — use [Delete Conversation](/api-reference/conversations/delete-conversation).
</Warning>

## Overview

This endpoint places a new call on a phone conversation. It is useful when:

* A previous call attempt failed (e.g., no answer, busy) and you want to try again manually.
* You want to override the automatic retry logic and trigger a call immediately.
* You want to schedule a specific time for the next call attempt.

## Constraints and Behavior

* **Queue management**: invoking a new attempt cancels any attempt already scheduled on that conversation and replaces it.
* **In-progress protection**: while a call is in progress on the conversation, a new attempt cannot be invoked.
* **Transactional Integrity**: The creation of a call attempt and its synchronization with the processing queue is handled transactionally.

## Examples

### Immediate Call

Omit `scheduledAt` to trigger a call attempt as soon as possible:

```json theme={null}
{
  "scheduledAt": null
}
```

### Scheduled Call Attempt

Provide a future ISO 8601 timestamp to schedule the call for a specific time:

```json theme={null}
{
  "scheduledAt": "2026-05-01T10:00:00Z"
}
```

<Info>
  **This endpoint does not apply the agent's [calling
  window](/api-reference/agents/create-agent#retries-and-calling-hours) either way.** A
  `scheduledAt` you send is used exactly as given, including when it falls outside those hours.
  Omitting it dials as soon as capacity allows, which is the point of an explicit invoke, so that
  is not held back to the window either. Both are deliberate: you are asking for this call now,
  and the window governs the calls we schedule ourselves.
</Info>

<Info>
  **Next steps**: follow the attempt by fetching the conversation through [Get Conversation](/api-reference/conversations/get-conversation) and reading its `callAttempts` array.
</Info>


## OpenAPI

````yaml POST /conversations/{id}/call-attempts
openapi: 3.0.0
info:
  title: InstaView API
  description: |-
    InstaView API Documentation

    ## Authentication

    All endpoints require API key authentication using Bearer token:
    ```
    Authorization: Bearer sk_your_api_key_here
    ```

    ## API Key Management

    The API Key module provides comprehensive key management for:
    - **Direct Client Keys**: Company-scoped keys for your applications
    - **ATS Partner Keys**: Resource-scoped keys for ATS integrations

    ### Key Features
    - HMAC-SHA256 hashing for API key storage
    - Configurable rate limiting
    - Comprehensive audit logging
    - Company-level isolation
    - Resource scoping for ATS partners
  version: 1.0.0
  contact: {}
servers:
  - url: https://api.instaview.sk
    description: Production API Gateway
security: []
tags: []
paths:
  /conversations/{id}/call-attempts:
    post:
      tags:
        - Conversations
      summary: Invoke new call attempt
      description: >-
        Creates a new call attempt on a conversation. Optionally schedules it
        for a future time. Individual call attempt management is forbidden for
        ONLINE conversations.
      operationId: PublicInterviewsController_invokeCallAttempt_v1
      parameters:
        - name: id
          required: true
          in: path
          schema:
            type: string
            format: uuid
        - name: companyId
          required: false
          in: query
          description: >-
            Required for ATS API keys to specify which company to access.
            Ignored for standard company API keys.
          schema:
            type: string
      requestBody:
        required: false
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PublicInvokeCallAttemptDto'
      responses:
        '201':
          description: Call attempt created successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                  message:
                    type: string
      security:
        - bearer: []
components:
  schemas:
    PublicInvokeCallAttemptDto:
      type: object
      properties:
        scheduledAt:
          type: string
          description: >-
            Optional scheduled time for the call attempt (ISO string). If not
            provided, call will be invoked immediately. When provided it is used
            exactly as sent, including when it falls outside the agent's calling
            window.
          example: '2026-05-01T10:00:00Z'
          format: date-time
  securitySchemes:
    bearer:
      type: http
      scheme: bearer
      description: API key for authentication using Bearer scheme

````