Lob.com Checks API
Checks allow you to send payments via physical checks. The API provides endpoints for creating checks, retrieving individual checks, canceling checks, and retrieving a list of checks. back to top
Checks allow you to send payments via physical checks. The API provides endpoints for creating checks, retrieving individual checks, canceling checks, and retrieving a list of checks. back to top
openapi: 3.0.3
info:
title: Lob Accounts Checks API
version: 1.22.0
description: 'The Lob API is organized around REST. Our API is designed to have predictable, resource-oriented URLs and uses HTTP response codes to indicate any API errors. <p>
'
license:
name: MIT
url: https://mit-license.org/
contact:
name: Lob Developer Experience
url: https://support.lob.com/
email: lob-openapi@lob.com
termsOfService: https://www.lob.com/legal
servers:
- url: https://api.lob.com/v1
description: production
security:
- basicAuth: []
tags:
- name: Checks
description: 'Checks allow you to send payments via physical checks. The API provides endpoints
for creating checks, retrieving individual checks, canceling checks, and retrieving a list of checks.
<div class="back-to-top" ><a href="#" onclick="toTopLink()">back to top</a></div>
'
paths:
/checks:
get:
operationId: checks_list
summary: List
description: Returns a list of your checks. The checks are returned sorted by creation date, with the most recently created checks appearing first.
tags:
- Checks
parameters:
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/before_after'
- $ref: '#/components/parameters/include'
- $ref: '#/components/parameters/date_created'
- $ref: '#/components/parameters/metadata'
- $ref: '#/components/parameters/scheduled'
- $ref: '#/components/parameters/send_date'
- $ref: '#/components/parameters/mail_type'
- $ref: '#/components/parameters/sort_by'
- $ref: '#/components/parameters/status'
responses:
'200':
$ref: '#/components/responses/all_checks'
default:
$ref: '#/components/responses/mailpiece_error'
x-codeSamples:
- lang: Shell
source: "curl -X GET \"https://api.lob.com/v1/checks?limit=2\" \\\n -u test_0dc8d51e0acffcb1880e0f19c79b2f5b0cc:\n"
label: CURL
- lang: typescript
source: "try {\n const checks = await new ChecksApi(config).list(2);\n} catch (err: any) {\n console.error(err);\n}\n"
label: TYPESCRIPT
- lang: Javascript
source: "Lob.checks.list({limit: 2}, function (err, res) {\n console.log(err, res);\n});\n"
label: NODE
- lang: Ruby
source: "checksApi = ChecksApi.new(config)\n\nbegin\n checks = checksApi.list({ limit: 2 })\nrescue => err\n p err.message\nend\n"
label: RUBY
- lang: Python
source: "with ApiClient(configuration) as api_client:\n api = ChecksApi(api_client)\n\ntry:\n checks = api.list(limit=2)\nexcept ApiException as e:\n print(e)\n"
label: PYTHON
- lang: PHP
source: "$apiInstance = new OpenAPI\\Client\\Api\\ChecksApi($config, new GuzzleHttp\\Client());\n\ntry {\n $result = $apiInstance->list(\n 2, // limit\n );\n} catch (Exception $e) {\n echo $e->getMessage(), PHP_EOL;\n}\n"
- lang: Java
source: "ChecksApi apiInstance = new ChecksApi(config);\n\ntry {\n CheckList response = apiInstance.list(\n 2, // limit\n null, // before\n null, // after\n null, // include\n null, // dateCreated\n null, // metadata\n null, // scheduled\n null, // sendDate\n null, // mailType\n null // sortBy\n );\n} catch (ApiException e) {\n e.printStackTrace();\n}\n"
label: JAVA
- lang: Elixir
source: 'Lob.Check.list(%{limit: 2})
'
label: ELIXIR
- lang: CSharp
source: "ChecksApi api = new ChecksApi(config);\n\nList<string> includeList = new List<string>();\nincludeList.Add(\"total_count\");\nDictionary<String, String> metadata = new Dictionary<String, String>();\nmetadata.Add(\"name\", \"Harry\");\nDictionary<String, DateTime> dateCreated = new Dictionary<String, DateTime>();\nDateTime dateCreatedDate = DateTime.Today.AddMonths(-1);\ndateCreated.Add(\"lt\", dateCreatedDate);\nDictionary<String, String> sendDate = new Dictionary<String, String>();\nsendDate.Add(\"lt\", DateTime.Now.ToString(\"yyyy-MM-ddTHH\\\\:mm\\\\:ss.fffffffzzz\"));\nSortBy3 sortBy = new SortBy3(SortBy3.DateCreatedEnum.Asc);\n\ntry {\n CheckList response = api.list(\n 2, // limit\n null, // before\n null, // after\n includeList, // include\n dateCreated, // dateCreated\n metadata, // metadata\n true, // scheduled\n sendDate, // sendDate\n MailType.FirstClass, // mailType\n sortBy // sortBy\n );\n} catch (ApiException e) {\n Console.WriteLine(e.ToString());\n}\n"
label: CSHARP
- lang: Go
source: "var context = context.Background()\ncontext = context.WithValue(suite.ctx, lob.ContextBasicAuth, lob.BasicAuth{UserName: os.Getenv(\"<YOUR_API_KEY>\")})\n\nvar apiClient = *lob.NewAPIClient(configuration)\nCheckList = apiClient.ChecksApi.List(context).Execute()\nif err != nil {\n return err\n}\n"
label: GO
post:
operationId: check_create
summary: Create
description: Creates a new check with the provided properties.
tags:
- Checks
parameters:
- $ref: '#/components/parameters/idem-header'
- $ref: '#/components/parameters/idem-query'
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/check_editable'
example:
description: Demo Check
to:
description: Harry - Office
name: Harry Zhang
company: Lob
email: harry@lob.com
phone: '5555555555'
address_line1: 210 King St
address_line2: '# 6100'
address_city: San Francisco
address_state: CA
address_zip: '94107'
address_country: US
from:
name: Leore Avidar
address_line1: 210 King St
address_line2: '# 6100'
address_city: San Francisco
address_state: CA
address_zip: 94107-1741
bank_account: bank_8cad8df5354d33f
amount: 22.5
memo: rent
logo: https://s3-us-west-2.amazonaws.com/public.lob.com/assets/check_logo.png
check_bottom: tmpl_23668b406d5afef
merge_variables:
name: Harry
metadata:
memo: rafting trip
attachment: ./cool.pdf
send_date: '2017-11-01T00:00:00.000Z'
use_type: operational
mail_type: usps_first_class
check_number: 10001
print_speed: core
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/check_editable'
example:
description: Demo Check
to:
description: Harry - Office
name: Harry Zhang
company: Lob
email: harry@lob.com
phone: '5555555555'
address_line1: 210 King St
address_line2: '# 6100'
address_city: San Francisco
address_state: CA
address_zip: '94107'
address_country: US
from:
name: Leore Avidar
address_line1: 210 King St
address_line2: '# 6100'
address_city: San Francisco
address_state: CA
address_zip: 94107-1741
bank_account: bank_8cad8df5354d33f
amount: 22.5
memo: rent
logo: https://s3-us-west-2.amazonaws.com/public.lob.com/assets/check_logo.png
check_bottom: tmpl_23668b406d5afef
merge_variables:
name: Harry
metadata:
memo: rafting trip
attachment: ./cool.pdf
send_date: '2017-11-01T00:00:00.000Z'
mail_type: usps_first_class
check_number: 10001
print_speed: core
encoding:
to:
style: deepObject
explode: true
from:
style: deepObject
explode: true
merge_variables:
style: deepObject
explode: true
metadata:
style: deepObject
explode: true
multipart/form-data:
schema:
$ref: '#/components/schemas/check_editable'
example:
description: Demo Check
to:
description: Harry - Office
name: Harry Zhang
company: Lob
email: harry@lob.com
phone: '5555555555'
address_line1: 210 King St
address_line2: '# 6100'
address_city: San Francisco
address_state: CA
address_zip: '94107'
address_country: US
from:
name: Leore Avidar
address_line1: 210 King St
address_line2: '# 6100'
address_city: San Francisco
address_state: CA
address_zip: 94107-1741
bank_account: bank_8cad8df5354d33f
amount: 22.5
memo: rent
logo: https://s3-us-west-2.amazonaws.com/public.lob.com/assets/check_logo.png
check_bottom: tmpl_23668b406d5afef
merge_variables:
name: Harry
metadata:
memo: rafting trip
attachment: ./cool.pdf
send_date: '2017-11-01T00:00:00.000Z'
use_type: operational
mail_type: usps_first_class
check_number: 10001
print_speed: core
encoding:
logo:
contentType: image/png, image/jpeg
responses:
'200':
$ref: '#/components/responses/post_check'
default:
$ref: '#/components/responses/mailpiece_error'
x-codeSamples:
- lang: Shell
source: "curl https://api.lob.com/v1/checks \\\n -u test_0dc8d51e0acffcb1880e0f19c79b2f5b0cc: \\\n -d 'description=Demo Check' \\\n -d 'to[name]=Harry Zhang' \\\n -d 'to[address_line1]=210 King St' \\\n -d 'to[address_line2]=# 6100' \\\n -d 'to[address_city]=San Francisco' \\\n -d 'to[address_state]=CA' \\\n -d 'to[address_zip]=94107' \\\n -d 'from=adr_210a8d4b0b76d77b' \\\n -d 'bank_account=bank_8cad8df5354d33f' \\\n -d 'amount=22.50' \\\n -d 'use_type=operational' \\\n -d 'memo=rent' \\\n --data-urlencode 'logo=https://s3-us-west-2.amazonaws.com/public.lob.com/assets/check_logo.png' \\\n --data-urlencode 'check_bottom=<h1 style=\"padding-top:4in;\">Demo Check for {{name}}</h1>' \\\n -d 'merge_variables[name]=Harry' \\\n -d 'print_speed=core'\n"
label: CURL
- lang: Typescript
source: "const checkCreate = new CheckEditable({\nto: new AddressEditable({\n name: 'Harry Zhang',\n address_line1: '210 King St',\n address_line2: '# 6100',\n address_city: 'San Francisco',\n address_state: 'CA',\n address_zip: '94107',\n}),\nfrom: 'adr_xxxx',\nbank_account: 'bank_xxxx',\namount: 100,\nuse_type: 'operational',\nprint_speed: 'core'\n});\n\ntry {\n const myCheck = await new ChecksApi(config).create(checkCreate);\n} catch (err: any) {\n console.error(err);\n}\n"
label: TYPESCRIPT
- lang: Javascript
source: "Lob.checks.create({\n description: 'Demo Check',\n bank_account: 'bank_8cad8df5354d33f',\n to: {\n name: 'Harry Zhang',\n address_line1: '210 King St',\n address_line2: '# 6100',\n address_city: 'San Francisco',\n address_state: 'CA',\n address_zip: '94107'\n },\n from: 'adr_210a8d4b0b76d77b',\n amount: 22.50,\n use_type: 'operational', \n memo: 'rent',\n logo: 'https://s3-us-west-2.amazonaws.com/public.lob.com/assets/check_logo.png',\n check_bottom: '<h1 style=\"padding-top:4in;\">Demo Check for {{name}}</h1>',\n merge_variables: {\n name: 'Harry'\n },\n print_speed: 'core'\n}, function (err, res) {\n console.log(err, res);\n});\n"
label: NODE
- lang: Ruby
source: "checkCreate = CheckEditable.new({\n description: \"Demo Check\",\n bank_account: \"bank_8cad8df5354d33f\",\n amount: 22.5,\n memo: \"rent\",\n logo: \"https://s3-us-west-2.amazonaws.com/public.lob.com/assets/check_logo.png\",\n check_bottom: \"<h1 style='padding-top:4in;'>Demo Check for {{name}}</h1>\",\n from: \"adr_210a8d4b0b76d77b\",\n to: AddressDomestic.new({\n name: \"Harry Zhang\",\n address_line1: \"210 King St\",\n address_line2: \"# 6100\",\n address_city: \"San Francisco\",\n address_state: \"CA\",\n address_zip: \"94107\",\n }),\n merge_variables: {\n name: \"Harry\"\n },\n use_type: \"operational\",\n print_speed: \"core\"\n});\n\ncheckApi = ChecksApi.new(config)\n\nbegin\n createdCheck = checkApi.create(checkCreate)\nrescue => err\n p err.message\nend\n"
label: RUBY
- lang: Python
source: "check_editable = CheckEditable(\n description = \"Demo Check\",\n bank_account = \"bank_8cad8df5354d33f\",\n amount = 22.5,\n memo = \"rent\",\n logo = \"https://s3-us-west-2.amazonaws.com/public.lob.com/assets/check_logo.png\",\n check_bottom = \"<h1 style='padding-top:4in;'>Demo Check for {{name}}</h1>\",\n _from = \"adr_210a8d4b0b76d77b\",\n to = AddressDomestic(\n name = \"Harry Zhang\",\n address_line1 = \"210 King St\",\n address_line2 = \"# 6100\",\n address_city = \"San Francisco\",\n address_state = \"CA\",\n address_zip = \"94107\",\n ),\n merge_variables = MergeVariables(\n name = \"Harry\",\n ),\n use_type = \"operational\",\n print_speed = \"core\"\n)\n\nwith ApiClient(configuration) as api_client:\n api = ChecksApi(api_client)\n\ntry:\n created_check = api.create(check_editable)\nexcept ApiException as e:\n print(e)\n"
label: PYTHON
- lang: PHP
source: "$to = new OpenAPI\\Client\\Model\\AddressEditable(\n array(\n \"name\" => \"Harry Zhang\",\n \"address_line1\" => \"210 King St\",\n \"address_line2\" => \"# 6100\",\n \"address_city\" => \"San Francisco\",\n \"address_state\" => \"CA\",\n \"address_zip\" => \"94107\",\n )\n);\n\n$merge_variables = new stdClass;\n$merge_variables->name = \"Harry\";\n\n$use_type = \"operational\";\n\n$apiInstance = new OpenAPI\\Client\\Api\\ChecksApi($config, new GuzzleHttp\\Client());\n$check_editable = new OpenAPI\\Client\\Model\\CheckEditable(\n array(\n \"description\" => \"Demo Check\",\n \"bank_account\" => \"bank_8cad8df5354d33f\",\n \"amount\" => \"22.5\",\n \"memo\" => \"rent\",\n \"logo\" => \"https://s3-us-west-2.amazonaws.com/public.lob.com/assets/check_logo.png\",\n \"check_bottom\" => \"<h1 style='padding-top:4in;'>Demo Check for {{name}}</h1>\",\n \"from\" => \"adr_210a8d4b0b76d77b\",\n \"to\" => $to,\n \"merge_variables\" => $merge_variables,\n \"use_type\" => $use_type,\n \"print_speed\" => \"core\"\n )\n);\n\ntry {\n $result = $apiInstance->create($check_editable);\n} catch (Exception $e) {\n echo $e->getMessage(), PHP_EOL;\n}\n"
- lang: Java
source: "Map<String, String> merge_variables = new HashMap<String, String>();\nmerge_variables.put(\"name\", \"Harry\");\n\nChecksApi apiInstance = new ChecksApi(config);\n\nAddressEditable to = new AddressEditable();\nto.setName(\"Harry Zhang\");\nto.setAddressLine1(\"210 King St\");\nto.setAddressLine2(\"# 6100\");\nto.setAddressCity(\"San Francisco\");\nto.setAddressState(\"CA\");\nto.setAddressZip(\"94107\");\n\ntry {\n CheckEditable checkEditable = new CheckEditable();\n checkEditable.setDescription(\"Demo Check\");\n checkEditable.setBankAccount(\"bank_8cad8df5354d33f\");\n checkEditable.setAmount(22.5f);\n checkEditable.setMemo(\"rent\");\n checkEditable.setLogo(\"https://s3-us-west-2.amazonaws.com/public.lob.com/assets/check_logo.png\");\n checkEditable.setCheckBottom(\"<h1 style='padding-top:4in;'>Demo Check for {{name}}</h1>\");\n checkEditable.setFrom(\"adr_210a8d4b0b76d77b\");\n checkEditable.setTo(to);\n checkEditable.setMergeVariables(merge_variables);\n checkEditable.setUseType(\"operational\");\n checkEditable.setPrintSpeed(\"core\");\n\n Check result = apiInstance.create(checkEditable, null);\n} catch (ApiException e) {\n e.printStackTrace();\n}\n"
label: JAVA
- lang: Elixir
source: "Lob.Check.create(%{\n description: 'Demo Check',\n bank_account: 'bank_8cad8df5354d33f',\n to: %{\n name: 'Harry Zhang',\n address_line1: '210 King St',\n address_line2: '# 6100',\n address_city: 'San Francisco',\n address_state: 'CA',\n address_zip: '94107'\n },\n from: 'adr_210a8d4b0b76d77b',\n amount: 22.50,\n memo: 'rent',\n logo: 'https://s3-us-west-2.amazonaws.com/public.lob.com/assets/check_logo.png',\n check_bottom: '<h1 style=\"padding-top:4in;\">Demo Check for {{name}}</h1>',\n merge_variables: %{\n name: 'Harry'\n },\n use_type: 'operational',\n print_speed: 'core'\n})\n"
label: ELIXIR
- lang: CSharp
source: "Dictionary<string, string> mergeVariables = new Dictionary<string, string>();\nmergeVariables.Add(\"name\", \"Harry\");\n\nChecksApi api = new ChecksApi(config);\n\nAddressEditable to = new AddressEditable(\n \"210 King St\", // addressLine1\n \"# 6100\", // addressLine2\n \"San Francisco\", // addressCity\n \"CA\", // addressState\n \"94107\", // addressZip\n default(CountryExtended), // addressCounty\n \"\", // description\n \"Harry Zhang\" // name\n);\n\nCheckEditable checkEditable = new CheckEditable(\n \"adr_249af768103d2810\", // from\n to.ToJson(), // to\n \"bank_8cad8df5354d33f\", // bank_account\n 22.5f, // amount\n \"https://s3-us-west-2.amazonaws.com/public.lob.com/assets/check_logo.png\", // logo\n \"<h1 style='padding-top:4in;'>Demo Check for {{name}}</h1>\", // checkBottom\n default(string), // attachment\n \"Demo Check\", // description\n default(Dictionary<string, string>), // metadata\n mergeVariables, // mergeVariables\n default(DateTime), // sendDate\n CheckEditable.MailTypeEnum.UspsFirstClass, // mailType\n \"rent\", // memo\n \"operational\", // use_type\n \"core\" // print_speed\n);\n\ntry {\n Check result = api.create(checkEditable, null);\n} catch (ApiException e) {\n Console.WriteLine(e.ToString());\n}\n"
label: CSHARP
- lang: Go
source: "var context = context.Background()\ncontext = context.WithValue(suite.ctx, lob.ContextBasicAuth, lob.BasicAuth{UserName: os.Getenv(\"<YOUR_API_KEY>\")})\n\nvar apiClient = *lob.NewAPIClient(configuration)\n\nvar to = *lob.NewAddressEditable()\nto.SetAddressLine1(\"210 King St\")\nto.SetAddressLine2(\"# 6100\")\nto.SetAddressCity(\"San Francisco\")\nto.SetAddressState(\"CA\")\nto.SetAddressZip(\"94107\")\nto.SetAddressCountry(lob.COUNTRYEXTENDED_US)\nto.SetDescription(\"\")\nto.SetName(\"Harry Zhang\")\n\nvar checkCreate = *lob.NewCheckEditable()\ncheckCreate.SetDescription(\"Demo Check\")\ncheckCreate.SetBankAccount(\"bank_8cad8df5354d33f\")\ncheckCreate.SetAmount(22.5)\ncheckCreate.SetMemo(\"rent\")\ncheckCreate.SetLogo(\"https://s3-us-west-2.amazonaws.com/public.lob.com/assets/check_logo.png\")\ncheckCreate.SetCheckBottom(\"<h1 style='padding-top:4in;'>Demo Check for {{name}}</h1>\")\ncheckCreate.SetFrom(\"adr_210a8d4b0b76d77b\")\ncheckCreate.SetTo(to)\ncheckCreate.SetPrintSpeed(\"core\")\n\n\ncreatedcheck, _, err := apiClient.ChecksApi.Create(context).CheckEditable(checkCreate).Execute()\n\nif err != nil {\n return err\n}\n"
label: GO
/checks/{chk_id}:
parameters:
- in: path
name: chk_id
description: id of the check
required: true
schema:
$ref: '#/components/schemas/chk_id'
get:
operationId: check_retrieve
summary: Retrieve
description: Retrieves the details of an existing check. You need only supply the unique check identifier that was returned upon check creation.
tags:
- Checks
responses:
'200':
description: Returns a check object
content:
$ref: '#/components/mediaTypes/check'
default:
$ref: '#/components/responses/mailpiece_error'
x-codeSamples:
- lang: Shell
source: "curl https://api.lob.com/v1/checks/chk_534f10783683daa0 \\\n -u test_0dc8d51e0acffcb1880e0f19c79b2f5b0cc:\n"
label: CURL
- lang: Typescript
source: "try {\n const check = await new ChecksApi(config).get('chk_xxxx');\n} catch (err: any) {\n console.error(err);\n}\n"
label: TYPESCRIPT
- lang: Javascript
source: "Lob.checks.retrieve('chk_534f10783683daa0', function (err, res) {\n console.log(err, res);\n});\n"
label: NODE
- lang: Ruby
source: "checkApi = ChecksApi.new(config)\n\nbegin\n retrievedCheck = checkApi.get(\"chk_534f10783683daa0\")\nrescue => err\n p err.message\nend\n"
label: RUBY
- lang: Python
source: "with ApiClient(configuration) as api_client:\n api = ChecksApi(api_client)\n\ntry:\n check = api.get(\"chk_534f10783683daa0\")\nexcept ApiException as e:\n print(e)\n"
label: PYTHON
- lang: PHP
source: "$apiInstance = new OpenAPI\\Client\\Api\\ChecksApi($config, new GuzzleHttp\\Client());\n\ntry {\n $result = $apiInstance->get(\"chk_534f10783683daa0\");\n} catch (Exception $e) {\n echo $e->getMessage(), PHP_EOL;\n}\n"
- lang: Java
source: "ChecksApi apiInstance = new ChecksApi(config);\n\ntry {\n Check response = apiInstance.get(\"chk_534f10783683daa0\");\n} catch (ApiException e) {\n e.printStackTrace();\n}\n"
label: JAVA
- lang: Elixir
source: 'Lob.Check.find("chk_534f10783683daa0")
'
label: ELIXIR
- lang: CSharp
source: "ChecksApi api = new ChecksApi(config);\n\ntry {\n Check response = api.get(\"chk_534f10783683daa0\");\n} catch (ApiException e) {\n Console.WriteLine(e.ToString());\n}\n"
label: CSHARP
- lang: Go
source: "var context = context.Background()\ncontext = context.WithValue(suite.ctx, lob.ContextBasicAuth, lob.BasicAuth{UserName: os.Getenv(\"<YOUR_API_KEY>\")})\n\nvar apiClient = *lob.NewAPIClient(configuration)\n\nfetchedCheck, _, err := apiClient.ChecksApi.Get(context,\"chk_534f10783683daa0\").Execute()\n\nif err != nil {\n return err\n}\n"
label: GO
delete:
operationId: check_cancel
summary: Cancel
description: Completely removes a check from production. This can only be done if the check has a `send_date` and the `send_date` has not yet passed. If the check is successfully canceled, you will not be charged for it. Read more on [cancellation windows](#section/Cancellation-Windows) and [scheduling](#section/Scheduled-Mailings). Scheduling and cancellation is a premium feature. Upgrade to the appropriate <a href="https://dashboard.lob.com/#/settings/editions" target="_blank">Print & Mail Edition</a> to gain access.
tags:
- Checks
responses:
'200':
$ref: '#/components/responses/check_canceled'
default:
$ref: '#/components/responses/mailpiece_error'
x-codeSamples:
- lang: Shell
source: "curl -X DELETE https://api.lob.com/v1/checks/chk_534f10783683daa0 \\\n -u test_0dc8d51e0acffcb1880e0f19c79b2f5b0cc:\n"
label: CURL
- lang: Typescript
source: "try {\n const deleteCheck = await new ChecksApi(config).cancel('chk_xxxx');\n} catch (err: any) {\n console.error(err);\n}\n"
label: TYPESCRIPT
- lang: Javascript
source: "Lob.checks.cancel('chk_534f10783683daa0', function (err, res) {\n console.log(err, res);\n});\n"
label: NODE
- lang: Ruby
source: "checkApi = ChecksApi.new(config)\n\nbegin\n deletedCheck = checkApi.cancel(\"chk_534f10783683daa0\")\nrescue => err\n p err.message\nend\n"
label: RUBY
- lang: Python
source: "with ApiClient(configuration) as api_client:\n api = ChecksApi(api_client)\n\ntry:\n deleted_resource = api.cancel(\"chk_534f10783683daa0\")\nexcept ApiException as e:\n print(e)\n"
label: PYTHON
- lang: PHP
source: "$apiInstance = new OpenAPI\\Client\\Api\\ChecksApi($config, new GuzzleHttp\\Client());\n\ntry {\n $result = $apiInstance->cancel(\"chk_534f10783683daa0\");\n} catch (Exception $e) {\n echo $e->getMessage(), PHP_EOL;\n}\n"
- lang: Java
source: "ChecksApi apiInstance = new ChecksApi(config);\n\ntry {\n CheckDeletion response = apiInstance.cancel(\"chk_534f10783683daa0\");\n} catch (ApiException e) {\n e.printStackTrace();\n}\n"
label: JAVA
- lang: Elixir
source: 'Lob.Check.destroy("chk_534f10783683daa0")
'
label: ELIXIR
- lang: CSharp
source: "ChecksApi api = new ChecksApi(config);\n\ntry {\n CheckDeletion response = api.cancel(\"chk_534f10783683daa0\");\n} catch (ApiException e) {\n Console.WriteLine(e.ToString());\n}\n"
label: CSHARP
- lang: Go
source: "var context = context.Background()\ncontext = context.WithValue(suite.ctx, lob.ContextBasicAuth, lob.BasicAuth{UserName: os.Getenv(\"<YOUR_API_KEY>\")})\n\nvar apiClient = *lob.NewAPIClient(configuration)\n\ndeletedCheck, _, err := apiClient.ChecksApi.Cancel(context, \"chk_534f10783683daa0\").Execute()\n\nif err != nil {\n return err\n}\n"
label: GO
components:
schemas:
bank_account_base:
type: object
required:
- routing_number
- account_number
- account_type
- signatory
properties:
description:
$ref: '#/components/schemas/resource_description'
routing_number:
description: Must be a <a href="https://www.frbservices.org/index.html" target="_blank">valid US routing number</a>.
type: string
minLength: 9
maxLength: 9
account_number:
type: string
maxLength: 17
account_type:
type: string
enum:
- company
- individual
description: The type of entity that holds the account.
signatory:
description: The signatory associated with your account. This name will be printed on checks created with this bank account. If you prefer to use a custom signature image on your checks instead, please create your bank account from the <a href="https://dashboard.lob.com/#/login" target="_blank">Dashboard</a>.
type: string
maxLength: 30
check_template:
type: string
enum:
- common
- jpm
description: The check template used for printing. The defualt value is `common`. If you bank with JP Morgan Chase and wish to use Positive Pay use the `jpm` template. `jpm` requires additional information to be provided.
fractional_routing_number:
type: string
description: The fractional routing number for your home bank account. Required for the `jpm` check template only. Please contact a bank representative if you do not know the fractional routing number associated with your home bank institution.
city:
type: string
description: The city associated with your home bank account. Required for the `jpm` check template only. Please contact a bank representative if you do not know the city associated with your home bank institution.
state:
type: string
description: The state associated with your home bank account. Required for the `jpm` check template only. Please contact a bank representative if you do not know the state associated with your home bank institution.
zipcode:
type: string
description: The zipcode associated with your home bank account. Required for the `jpm` check template only. Please contact a bank representative if you do not know the zipcode associated with your home bank institution.
metadata:
$ref: '#/components/schemas/metadata'
address_fields_us:
type: object
required:
- address_line1
- address_city
- address_state
- address_zip
properties:
address_line1:
type: string
description: The primary number, street name, and directional information.
maxLength: 64
address_line2:
type: string
description: An optional field containing any information which can't fit into line 1.
maxLength: 64
nullable: true
address_city:
type: string
maxLength: 200
address_state:
type: string
description: 2 letter state short-name code
pattern: ^[a-zA-Z]{2}$
address_zip:
type: string
description: 'Must follow the ZIP format of `12345` or ZIP+4 format of `12345-1234`.
'
pattern: ^\d{5}(-\d{4})?$
remote_file_url:
type: string
description: 'The location of a remote file. Remote URLs have a 5 MB file size limit and must be downloaded within 40 seconds.
'
pattern: ^https://[-a-zA-Z0-9@:%._+~#=/]{1,256}.(html?|pdf|png|jpg)$
status:
type: string
enum:
- processed
- rendered
- failed
description: 'A string describing the PDF render status:
* `processed` - the rendering process is currently in progress.
* `rendered` - a PDF has been successfully rendered of the mailpiece.
* `failed` - one or more issues has caused the rendering process to fail.
'
editable_no_mailtype:
type: object
properties:
description:
$ref: '#/components/schemas/resource_description'
metadata:
$ref: '#/components/schemas/metadata'
merge_variables:
$ref: '#/components/schemas/merge_variables'
send_date:
$ref: '#/components/schemas/send_date'
failure_reason_error:
type: object
description: Failure error details
properties:
url:
type: string
description: Failed URL of asset
nullable: true
host:
type: string
description: URL host
nullable: true
path:
type: string
description: URL path
nullable: true
protocol:
type: string
description: Network protocol
nullable: true
remediation:
type: string
description: Instructions on how to resolve the error
nullable: true
error_type:
type: string
description: HTTP response status code message or service defined error
nullable: true
status_code:
type: number
description: HTTP response status codes if the error is asset related
nullable: true
send_date:
type: string
description: A timestamp in ISO 8601 format which specifies a date after the current time and up to 180 days in the future to send the letter off for production. Setting a send date overrides the default [cancellation window](#section/Cancellation-Windows) applied to the mailpiece. Until the `send_date` has passed, the mailpiece can be canceled. If a date in the format `2017-11-01` is passed, it will evaluate to midnight UTC of that date (`2017-11-01T00:00:00.000Z`). If a datetime is passed, that exact time will be used. A `send_date` passed with no time zone will default to UTC, while a `send_date` passed with a time zone will be converted to UTC.
anyOf:
- format: date-time
- format: date
object:
type: string
description: Value is resource type.
date_created:
type: string
format: date-time
description: A timestamp in ISO 8601 format of the date the resource was created.
check_base:
allOf:
- $ref: '#/components/schemas/editable_no_mailtype'
- type: object
properties:
mail_type:
description: Checks must be sent `usps_first_class`
type: string
enum:
- usps_first_class
default: usps_first_class
memo:
description: Text to include on the memo line of the check.
type: string
maxLen
# --- truncated at 32 KB (97 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/lobcom/refs/heads/main/openapi/lobcom-checks-api-openapi.yml