---
title: "Score up to 500 values in one request"
method: POST
path: "/v1/batch"
tags: ["Batch"]
---

# Score up to 500 values in one request

`POST /v1/batch`

## Request

- Base URL: `https://www.layercall.com`
- URL: `https://www.layercall.com/v1/batch`
- Auth: one of:
  - API key in header `x-api-key`
  - HTTP bearer

Bills one lookup per item actually scored; rejected items are not billed. More than 500 items is refused, never truncated.

## Request body

- object
  - `type` 'ip' | 'email' | 'domain' | 'phone', required
  - `items` string[], required
  - `strictness` integer
  - `phone_country` string

## Response `200`

Success

- object
  - `billable_lookups` integer
  - `count` integer
  - `failed` integer
  - `processing_time_sec` number
  - `results` object[]
    - `abuse_reports` integer
    - `cached` boolean
    - `first_seen` unknown
    - `geo` object
      - `asn` string
      - `city` string
      - `country` string
      - `isp` string
    - `hijacked_source` unknown
    - `input` string
    - `ip` string
    - `request_id` string
    - `risk_score` integer
    - `signals` object
      - `is_datacenter` boolean
      - `is_hijacked_netblock` boolean
      - `is_proxy` boolean
      - `is_tor` boolean
      - `is_vpn` boolean
      - `recent_abuse` boolean
    - `times_seen` integer
    - `verdict` string
    - `vpn_provider` unknown
  - `succeeded` integer
  - `type` string

## Other responses

- `400`: Invalid input
- `402`: Quota exceeded, or account paused after a failed payment
- `403`: Invalid or revoked API key
- `429`: Rate limited — honour Retry-After

---

[API](https://skmtc.dev/layercall/apis/layercall-api.md) · [All operations](https://skmtc.dev/layercall/apis/layercall-api/llms.txt) · [OpenAPI document](https://skmtc.dev/layercall/apis/layercall-api/revisions/b1258307dc91?raw)
