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

# Submitting a batch of transfers (conveniently)

This API is the same as the idempotent transfer API above, but if you don’t need the idempotency, you can use this POST API and avoid providing your own `batchId`s.

## Authentication

<ParamField header="Authorization" type="string" required>
  Bearer authentication header of the form `Bearer <token>`, where `<token>` is your auth token.
</ParamField>

## Path Params

<ParamField path="contractAddress" type="string" required>
  Contract address distributing the points.
</ParamField>

## Request

<ParamField body="pointType" type="string" required>
  Point type to distribute, can be `PHASE2_POINTS` or `PHASE2_GOLD`
</ParamField>

<ParamField body="transfers" type="Transfer[]" required>
  List of transfers to submitted as part of the batch.

  <Expandable>
    <ParamField body="toAddress" type="string" required>
      Points receiver
    </ParamField>

    <ParamField body="points" type="string" required>
      Amount of points to distribute to `toAddress`.

      Must be `>= MINIMUM_{pointType}_TRANSFER_SIZE` and must have decimal places `<= MAX_TRANSFER_DECIMALS`
    </ParamField>
  </Expandable>
</ParamField>

<ParamField body="secondsToFinalize" type="number">
  Number of seconds to wait before finalizing this batch, must be between
  `MINIMUM_FINALIZE_SECONDS` and `DEFAULT_FINALIZE_SECONDS`.

  If not present uses `DEFAULT_FINALIZE_SECONDS`
</ParamField>

## Response

<ResponseField name="success" type="boolean">
  Response status
</ResponseField>

<ResponseField name="batchId" type="string">
  Transfer batch `batchId` that can be used to fetch it's status.
</ResponseField>
