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

# Cancel an scheduled invoice

> API to cancel a scheduled invoice by schedule id

API to cancel a scheduled invoice by schedule id

```http theme={null}
POST https://services.leadconnectorhq.com/invoices/schedule/{scheduleId}/cancel
```

## Autorización

<ParamField header="Authorization" type="string" required>
  Bearer token generado desde el portal Leadway. Ver [Autenticación](/authentication).
</ParamField>

<ParamField header="Version" type="string" required default="2021-07-28">
  Versión de la API.
</ParamField>

## Path parameters

<ParamField path="scheduleId" type="string" required default="6578278e879ad2646715ba9c">
  Schedule Id
</ParamField>

## Body

<ParamField body="altId" type="string" required default="6578278e879ad2646715ba9c">
  account Id / company Id based on altType
</ParamField>

<ParamField body="altType" type="string" required default="account">
  Alt Type Posibles valores: 'account'
</ParamField>

## Respuestas

<Accordion title="200 - Successful response">
  <ResponseField name="_id" type="string" required default="6578278e879ad2646715ba9c">
    Schedule Id
  </ResponseField>

  <ResponseField name="status" type="object" required default="draft">
    Schedule Status
  </ResponseField>

  <ResponseField name="liveMode" type="boolean" required default="False">
    Live Mode
  </ResponseField>

  <ResponseField name="altId" type="string" required default="6578278e879ad2646715ba9c">
    Account Id or Agency Id
  </ResponseField>

  <ResponseField name="altType" type="string" required>
    Posibles valores: 'account'
  </ResponseField>

  <ResponseField name="name" type="string" required default="New Invoice">
    Name of the invoice
  </ResponseField>

  <ResponseField name="schedule" type="object">
    <Expandable title="propiedades">
      <ResponseField name="executeAt" type="string" />

      <ResponseField name="rrule" type="object">
        <Expandable title="propiedades">
          <ResponseField name="intervalType" type="string" required default="monthly">
            Posibles valores: 'yearly', 'monthly', 'weekly', 'daily', 'hourly', 'minutely', 'secondly'
          </ResponseField>

          <ResponseField name="interval" type="number" required default="2" />

          <ResponseField name="startDate" type="string" required default="2023-01-01">
            Start date in YYYY-MM-DD format
          </ResponseField>

          <ResponseField name="startTime" type="string" default="20:45:00">
            Start time in HH:mm:ss format
          </ResponseField>

          <ResponseField name="endDate" type="string" default="2029-11-01">
            End date in YYYY-MM-DD format
          </ResponseField>

          <ResponseField name="endTime" type="string" default="18:45:00">
            End time in HH:mm:ss format
          </ResponseField>

          <ResponseField name="dayOfMonth" type="number" default="15">
            -1, 1, 2, 3, ..., 27, 28
          </ResponseField>

          <ResponseField name="dayOfWeek" type="string" default="mo">
            Posibles valores: 'mo', 'tu', 'we', 'th', 'fr', 'sa', 'su'
          </ResponseField>

          <ResponseField name="numOfWeek" type="number" default="-1">
            -1, 1, 2, 3, 4
          </ResponseField>

          <ResponseField name="monthOfYear" type="string" default="jan">
            Posibles valores: 'jan', 'feb', 'mar', 'apr', 'may', 'jun', 'jul', 'aug', 'sep', 'oct', 'nov', 'dec'
          </ResponseField>

          <ResponseField name="count" type="number" default="10">
            Max number of task executions
          </ResponseField>

          <ResponseField name="daysBefore" type="number" default="5">
            Execute task number of days before
          </ResponseField>

          <ResponseField name="useStartAsPrimaryUserAccepted" type="boolean" default="True">
            Start as primary user accepted date
          </ResponseField>

          <ResponseField name="endType" type="string" default="by">
            End type like after, by, count
          </ResponseField>
        </Expandable>
      </ResponseField>
    </Expandable>
  </ResponseField>

  <ResponseField name="invoices" type="object[]" required>
    List of invoices

    <Expandable title="cada item">
      <ResponseField name="_id" type="string" required default="6578278e879ad2646715ba9c">
        Invoice Id
      </ResponseField>

      <ResponseField name="status" type="string" required default="draft">
        Invoice Status Posibles valores: 'draft', 'sent', 'payment\_processing', 'paid', 'void', 'partially\_paid'
      </ResponseField>

      <ResponseField name="liveMode" type="boolean" required default="False">
        Live Mode
      </ResponseField>

      <ResponseField name="amountPaid" type="number" required default="0">
        Amount Paid
      </ResponseField>

      <ResponseField name="altId" type="string" required default="6578278e879ad2646715ba9c">
        Account Id or Agency Id
      </ResponseField>

      <ResponseField name="altType" type="string" required>
        Posibles valores: 'account'
      </ResponseField>

      <ResponseField name="name" type="string" required default="New Invoice">
        Name of the invoice
      </ResponseField>

      <ResponseField name="businessDetails" type="object" required>
        Business Details
      </ResponseField>

      <ResponseField name="invoiceNumber" type="number" required default="19">
        Invoice Number
      </ResponseField>

      <ResponseField name="currency" type="string" required default="USD">
        Currency
      </ResponseField>

      <ResponseField name="contactDetails" type="object" required>
        Contact Details
      </ResponseField>

      <ResponseField name="issueDate" type="string" required default="2023-01-01">
        Issue date in YYYY-MM-DD format
      </ResponseField>

      <ResponseField name="dueDate" type="string" required default="2023-01-01">
        Due date in YYYY-MM-DD format
      </ResponseField>

      <ResponseField name="discount" type="object">
        Discount
      </ResponseField>

      <ResponseField name="invoiceItems" type="string[]" required>
        Invoice Items
      </ResponseField>

      <ResponseField name="total" type="number" required default="999">
        Total Amount
      </ResponseField>

      <ResponseField name="title" type="string" required default="INVOICE">
        Title
      </ResponseField>

      <ResponseField name="amountDue" type="number" required default="999">
        Total Amount Due
      </ResponseField>

      <ResponseField name="createdAt" type="string" required default="2023-12-12T09:27:42.355Z">
        created at
      </ResponseField>

      <ResponseField name="updatedAt" type="string" required default="2023-12-12T09:27:42.355Z">
        updated at
      </ResponseField>

      <ResponseField name="automaticTaxesEnabled" type="boolean" default="True">
        Automatic taxes enabled for the Invoice
      </ResponseField>

      <ResponseField name="automaticTaxesCalculated" type="boolean" default="True">
        Is Automatic taxes calculated for the Invoice items
      </ResponseField>

      <ResponseField name="paymentSchedule" type="object">
        split invoice into payment schedule summing up to full invoice amount
      </ResponseField>
    </Expandable>
  </ResponseField>

  <ResponseField name="businessDetails" type="object" required>
    Business Details
  </ResponseField>

  <ResponseField name="currency" type="string" required default="USD">
    Currency
  </ResponseField>

  <ResponseField name="contactDetails" type="object" required>
    Contact Details
  </ResponseField>

  <ResponseField name="discount" type="object">
    Discount
  </ResponseField>

  <ResponseField name="items" type="string[]" required>
    Invoice Items
  </ResponseField>

  <ResponseField name="total" type="number" required default="999">
    Total Amount
  </ResponseField>

  <ResponseField name="title" type="string" required default="INVOICE">
    Title
  </ResponseField>

  <ResponseField name="termsNotes" type="string" required default="Confidential">
    Terms notes
  </ResponseField>

  <ResponseField name="compiledTermsNotes" type="string" required default="Confidential">
    Compiled terms notes
  </ResponseField>

  <ResponseField name="createdAt" type="string" required default="2023-12-12T09:27:42.355Z">
    created at
  </ResponseField>

  <ResponseField name="updatedAt" type="string" required default="2023-12-12T09:27:42.355Z">
    updated at
  </ResponseField>

  ```json theme={null}
  {
    "_id": "6578278e879ad2646715ba9c",
    "status": "draft",
    "liveMode": false,
    "altId": "6578278e879ad2646715ba9c",
    "altType": "account",
    "name": "New Invoice",
    "schedule": {
      "executeAt": "string",
      "rrule": {
        "intervalType": "monthly",
        "interval": 2,
        "startDate": "2023-01-01",
        "startTime": "20:45:00",
        "endDate": "2029-11-01",
        "endTime": "18:45:00",
        "dayOfMonth": 15,
        "dayOfWeek": "mo",
        "numOfWeek": -1,
        "monthOfYear": "jan",
        "count": 10,
        "daysBefore": 5,
        "useStartAsPrimaryUserAccepted": true,
        "endType": "by"
      }
    },
    "invoices": [
      {
        "_id": "6578278e879ad2646715ba9c",
        "status": "draft",
        "liveMode": false,
        "amountPaid": 0,
        "altId": "6578278e879ad2646715ba9c",
        "altType": "account",
        "name": "New Invoice",
        "businessDetails": {
          "name": "Alex",
          "address": {
            "addressLine1": "9931 Beechwood",
    // truncado: 94 lineas mas
  }
  ```
</Accordion>

<Accordion title="400 - Bad Request">
  ```json theme={null}
  {}
  ```
</Accordion>

<Accordion title="401 - Unauthorized">
  ```json theme={null}
  {}
  ```
</Accordion>

<Accordion title="422 - Unprocessable Entity">
  ```json theme={null}
  {}
  ```
</Accordion>

## Ejemplo

<CodeGroup>
  ```bash cURL theme={null}
  curl -X POST 'https://services.leadconnectorhq.com/invoices/schedule/YOUR_scheduleId/cancel' \
    -H 'Authorization: Bearer YOUR_TOKEN' \
    -H 'Version: 2021-07-28' \
    -H 'Content-Type: application/json' \
    -d '{
    "altId": "6578278e879ad2646715ba9c",
    "altType": "account"
  }'
  ```

  ```javascript Node.js theme={null}
  const response = await fetch('https://services.leadconnectorhq.com/invoices/schedule/YOUR_scheduleId/cancel', {
    method: 'POST',
    headers: {
      Authorization: `Bearer ${process.env.LEADWAY_TOKEN}`,
      Version: '2021-07-28',
      'Content-Type': 'application/json',
    },
    body: JSON.stringify({"altId": "6578278e879ad2646715ba9c", "altType": "account"}),
  });
  const data = await response.json();
  ```

  ```python Python theme={null}
  import os, requests
  response = requests.request(
      'POST',
      'https://services.leadconnectorhq.com/invoices/schedule/YOUR_scheduleId/cancel',
      headers={
          'Authorization': f"Bearer {os.environ['LEADWAY_TOKEN']}",
          'Version': '2021-07-28',
          'Content-Type': 'application/json',
      },
      json={"altId": "6578278e879ad2646715ba9c", "altType": "account"},
  )
  data = response.json()
  ```

  ```php PHP theme={null}
  <?php
  $ch = curl_init('https://services.leadconnectorhq.com/invoices/schedule/YOUR_scheduleId/cancel');
  curl_setopt_array($ch, [
      CURLOPT_RETURNTRANSFER => true,
      CURLOPT_CUSTOMREQUEST => 'POST',
      CURLOPT_HTTPHEADER => [
          'Authorization: Bearer ' . getenv('LEADWAY_TOKEN'),
          'Version: 2021-07-28',
          'Content-Type: application/json',
      ],
      CURLOPT_POSTFIELDS => json_encode({'altId': '6578278e879ad2646715ba9c', 'altType': 'account'}),
  ]);
  $data = json_decode(curl_exec($ch), true);
  ```
</CodeGroup>
