---
title: "Create a lien for a business"
method: POST
path: "/v1/businesses/{business_id}/liens"
tags: ["liens"]
---

# Create a lien for a business

`POST /v1/businesses/{business_id}/liens`

## Request

- Base URL: `https://api.middesk.com`
- URL: `https://api.middesk.com/v1/businesses/{business_id}/liens`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/middesk/apis/middesk-api/docs/v1/businesses/:business_id/liens/post.ts> (a function with typed inputs; its response is checked against the schema)

## Path parameters

- `business_id` string, required

## Request body

- object
  - `state` 'AL' | 'AK' | 'AZ' | 'AR' | 'CA' | 'CO' | 'CT' | 'DE' | 'FL' | 'GA' | 'HI' | 'ID' | 'IL' | 'IN' | 'IA' | 'KS' | 'KY' | 'LA' | 'ME' | 'MD' | 'MA' | 'MI' | 'MN' | 'MS' | 'MO' | 'MT' | 'NE' | 'NV' | 'NH' | 'NJ' | 'NM' | 'NY' | 'NC' | 'ND' | 'OH' | 'OK' | 'OR' | 'PA' | 'RI' | 'SC' | 'SD' | 'TN' | 'TX' | 'UT' | 'VT' | 'VA' | 'WA' | 'WV' | 'WI' | 'WY': State where the lien will be filed. Use `state` for a single state or `states` for multiple states. If both are provided, `states` takes precedence.
  - `states` LiensLienRequestParamStatesItem[]: Array of states to file the lien in. Creates one lien per state. Returns a list response. Either `state` or `states` is required.
  - `debtors` LiensLienRequestParamDebtorsItem[], required: Array of debtor details
    - `organization_name` string: Debtor organization name
    - `tin` string: Tax identification number (required for certain states)
    - `addresses` LienAddress[]
      - `address_line1` string
      - `address_line2` string
      - `city` string
      - `state` 'AL' | 'AK' | 'AZ' | 'AR' | 'CA' | 'CO' | 'CT' | 'DE' | 'FL' | 'GA' | 'HI' | 'ID' | 'IL' | 'IN' | 'IA' | 'KS' | 'KY' | 'LA' | 'ME' | 'MD' | 'MA' | 'MI' | 'MN' | 'MS' | 'MO' | 'MT' | 'NE' | 'NV' | 'NH' | 'NJ' | 'NM' | 'NY' | 'NC' | 'ND' | 'OH' | 'OK' | 'OR' | 'PA' | 'RI' | 'SC' | 'SD' | 'TN' | 'TX' | 'UT' | 'VT' | 'VA' | 'WA' | 'WV' | 'WI' | 'WY'
      - `postal_code` string
  - `secured_parties` LiensLienRequestParamSecuredPartiesItem[]: Array of secured party details (optional - uses account defaults if not provided)
    - `organization_name` string: Secured party organization name
    - `role` 'assignee' | 'assignor': Role (assignee or assignor)
    - `addresses` LienAddress[]
      - `address_line1` string
      - `address_line2` string
      - `city` string
      - `state` 'AL' | 'AK' | 'AZ' | 'AR' | 'CA' | 'CO' | 'CT' | 'DE' | 'FL' | 'GA' | 'HI' | 'ID' | 'IL' | 'IN' | 'IA' | 'KS' | 'KY' | 'LA' | 'ME' | 'MD' | 'MA' | 'MI' | 'MN' | 'MS' | 'MO' | 'MT' | 'NE' | 'NV' | 'NH' | 'NJ' | 'NM' | 'NY' | 'NC' | 'ND' | 'OH' | 'OK' | 'OR' | 'PA' | 'RI' | 'SC' | 'SD' | 'TN' | 'TX' | 'UT' | 'VT' | 'VA' | 'WA' | 'WV' | 'WI' | 'WY'
      - `postal_code` string
  - `secured_party` LiensLienRequestParamSecuredParty: Single secured party (alternative to secured_parties array)
    - `organization_name` string: Secured party organization name
    - `role` 'assignee' | 'assignor': Role (assignee or assignor)
    - `addresses` LienAddress[]
      - `address_line1` string
      - `address_line2` string
      - `city` string
      - `state` 'AL' | 'AK' | 'AZ' | 'AR' | 'CA' | 'CO' | 'CT' | 'DE' | 'FL' | 'GA' | 'HI' | 'ID' | 'IL' | 'IN' | 'IA' | 'KS' | 'KY' | 'LA' | 'ME' | 'MD' | 'MA' | 'MI' | 'MN' | 'MS' | 'MO' | 'MT' | 'NE' | 'NV' | 'NH' | 'NJ' | 'NM' | 'NY' | 'NC' | 'ND' | 'OH' | 'OK' | 'OR' | 'PA' | 'RI' | 'SC' | 'SD' | 'TN' | 'TX' | 'UT' | 'VT' | 'VA' | 'WA' | 'WV' | 'WI' | 'WY'
      - `postal_code` string
  - `collateral` string: Collateral description (optional - uses account default if not provided)
  - `loan_principal_amount_cents` integer: Loan principal amount in cents
  - `packet_number` string: Packet number for the filing (optional - auto-generated if not provided). Cannot contain underscores.
  - `alternative_designation` string: Alternative designation (for Tennessee filings)

## Response `201`

lien created using account defaults

- unknown

## Other responses

- `400`: invalid secured parties configuration
- `403`: identity or verify order required
- `404`: business not found

## Changes

- **2026-09-17** `4c9cd4e834ba`: 1 warning, 1 info
  - deleted the `header` request parameter `Authorization`
  - the endpoint scheme security `bearer_auth` was added to the API
- **2026-09-12** `668373c892ce`: 1 info
  - api operation id `createLien` removed and replaced with `liens_createLien`
- **2026-09-03** `ac0d9be94846`: 3 info
  - added the optional property `errors/items/parameter` to the response with the `400` status
  - added the optional property `errors/items/parameter` to the response with the `403` status
  - added the optional property `errors/items/parameter` to the response with the `404` status
- **2026-08-22** `b496a7929e98`: 4 breaking
  - added the pattern `^[^_]*$` to the request property `packet_number`
  - added the pattern `^\d{5}(?:[-\s]\d{4})?$` to the request property `debtors/items/addresses/items/postal_code`
  - added the pattern `^\d{5}(?:[-\s]\d{4})?$` to the request property `secured_parties/items/addresses/items/postal_code`
  - added the pattern `^\d{5}(?:[-\s]\d{4})?$` to the request property `secured_party/addresses/items/postal_code`

[Operation history](https://skmtc.dev/middesk/apis/middesk-api/changes/v1/businesses/:business_id/liens/post.md)

---

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