{"info":{"_postman_id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","name":"Christian Background Checks Partner API","description":"<html><head></head><body><p><strong>Start in the sandbox.</strong> <code>baseUrl</code> points at the sandbox (<code>https://dev.partners.cbgc.io</code>): checks there are\nsimulated and never billed. Set <code>apiKey</code> to your <code>pk_test_...</code> key (get one at <a href=\"https://join.cbgc.io/#contact\">join.cbgc.io</a>).\nSwitch <code>baseUrl</code> to <code>https://partners.cbgc.io</code> with a <code>pk_live_...</code> key only when you go live. Keep keys in your\nPostman vault or environment, never in a shared collection.</p>\n<p>Order and track background checks for the churches you serve, from your own platform. Connect a church once\n(on a page we host, or with one API call), then order checks by name and email: we email each applicant to\ncollect their details and consent, and send you signed webhooks as checks progress. You never handle SSNs,\ndates of birth, card numbers or passwords.</p>\n<p>Full guide: <a href=\"https://partners.cbgc.io/docs/guide.md\">/docs/guide.md</a> · error catalog:\n<a href=\"https://partners.cbgc.io/docs/errors.md\">/docs/errors.md</a> · for AI agents: <a href=\"https://partners.cbgc.io/llms.txt\">/llms.txt</a>\nand <a href=\"https://partners.cbgc.io/llms-full.txt\">/llms-full.txt</a> (everything in one file).</p>\n<h2 id=\"how-it-works-start-here\">How it works (start here)</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Environment</th>\n<th>Base URL</th>\n<th>API keys</th>\n<th>Checks</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Test (sandbox)</td>\n<td><code>https://dev.partners.cbgc.io</code></td>\n<td><code>pk_test_...</code></td>\n<td>Not real; nothing is charged</td>\n</tr>\n<tr>\n<td>Production</td>\n<td><code>https://partners.cbgc.io</code></td>\n<td><code>pk_live_...</code></td>\n<td>Real and billed</td>\n</tr>\n</tbody>\n</table>\n</div><ol>\n<li><code>GET /status</code> with your test key: <code>200</code> means it works.</li>\n<li><code>PUT /settings</code> with your webhook URL and connect return URL.</li>\n<li>Connect a church: <code>POST /connect/sessions</code> and send its browser to <code>connectUrl</code> (or <code>POST /clients</code>).</li>\n<li><code>GET /products</code>, then <code>POST /clients/{clientRef}/checks</code> with a <code>level</code> (1 to 6).</li>\n<li>Handle <code>check.updated</code> webhooks, and reconcile nightly with <code>GET /clients/{clientRef}/checks</code>.</li>\n</ol>\n<h2 id=\"concepts\">Concepts</h2>\n<ul>\n<li><strong>Client</strong>: one church. Address it as <code>{clientRef}</code>: our <code>clientId</code> or your own <code>externalClientId</code>.</li>\n<li><strong>Check</strong>: one background check for one applicant, with a contract-stable <code>status</code> and a finer <code>stage</code>.\nUse <code>externalIdentifier</code> (your id, unique across all your clients) to match it to your records.</li>\n<li><strong>Level</strong>: products are levels 1 to 6 (<code>GET /products</code>). We translate a level to each church's own product.</li>\n<li><strong>Batch</strong>: up to 500 checks in one call. <strong>Connect session</strong>: one run of the hosted connect page for one church.</li>\n</ul>\n<h2 id=\"authentication\">Authentication</h2>\n<p>Send your API key on every request as <code>X-Api-Key: &lt;key&gt;</code> or <code>Authorization: Bearer &lt;key&gt;</code>. Keys are issued by Datasource,\nshown once, and belong in a secret manager (never in browser or app code). You can have two active keys, so you\ncan rotate without downtime. Repeated invalid keys from one IP address are answered with <code>429 rate_limited</code> for a\nminute; requests with a valid key are never throttled that way.</p>\n<h2 id=\"conventions\">Conventions</h2>\n<ul>\n<li>JSON in and out, camelCase names, UTC ISO 8601 timestamps.</li>\n<li>Errors are <a href=\"https://www.rfc-editor.org/rfc/rfc9457\">RFC 9457 problem details</a> with a stable <code>code</code> and a <code>type</code>\nlink to its catalog entry. Branch on <code>code</code>. Two documented bodies aren't problem details: <code>409 duplicate_check</code>\n(the existing check) and <code>502</code> on ordering (the <code>PENDING</code> check).</li>\n<li>Always send an <code>externalIdentifier</code> and reuse it on retries: a retry never creates a second check or bill.</li>\n<li>Ignore fields and webhook events you don't know. Changes are additive; a breaking change gets 90 days' notice in\nthe changelog (<code>/docs/changelog.md</code>).</li>\n</ul>\n<h2 id=\"compliance\">Compliance</h2>\n<p>Datasource is the consumer reporting agency. The church is the end user and makes, and is responsible for, all decisions,\nincluding adverse action, which is handled in its portal.</p>\n</body></html>","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json","toc":[],"owner":"60196321","collectionId":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","publishedId":"2sBYHaQHM3","public":true,"customColor":{"top-bar":"FFFFFF","right-sidebar":"303030","highlight":"FF6C37"},"publishDate":"2026-11-14T18:08:27.000Z"},"item":[{"name":"Account","item":[{"name":"Check your API key","id":"e2705125-8e06-4f52-a825-798c1ca63059","request":{"method":"GET","header":[{"key":"Accept","value":"text/plain"}],"url":"https://dev.partners.cbgc.io/status","description":"<p>Returns <code>200</code> with a short message when the API key is valid. Useful for verifying setup and key rotation.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-Api-Key"},{"key":"value","value":""}]},"isInherited":true,"source":{"_postman_id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","name":"Christian Background Checks Partner API","type":"collection"}},"urlObject":{"path":["status"],"host":["https://dev.partners.cbgc.io"],"query":[],"variable":[]}},"response":[{"id":"2410154f-6180-4c40-b700-b123ef9f9af1","name":"The key is valid. The body is plain text.","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"text/plain"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":"https://dev.partners.cbgc.io/status"},"status":"OK","code":200,"_postman_previewlanguage":"text","header":[{"key":"Content-Type","value":"text/plain"}],"cookie":[],"responseTime":null,"body":"string"},{"id":"cc8fd367-8a6c-4244-8c34-f80544c1250f","name":"`invalid_api_key`: the API key is missing, invalid or revoked, or it's a test key on production (or the reverse). Don't retry until the key is fixed.","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":"https://dev.partners.cbgc.io/status"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#invalid_api_key\",\n  \"title\": \"Invalid API key\",\n  \"status\": 401,\n  \"detail\": \"The API key is missing, invalid or revoked.\",\n  \"code\": \"invalid_api_key\"\n}"},{"id":"d7159f99-684d-467c-8627-89979657fea2","name":"`rate_limited`: too many requests with an invalid API key from your IP address. Wait the number of seconds in `Retry-After`. Requests with a valid key are never throttled this way.","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":"https://dev.partners.cbgc.io/status"},"status":"Too Many Requests","code":429,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#rate_limited\",\n  \"title\": \"Too many requests\",\n  \"status\": 429,\n  \"detail\": \"Too many requests with an invalid API key from your IP address. Wait for the number of seconds in the Retry-After header.\",\n  \"code\": \"rate_limited\"\n}"}],"_postman_id":"e2705125-8e06-4f52-a825-798c1ca63059"}],"id":"39e6baaf-5e7b-4410-92cc-e01944cab729","description":"<p>Check that your API key works.</p>\n","_postman_id":"39e6baaf-5e7b-4410-92cc-e01944cab729","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-Api-Key"},{"key":"value","value":""}]},"isInherited":true,"source":{"_postman_id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","name":"Christian Background Checks Partner API","type":"collection"}}},{"name":"Settings","item":[{"name":"Get your settings","id":"e425d73f-d9a6-4242-8288-e20ca02a169b","request":{"method":"GET","header":[{"key":"Accept","value":"application/json"}],"url":"https://dev.partners.cbgc.io/settings","description":"<p>Returns the webhook URL and the connect return URLs you registered, and how many years a completed check stays valid.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-Api-Key"},{"key":"value","value":""}]},"isInherited":true,"source":{"_postman_id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","name":"Christian Background Checks Partner API","type":"collection"}},"urlObject":{"path":["settings"],"host":["https://dev.partners.cbgc.io"],"query":[],"variable":[]}},"response":[{"id":"eac8f591-4224-4fae-a53e-8e0f7a13569a","name":"Your registered webhook URL and connect return URLs.","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":"https://dev.partners.cbgc.io/settings"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n  \"webhookUrl\": \"http://yPQuQYeppHwRPpNLMM.xlyNYp6lAfbxBJ-AqH91rPNQ4+P+XiykKnQ2HyiN\",\n  \"connectReturnUrls\": [\n    \"http://ggjkvdAaymQymmY.pgqioY86KilpYP4MujPnEvpRJ34SjrGFKKivFMVOg3wOFM\",\n    \"https://eFnSHaSJYmdARXPZzAXApeBJ.eiaLqdo7ZopsiHQHTWJ-6yqp+V4Xy\"\n  ],\n  \"checkValidityYears\": \"346\"\n}"},{"id":"15b6e704-8ff3-4244-be1d-147e689ca73e","name":"`invalid_api_key`: the API key is missing, invalid or revoked, or it's a test key on production (or the reverse). Don't retry until the key is fixed.","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":"https://dev.partners.cbgc.io/settings"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#invalid_api_key\",\n  \"title\": \"Invalid API key\",\n  \"status\": 401,\n  \"detail\": \"The API key is missing, invalid or revoked.\",\n  \"code\": \"invalid_api_key\"\n}"},{"id":"1bf3e901-a190-4049-9cbf-9a013300db34","name":"`rate_limited`: too many requests with an invalid API key from your IP address. Wait the number of seconds in `Retry-After`. Requests with a valid key are never throttled this way.","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":"https://dev.partners.cbgc.io/settings"},"status":"Too Many Requests","code":429,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#rate_limited\",\n  \"title\": \"Too many requests\",\n  \"status\": 429,\n  \"detail\": \"Too many requests with an invalid API key from your IP address. Wait for the number of seconds in the Retry-After header.\",\n  \"code\": \"rate_limited\"\n}"}],"_postman_id":"e425d73f-d9a6-4242-8288-e20ca02a169b"},{"name":"Update your settings","id":"9f9673e0-0577-4641-9cd6-3cf460df4da6","request":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"webhookUrl\": null,\n  \"connectReturnUrls\": null,\n  \"checkValidityYears\": \"66109\"\n}","options":{"raw":{"language":"json"}}},"url":"https://dev.partners.cbgc.io/settings","description":"<p>Registers where we send webhooks and which return URLs the connect page may send a browser back to.</p>\n<p><code>webhookUrl</code> must be an https:// URL whose host resolves only to public addresses; it is checked again\nwhenever a webhook is sent. Send an empty <code>webhookUrl</code> to stop webhooks (poll instead).\n<code>connectReturnUrls</code> holds up to 10 https:// URLs. A <code>returnUrl</code> in <code>POST /connect/sessions</code> must match one\nof them exactly. This call replaces both values; send the complete set.</p>\n<p><code>checkValidityYears</code> (1 to 5, default 2) is how long a <code>CLEAR</code> or <code>REVIEW</code> check stays valid: its\n<code>expirationDate</code> is its completion plus that many years, and until then ordering the same applicant\nagain needs <code>forceReorder</code>. Omit it to keep the current value. A change applies to checks completed\nafter it.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-Api-Key"},{"key":"value","value":""}]},"isInherited":true,"source":{"_postman_id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","name":"Christian Background Checks Partner API","type":"collection"}},"urlObject":{"path":["settings"],"host":["https://dev.partners.cbgc.io"],"query":[],"variable":[]}},"response":[{"id":"b394cb15-5490-4253-a3af-1f9814429e8d","name":"The saved settings. Both values were replaced with what you sent.","originalRequest":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"body":{"mode":"raw","raw":"{\n  \"webhookUrl\": null,\n  \"connectReturnUrls\": null,\n  \"checkValidityYears\": \"66109\"\n}","options":{"raw":{"language":"json"}}},"url":"https://dev.partners.cbgc.io/settings"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n  \"webhookUrl\": \"http://yPQuQYeppHwRPpNLMM.xlyNYp6lAfbxBJ-AqH91rPNQ4+P+XiykKnQ2HyiN\",\n  \"connectReturnUrls\": [\n    \"http://ggjkvdAaymQymmY.pgqioY86KilpYP4MujPnEvpRJ34SjrGFKKivFMVOg3wOFM\",\n    \"https://eFnSHaSJYmdARXPZzAXApeBJ.eiaLqdo7ZopsiHQHTWJ-6yqp+V4Xy\"\n  ],\n  \"checkValidityYears\": \"346\"\n}"},{"id":"982034bb-b1a8-4ecc-a4f3-fad53d699c4e","name":"`validation_failed`: a URL isn't `https://`, has credentials or a fragment, or its host resolves to a private address, or there are more than 10 return URLs. Nothing was changed.","originalRequest":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"body":{"mode":"raw","raw":"{\n  \"webhookUrl\": null,\n  \"connectReturnUrls\": null,\n  \"checkValidityYears\": \"66109\"\n}","options":{"raw":{"language":"json"}}},"url":"https://dev.partners.cbgc.io/settings"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#validation_failed\",\n  \"title\": \"One or more validation errors occurred.\",\n  \"status\": 400,\n  \"errors\": {\n    \"webhookUrl\": [\n      \"webhookUrl must use https://.\"\n    ]\n  },\n  \"code\": \"validation_failed\"\n}"},{"id":"77c3f3b2-423e-4dd7-a3cc-5f8411521c8e","name":"`invalid_api_key`: the API key is missing, invalid or revoked, or it's a test key on production (or the reverse). Don't retry until the key is fixed.","originalRequest":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"body":{"mode":"raw","raw":"{\n  \"webhookUrl\": null,\n  \"connectReturnUrls\": null,\n  \"checkValidityYears\": \"66109\"\n}","options":{"raw":{"language":"json"}}},"url":"https://dev.partners.cbgc.io/settings"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#invalid_api_key\",\n  \"title\": \"Invalid API key\",\n  \"status\": 401,\n  \"detail\": \"The API key is missing, invalid or revoked.\",\n  \"code\": \"invalid_api_key\"\n}"},{"id":"fb011160-08ad-4268-aad8-3ea144c2ee02","name":"`rate_limited`: too many requests with an invalid API key from your IP address. Wait the number of seconds in `Retry-After`. Requests with a valid key are never throttled this way.","originalRequest":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"body":{"mode":"raw","raw":"{\n  \"webhookUrl\": null,\n  \"connectReturnUrls\": null,\n  \"checkValidityYears\": \"66109\"\n}","options":{"raw":{"language":"json"}}},"url":"https://dev.partners.cbgc.io/settings"},"status":"Too Many Requests","code":429,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#rate_limited\",\n  \"title\": \"Too many requests\",\n  \"status\": 429,\n  \"detail\": \"Too many requests with an invalid API key from your IP address. Wait for the number of seconds in the Retry-After header.\",\n  \"code\": \"rate_limited\"\n}"}],"_postman_id":"9f9673e0-0577-4641-9cd6-3cf460df4da6"},{"name":"Rotate your webhook secret","id":"c90bdbf3-5d12-449c-a45a-40e05e8952d0","request":{"method":"POST","header":[{"key":"Accept","value":"application/json"}],"url":"https://dev.partners.cbgc.io/settings/webhook-secret","description":"<p>Creates a new webhook signing secret and returns it. <strong>It is shown only once</strong>; store it before switching\nyour signature check over. The old secret stops working immediately, so webhooks sent before you switch\nwill fail verification until you do.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-Api-Key"},{"key":"value","value":""}]},"isInherited":true,"source":{"_postman_id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","name":"Christian Background Checks Partner API","type":"collection"}},"urlObject":{"path":["settings","webhook-secret"],"host":["https://dev.partners.cbgc.io"],"query":[],"variable":[]}},"response":[{"id":"c055cea2-672c-4bbc-902e-51d2fa21aab5","name":"The new secret, shown only this once. The old one stopped working immediately.","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":"https://dev.partners.cbgc.io/settings/webhook-secret"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n  \"webhookSecret\": \"string\"\n}"},{"id":"5fe8971c-3353-48bb-8acc-fb234a979ae7","name":"`invalid_api_key`: the API key is missing, invalid or revoked, or it's a test key on production (or the reverse). Don't retry until the key is fixed.","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":"https://dev.partners.cbgc.io/settings/webhook-secret"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#invalid_api_key\",\n  \"title\": \"Invalid API key\",\n  \"status\": 401,\n  \"detail\": \"The API key is missing, invalid or revoked.\",\n  \"code\": \"invalid_api_key\"\n}"},{"id":"c4b49a6d-f193-44a6-8843-95aac7a484db","name":"`rate_limited`: too many requests with an invalid API key from your IP address. Wait the number of seconds in `Retry-After`. Requests with a valid key are never throttled this way.","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":"https://dev.partners.cbgc.io/settings/webhook-secret"},"status":"Too Many Requests","code":429,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#rate_limited\",\n  \"title\": \"Too many requests\",\n  \"status\": 429,\n  \"detail\": \"Too many requests with an invalid API key from your IP address. Wait for the number of seconds in the Retry-After header.\",\n  \"code\": \"rate_limited\"\n}"}],"_postman_id":"c90bdbf3-5d12-449c-a45a-40e05e8952d0"},{"name":"Send a test webhook","id":"bec1fd62-4dae-4b21-b25c-cd2051775c70","request":{"method":"POST","header":[{"key":"Accept","value":"application/json"}],"url":"https://dev.partners.cbgc.io/settings/webhook-test","description":"<p>Sends a signed <code>ping</code> event to your webhook URL, so you can verify your endpoint and your signature check.\nDelivery is asynchronous and retried like any other webhook.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-Api-Key"},{"key":"value","value":""}]},"isInherited":true,"source":{"_postman_id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","name":"Christian Background Checks Partner API","type":"collection"}},"urlObject":{"path":["settings","webhook-test"],"host":["https://dev.partners.cbgc.io"],"query":[],"variable":[]}},"response":[{"id":"63bcfdf1-d9f4-4a95-b778-57b2582ac216","name":"A signed `ping` was queued for delivery to your webhook URL.","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":"https://dev.partners.cbgc.io/settings/webhook-test"},"status":"Accepted","code":202,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n  \"status\": \"QUEUED\"\n}"},{"id":"ac1b47a9-2e36-483e-85ef-944c5b0f2fce","name":"`validation_failed`: no webhook URL is registered. Register one with `PUT /settings` first.","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":"https://dev.partners.cbgc.io/settings/webhook-test"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#validation_failed\",\n  \"title\": \"One or more validation errors occurred.\",\n  \"status\": 400,\n  \"errors\": {\n    \"webhookUrl\": [\n      \"Register a webhookUrl with PUT /settings first.\"\n    ]\n  },\n  \"code\": \"validation_failed\"\n}"},{"id":"a16e0c7e-b488-4b5d-a60b-7580a6d2685e","name":"`invalid_api_key`: the API key is missing, invalid or revoked, or it's a test key on production (or the reverse). Don't retry until the key is fixed.","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":"https://dev.partners.cbgc.io/settings/webhook-test"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#invalid_api_key\",\n  \"title\": \"Invalid API key\",\n  \"status\": 401,\n  \"detail\": \"The API key is missing, invalid or revoked.\",\n  \"code\": \"invalid_api_key\"\n}"},{"id":"5256b197-2505-4af8-86d3-64c35683e8d5","name":"`rate_limited`: too many requests with an invalid API key from your IP address. Wait the number of seconds in `Retry-After`. Requests with a valid key are never throttled this way.","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":"https://dev.partners.cbgc.io/settings/webhook-test"},"status":"Too Many Requests","code":429,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#rate_limited\",\n  \"title\": \"Too many requests\",\n  \"status\": 429,\n  \"detail\": \"Too many requests with an invalid API key from your IP address. Wait for the number of seconds in the Retry-After header.\",\n  \"code\": \"rate_limited\"\n}"}],"_postman_id":"bec1fd62-4dae-4b21-b25c-cd2051775c70"},{"name":"List recent webhook deliveries","id":"710d4720-037a-4232-8096-6b263d5d9793","request":{"method":"GET","header":[{"key":"Accept","value":"application/json"}],"url":"https://dev.partners.cbgc.io/settings/webhook-deliveries?limit=2&eventId=string&checkId=string","description":"<p>Every attempt to deliver a webhook to your endpoint in the last 30 days, newest first: the event, its\n<code>eventId</code>, the check (for check events), your endpoint's HTTP status and how long it took. Use it to see\nwhat was sent and how your endpoint answered. Filter with <code>eventId</code> or <code>checkId</code>; <code>limit</code> is 1 to 200\n(default 50). Bodies are never stored, ours or yours: re-send a check's current state with\n<code>POST /clients/{clientRef}/checks/{checkRef}/replay-webhook</code>.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-Api-Key"},{"key":"value","value":""}]},"isInherited":true,"source":{"_postman_id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","name":"Christian Background Checks Partner API","type":"collection"}},"urlObject":{"path":["settings","webhook-deliveries"],"host":["https://dev.partners.cbgc.io"],"query":[{"description":{"content":"<p>Page size, 1 to 500 (larger values are clamped). Defaults to 100.</p>\n","type":"text/plain"},"key":"limit","value":"2"},{"key":"eventId","value":"string"},{"key":"checkId","value":"string"}],"variable":[]}},"response":[{"id":"9ae99d72-b5c9-425d-b486-a5f54b20cb1e","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":{"raw":"https://dev.partners.cbgc.io/settings/webhook-deliveries?limit=2&eventId=string&checkId=string","host":["https://dev.partners.cbgc.io"],"path":["settings","webhook-deliveries"],"query":[{"key":"limit","value":"2","description":"Page size, 1 to 500 (larger values are clamped). Defaults to 100."},{"key":"eventId","value":"string"},{"key":"checkId","value":"string"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"[\n  {\n    \"event\": \"string\",\n    \"eventId\": \"string\",\n    \"checkId\": null,\n    \"attempt\": \"-21\",\n    \"attemptedAt\": \"1983-12-22T19:25:56.422Z\",\n    \"statusCode\": \"-4\",\n    \"succeeded\": false,\n    \"error\": \"string\",\n    \"durationMs\": \"-158907\"\n  },\n  {\n    \"event\": \"string\",\n    \"eventId\": \"string\",\n    \"checkId\": \"string\",\n    \"attempt\": \"0\",\n    \"attemptedAt\": \"1951-10-28T05:03:50.547Z\",\n    \"statusCode\": \"3\",\n    \"succeeded\": true,\n    \"error\": \"string\",\n    \"durationMs\": \"-0\"\n  }\n]"},{"id":"018de92d-3d9b-414d-b2bb-945890608859","name":"Bad Request","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":{"raw":"https://dev.partners.cbgc.io/settings/webhook-deliveries?limit=2&eventId=string&checkId=string","host":["https://dev.partners.cbgc.io"],"path":["settings","webhook-deliveries"],"query":[{"key":"limit","value":"2","description":"Page size, 1 to 500 (larger values are clamped). Defaults to 100."},{"key":"eventId","value":"string"},{"key":"checkId","value":"string"}]}},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": null,\n  \"title\": null,\n  \"status\": \"-0\",\n  \"detail\": \"string\",\n  \"instance\": null,\n  \"errors\": {\n    \"key_0\": [\n      \"string\",\n      \"string\"\n    ],\n    \"key_1\": [\n      \"string\",\n      \"string\"\n    ]\n  }\n}"},{"id":"1f6e3894-477d-4821-9f59-10567b725500","name":"`invalid_api_key`: the API key is missing, invalid or revoked, or it's a test key on production (or the reverse). Don't retry until the key is fixed.","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":{"raw":"https://dev.partners.cbgc.io/settings/webhook-deliveries?limit=2&eventId=string&checkId=string","host":["https://dev.partners.cbgc.io"],"path":["settings","webhook-deliveries"],"query":[{"key":"limit","value":"2","description":"Page size, 1 to 500 (larger values are clamped). Defaults to 100."},{"key":"eventId","value":"string"},{"key":"checkId","value":"string"}]}},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#invalid_api_key\",\n  \"title\": \"Invalid API key\",\n  \"status\": 401,\n  \"detail\": \"The API key is missing, invalid or revoked.\",\n  \"code\": \"invalid_api_key\"\n}"},{"id":"602ff54f-60fe-46ba-90c4-94b14848dcaf","name":"`rate_limited`: too many requests with an invalid API key from your IP address. Wait the number of seconds in `Retry-After`. Requests with a valid key are never throttled this way.","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":{"raw":"https://dev.partners.cbgc.io/settings/webhook-deliveries?limit=2&eventId=string&checkId=string","host":["https://dev.partners.cbgc.io"],"path":["settings","webhook-deliveries"],"query":[{"key":"limit","value":"2","description":"Page size, 1 to 500 (larger values are clamped). Defaults to 100."},{"key":"eventId","value":"string"},{"key":"checkId","value":"string"}]}},"status":"Too Many Requests","code":429,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#rate_limited\",\n  \"title\": \"Too many requests\",\n  \"status\": 429,\n  \"detail\": \"Too many requests with an invalid API key from your IP address. Wait for the number of seconds in the Retry-After header.\",\n  \"code\": \"rate_limited\"\n}"}],"_postman_id":"710d4720-037a-4232-8096-6b263d5d9793"}],"id":"7bfb79e0-8b57-494b-be09-96fe44e7cb53","description":"<p>Your webhook URL, the return URLs the connect page may send a browser back to, and your webhook signing secret.</p>\n","_postman_id":"7bfb79e0-8b57-494b-be09-96fe44e7cb53","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-Api-Key"},{"key":"value","value":""}]},"isInherited":true,"source":{"_postman_id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","name":"Christian Background Checks Partner API","type":"collection"}}},{"name":"Connect","item":[{"name":"Create a connect session","id":"1b7640d2-ab43-453b-afac-8a1ca595f8e9","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"externalClientId\": \"string\",\n  \"churchName\": \"string\",\n  \"returnUrl\": \"https://SBhcobkYvziLHweo.wwglE3MrIVKylbqgJ7mY6ybAvMKMhAfqlH9+M3z,GSda+4Nnk2tg.AmU9yNR9F,T\",\n  \"prefill\": null\n}","options":{"raw":{"language":"json"}}},"url":"https://dev.partners.cbgc.io/connect/sessions","description":"<p>Starts the hosted connect page for one church. Call this from your server when the church's admin clicks\nyour \"Connect\" button, then send their browser to the returned <code>connectUrl</code> (a normal top-level\nnavigation; no iframe). The link works once and must be opened within 15 minutes.</p>\n<p>The church enters its details and billing (card or invoice) on our page, so you never see card data or\npasswords. When it finishes we send the browser back to your <code>returnUrl</code> with <code>session_id</code> and <code>state</code>\n(<code>completed</code>, <code>cancelled</code> or <code>migration_requested</code>) and no secrets, and send a <code>client.connected</code> webhook.\n<strong>Confirm with the webhook or <code>GET /connect/sessions/{sessionId}</code> before treating the church as connected.</strong></p>\n<p><code>returnUrl</code> must exactly match one of your registered <code>connectReturnUrls</code> (<code>PUT /settings</code>).\n<code>409</code> if <code>externalClientId</code> is already an active client.</p>\n<p>The church's primary contact gets an email from Datasource with their sign-in and a temporary password (changed at first\nsign-in). Submitting the page twice is safe: the second submit is told the account is being created, and only one\naccount is ever made. Invoice billing uses the billing setup copied from your account plus the church's billing\ncontact; a card is entered by the church on our page and never reaches you.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-Api-Key"},{"key":"value","value":""}]},"isInherited":true,"source":{"_postman_id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","name":"Christian Background Checks Partner API","type":"collection"}},"urlObject":{"path":["connect","sessions"],"host":["https://dev.partners.cbgc.io"],"query":[],"variable":[]}},"response":[{"id":"ca3027ca-e2e5-4dad-a62d-b7d3035ade4b","name":"The session was created. Send the church's browser to `connectUrl` within 15 minutes; the link works once.","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"body":{"mode":"raw","raw":"{\n  \"externalClientId\": \"string\",\n  \"churchName\": \"string\",\n  \"returnUrl\": \"https://SBhcobkYvziLHweo.wwglE3MrIVKylbqgJ7mY6ybAvMKMhAfqlH9+M3z,GSda+4Nnk2tg.AmU9yNR9F,T\",\n  \"prefill\": null\n}","options":{"raw":{"language":"json"}}},"url":"https://dev.partners.cbgc.io/connect/sessions"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n  \"sessionId\": \"8f285f7e-f14f-0483-ca6e-c0ceca5f5d49\",\n  \"connectUrl\": \"https://tUZkML.agObdL9EO1aqpw2QbU1hhKrtLK0zgXaTybS9kc-tH-b92Qv9wN\",\n  \"expiresAt\": \"2009-11-27T22:39:25.683Z\"\n}"},{"id":"c204a636-c63c-4653-aafa-3a964a168e63","name":"`validation_failed` (a field is missing or too long) or `invalid_return_url` (`returnUrl` isn't one of your registered `connectReturnUrls`; register it with `PUT /settings`). Nothing was created.","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"body":{"mode":"raw","raw":"{\n  \"externalClientId\": \"string\",\n  \"churchName\": \"string\",\n  \"returnUrl\": \"https://SBhcobkYvziLHweo.wwglE3MrIVKylbqgJ7mY6ybAvMKMhAfqlH9+M3z,GSda+4Nnk2tg.AmU9yNR9F,T\",\n  \"prefill\": null\n}","options":{"raw":{"language":"json"}}},"url":"https://dev.partners.cbgc.io/connect/sessions"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#invalid_return_url\",\n  \"title\": \"Return URL not registered\",\n  \"status\": 400,\n  \"detail\": \"returnUrl must exactly match one of your registered connectReturnUrls. Register it with PUT /settings first.\",\n  \"code\": \"invalid_return_url\"\n}"},{"id":"3a0bf44a-51b5-402b-8d7e-0bf167c1b54a","name":"`invalid_api_key`: the API key is missing, invalid or revoked, or it's a test key on production (or the reverse). Don't retry until the key is fixed.","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"body":{"mode":"raw","raw":"{\n  \"externalClientId\": \"string\",\n  \"churchName\": \"string\",\n  \"returnUrl\": \"https://SBhcobkYvziLHweo.wwglE3MrIVKylbqgJ7mY6ybAvMKMhAfqlH9+M3z,GSda+4Nnk2tg.AmU9yNR9F,T\",\n  \"prefill\": null\n}","options":{"raw":{"language":"json"}}},"url":"https://dev.partners.cbgc.io/connect/sessions"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#invalid_api_key\",\n  \"title\": \"Invalid API key\",\n  \"status\": 401,\n  \"detail\": \"The API key is missing, invalid or revoked.\",\n  \"code\": \"invalid_api_key\"\n}"},{"id":"7a9925d4-0de1-429a-9994-e8efb1c2a364","name":"`client_already_connected`: this `externalClientId` is already an active client. Use it (`GET /clients?externalClientId=`) instead of connecting again.","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"body":{"mode":"raw","raw":"{\n  \"externalClientId\": \"string\",\n  \"churchName\": \"string\",\n  \"returnUrl\": \"https://SBhcobkYvziLHweo.wwglE3MrIVKylbqgJ7mY6ybAvMKMhAfqlH9+M3z,GSda+4Nnk2tg.AmU9yNR9F,T\",\n  \"prefill\": null\n}","options":{"raw":{"language":"json"}}},"url":"https://dev.partners.cbgc.io/connect/sessions"},"status":"Conflict","code":409,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#client_already_connected\",\n  \"title\": \"Client already connected\",\n  \"status\": 409,\n  \"detail\": \"A client with externalClientId 'org-1042' is already active under your account.\",\n  \"code\": \"client_already_connected\"\n}"},{"id":"9426a9e3-df07-479e-9c15-3986da53a4ca","name":"`rate_limited`: more than 30 sessions were created in a minute (or too many invalid-key requests came from your IP address). Wait `Retry-After` seconds (60).","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"body":{"mode":"raw","raw":"{\n  \"externalClientId\": \"string\",\n  \"churchName\": \"string\",\n  \"returnUrl\": \"https://SBhcobkYvziLHweo.wwglE3MrIVKylbqgJ7mY6ybAvMKMhAfqlH9+M3z,GSda+4Nnk2tg.AmU9yNR9F,T\",\n  \"prefill\": null\n}","options":{"raw":{"language":"json"}}},"url":"https://dev.partners.cbgc.io/connect/sessions"},"status":"Too Many Requests","code":429,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#rate_limited\",\n  \"title\": \"Too many requests\",\n  \"status\": 429,\n  \"detail\": \"At most 30 connect sessions can be created per minute. Wait a minute and try again.\",\n  \"code\": \"rate_limited\"\n}"}],"_postman_id":"1b7640d2-ab43-453b-afac-8a1ca595f8e9"},{"name":"Get a connect session","id":"6fb0b117-7e58-40a1-a9e7-e01ddd269428","request":{"method":"GET","header":[{"key":"Accept","value":"application/json"}],"url":"https://dev.partners.cbgc.io/connect/sessions/:sessionId","description":"<p>Returns where a connect session stands: <code>created</code>, <code>opened</code>, <code>completed</code> (with the new <code>clientId</code>),\n<code>cancelled</code>, <code>expired</code> or <code>migration_requested</code>. Use it, or the <code>client.connected</code> webhook, to confirm a\nchurch is connected after the browser returns to you.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-Api-Key"},{"key":"value","value":""}]},"isInherited":true,"source":{"_postman_id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","name":"Christian Background Checks Partner API","type":"collection"}},"urlObject":{"path":["connect","sessions",":sessionId"],"host":["https://dev.partners.cbgc.io"],"query":[],"variable":[{"id":"d1320430-dd8a-4390-a75a-09cd5e05fc53","description":{"content":"<p>The session's <code>sessionId</code> (a UUID), from <code>POST /connect/sessions</code> or the <code>session_id</code> on the browser's return. Only your own sessions resolve.</p>\n","type":"text/plain"},"type":"any","value":"string","key":"sessionId"}]}},"response":[{"id":"1034644b-c64f-4839-8333-046cb5dd4ac1","name":"Where the session stands. `clientId` is set once `state` is `completed`.","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":{"raw":"https://dev.partners.cbgc.io/connect/sessions/:sessionId","host":["https://dev.partners.cbgc.io"],"path":["connect","sessions",":sessionId"],"variable":[{"key":"sessionId","value":"string","description":"The session's `sessionId` (a UUID), from `POST /connect/sessions` or the `session_id` on the browser's return. Only your own sessions resolve."}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n  \"sessionId\": \"27b8de6b-4678-fcac-9399-958de7832c5e\",\n  \"externalClientId\": \"string\",\n  \"state\": \"created\",\n  \"clientId\": \"string\"\n}"},{"id":"708055e6-a414-45ff-b68f-40948ad39a82","name":"`invalid_api_key`: the API key is missing, invalid or revoked, or it's a test key on production (or the reverse). Don't retry until the key is fixed.","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":{"raw":"https://dev.partners.cbgc.io/connect/sessions/:sessionId","host":["https://dev.partners.cbgc.io"],"path":["connect","sessions",":sessionId"],"variable":[{"key":"sessionId","value":"string","description":"The session's `sessionId` (a UUID), from `POST /connect/sessions` or the `session_id` on the browser's return. Only your own sessions resolve."}]}},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#invalid_api_key\",\n  \"title\": \"Invalid API key\",\n  \"status\": 401,\n  \"detail\": \"The API key is missing, invalid or revoked.\",\n  \"code\": \"invalid_api_key\"\n}"},{"id":"e457bd80-231c-4355-a87c-8963e86c566d","name":"`session_not_found`: no session with that id exists under your account.","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":{"raw":"https://dev.partners.cbgc.io/connect/sessions/:sessionId","host":["https://dev.partners.cbgc.io"],"path":["connect","sessions",":sessionId"],"variable":[{"key":"sessionId","value":"string","description":"The session's `sessionId` (a UUID), from `POST /connect/sessions` or the `session_id` on the browser's return. Only your own sessions resolve."}]}},"status":"Not Found","code":404,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#session_not_found\",\n  \"title\": \"Connect session not found\",\n  \"status\": 404,\n  \"detail\": \"No connect session '8d2f6c14-3b7a-4e0e-9c55-1a9b7d3e2f60' exists under your account.\",\n  \"code\": \"session_not_found\"\n}"},{"id":"8b730ec9-a071-47b0-83bd-0b6d7e3db6dc","name":"`rate_limited`: too many requests with an invalid API key from your IP address. Wait the number of seconds in `Retry-After`. Requests with a valid key are never throttled this way.","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":{"raw":"https://dev.partners.cbgc.io/connect/sessions/:sessionId","host":["https://dev.partners.cbgc.io"],"path":["connect","sessions",":sessionId"],"variable":[{"key":"sessionId","value":"string","description":"The session's `sessionId` (a UUID), from `POST /connect/sessions` or the `session_id` on the browser's return. Only your own sessions resolve."}]}},"status":"Too Many Requests","code":429,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#rate_limited\",\n  \"title\": \"Too many requests\",\n  \"status\": 429,\n  \"detail\": \"Too many requests with an invalid API key from your IP address. Wait for the number of seconds in the Retry-After header.\",\n  \"code\": \"rate_limited\"\n}"}],"_postman_id":"6fb0b117-7e58-40a1-a9e7-e01ddd269428"}],"id":"fa3420fa-eb77-4060-a919-a1857a43cc5b","description":"<p>The hosted connect page: a church enters its own details and billing on a page we host, so you never see card data or passwords.</p>\n","_postman_id":"fa3420fa-eb77-4060-a919-a1857a43cc5b","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-Api-Key"},{"key":"value","value":""}]},"isInherited":true,"source":{"_postman_id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","name":"Christian Background Checks Partner API","type":"collection"}}},{"name":"Clients","item":[{"name":"Create a client","id":"db06a676-d321-45e6-a8f3-0487dc551db0","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"legalCompanyName\": \"string\",\n  \"primaryContactFirstName\": \"string\",\n  \"primaryContactLastName\": \"string\",\n  \"primaryContactEmail\": \"ySwHn0b2Q@hgEhBAolugcoYqvzsHJNaR.yrl\",\n  \"primaryContactPhone\": \"string\",\n  \"streetLine1\": \"string\",\n  \"city\": \"string\",\n  \"state\": \"string\",\n  \"postalCode\": \"string\",\n  \"externalClientId\": \"string\",\n  \"dbaCompanyName\": \"string\",\n  \"companyPhone\": null,\n  \"streetLine2\": \"string\",\n  \"country\": \"string\",\n  \"billingStreetLine1\": null,\n  \"billingStreetLine2\": null,\n  \"billingCity\": null,\n  \"billingState\": \"string\",\n  \"billingPostalCode\": null,\n  \"billingCountry\": \"string\"\n}","options":{"raw":{"language":"json"}}},"url":"https://dev.partners.cbgc.io/clients","description":"<p>Provisions one of your customers as a client under your account. Each customer needs its own client before\nyou can order checks for them.</p>\n<p>A portal login is created for the primary contact, and Datasource emails them their username and a temporary password\n(changed at first sign-in). No password is ever returned to you; <code>welcomeEmailSent</code> says whether the email went.</p>\n<p>The new client starts with your account's packages and settings.</p>\n<p>Send your own id for the customer as <code>externalClientId</code> and you never have to store ours: every\n<code>{clientRef}</code> path accepts it. It is unique among your clients (<code>409</code> if already used).</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-Api-Key"},{"key":"value","value":""}]},"isInherited":true,"source":{"_postman_id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","name":"Christian Background Checks Partner API","type":"collection"}},"urlObject":{"path":["clients"],"host":["https://dev.partners.cbgc.io"],"query":[],"variable":[]}},"response":[{"id":"97fa2a85-5ee2-4b4e-8e0d-c4f3b3d73e66","name":"The client was created, with a portal login for its primary contact. The contact gets their username and a temporary password by email from Datasource; no password is ever returned to you. `welcomeEmailSent` is false if that email couldn't be sent (contac","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"body":{"mode":"raw","raw":"{\n  \"legalCompanyName\": \"string\",\n  \"primaryContactFirstName\": \"string\",\n  \"primaryContactLastName\": \"string\",\n  \"primaryContactEmail\": \"ySwHn0b2Q@hgEhBAolugcoYqvzsHJNaR.yrl\",\n  \"primaryContactPhone\": \"string\",\n  \"streetLine1\": \"string\",\n  \"city\": \"string\",\n  \"state\": \"string\",\n  \"postalCode\": \"string\",\n  \"externalClientId\": \"string\",\n  \"dbaCompanyName\": \"string\",\n  \"companyPhone\": null,\n  \"streetLine2\": \"string\",\n  \"country\": \"string\",\n  \"billingStreetLine1\": null,\n  \"billingStreetLine2\": null,\n  \"billingCity\": null,\n  \"billingState\": \"string\",\n  \"billingPostalCode\": null,\n  \"billingCountry\": \"string\"\n}","options":{"raw":{"language":"json"}}},"url":"https://dev.partners.cbgc.io/clients"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n  \"primaryUsername\": \"string\",\n  \"welcomeEmailSent\": true,\n  \"clientId\": \"string\",\n  \"externalClientId\": null,\n  \"name\": \"string\",\n  \"status\": \"string\",\n  \"createdAt\": \"1949-04-30T12:39:15.356Z\",\n  \"portalUrl\": \"https://usUmKpEBTHaiwqadkWcXyWVO.armawUkQl+OL+WmxP.UqN-q8AvCgPQzGS\"\n}"},{"id":"58103ea6-40bf-4342-bfe1-0b0de4012af0","name":"`validation_failed`: a required field is missing or too long. `errors` names each field. Nothing was created; fix the request and send it again.","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"body":{"mode":"raw","raw":"{\n  \"legalCompanyName\": \"string\",\n  \"primaryContactFirstName\": \"string\",\n  \"primaryContactLastName\": \"string\",\n  \"primaryContactEmail\": \"ySwHn0b2Q@hgEhBAolugcoYqvzsHJNaR.yrl\",\n  \"primaryContactPhone\": \"string\",\n  \"streetLine1\": \"string\",\n  \"city\": \"string\",\n  \"state\": \"string\",\n  \"postalCode\": \"string\",\n  \"externalClientId\": \"string\",\n  \"dbaCompanyName\": \"string\",\n  \"companyPhone\": null,\n  \"streetLine2\": \"string\",\n  \"country\": \"string\",\n  \"billingStreetLine1\": null,\n  \"billingStreetLine2\": null,\n  \"billingCity\": null,\n  \"billingState\": \"string\",\n  \"billingPostalCode\": null,\n  \"billingCountry\": \"string\"\n}","options":{"raw":{"language":"json"}}},"url":"https://dev.partners.cbgc.io/clients"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#validation_failed\",\n  \"title\": \"One or more validation errors occurred.\",\n  \"status\": 400,\n  \"errors\": {\n    \"primaryContactEmail\": [\n      \"primaryContactEmail is required.\"\n    ]\n  },\n  \"code\": \"validation_failed\"\n}"},{"id":"0a6adc90-bb4c-45cf-90fd-95496e46992b","name":"`invalid_api_key`: the API key is missing, invalid or revoked, or it's a test key on production (or the reverse). Don't retry until the key is fixed.","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"body":{"mode":"raw","raw":"{\n  \"legalCompanyName\": \"string\",\n  \"primaryContactFirstName\": \"string\",\n  \"primaryContactLastName\": \"string\",\n  \"primaryContactEmail\": \"ySwHn0b2Q@hgEhBAolugcoYqvzsHJNaR.yrl\",\n  \"primaryContactPhone\": \"string\",\n  \"streetLine1\": \"string\",\n  \"city\": \"string\",\n  \"state\": \"string\",\n  \"postalCode\": \"string\",\n  \"externalClientId\": \"string\",\n  \"dbaCompanyName\": \"string\",\n  \"companyPhone\": null,\n  \"streetLine2\": \"string\",\n  \"country\": \"string\",\n  \"billingStreetLine1\": null,\n  \"billingStreetLine2\": null,\n  \"billingCity\": null,\n  \"billingState\": \"string\",\n  \"billingPostalCode\": null,\n  \"billingCountry\": \"string\"\n}","options":{"raw":{"language":"json"}}},"url":"https://dev.partners.cbgc.io/clients"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#invalid_api_key\",\n  \"title\": \"Invalid API key\",\n  \"status\": 401,\n  \"detail\": \"The API key is missing, invalid or revoked.\",\n  \"code\": \"invalid_api_key\"\n}"},{"id":"4145f1da-b42e-4775-9145-e3825032c7ed","name":"`external_client_id_in_use`: another of your clients already has this `externalClientId`. Nothing was created; use the existing client (`GET /clients?externalClientId=`).","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"body":{"mode":"raw","raw":"{\n  \"legalCompanyName\": \"string\",\n  \"primaryContactFirstName\": \"string\",\n  \"primaryContactLastName\": \"string\",\n  \"primaryContactEmail\": \"ySwHn0b2Q@hgEhBAolugcoYqvzsHJNaR.yrl\",\n  \"primaryContactPhone\": \"string\",\n  \"streetLine1\": \"string\",\n  \"city\": \"string\",\n  \"state\": \"string\",\n  \"postalCode\": \"string\",\n  \"externalClientId\": \"string\",\n  \"dbaCompanyName\": \"string\",\n  \"companyPhone\": null,\n  \"streetLine2\": \"string\",\n  \"country\": \"string\",\n  \"billingStreetLine1\": null,\n  \"billingStreetLine2\": null,\n  \"billingCity\": null,\n  \"billingState\": \"string\",\n  \"billingPostalCode\": null,\n  \"billingCountry\": \"string\"\n}","options":{"raw":{"language":"json"}}},"url":"https://dev.partners.cbgc.io/clients"},"status":"Conflict","code":409,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#external_client_id_in_use\",\n  \"title\": \"External client id in use\",\n  \"status\": 409,\n  \"detail\": \"Another of your clients already uses externalClientId 'org-1042'.\",\n  \"code\": \"external_client_id_in_use\"\n}"},{"id":"08c986e8-a213-4b08-8f3f-20e84afabc7d","name":"`rate_limited`: too many requests with an invalid API key from your IP address. Wait the number of seconds in `Retry-After`. Requests with a valid key are never throttled this way.","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"body":{"mode":"raw","raw":"{\n  \"legalCompanyName\": \"string\",\n  \"primaryContactFirstName\": \"string\",\n  \"primaryContactLastName\": \"string\",\n  \"primaryContactEmail\": \"ySwHn0b2Q@hgEhBAolugcoYqvzsHJNaR.yrl\",\n  \"primaryContactPhone\": \"string\",\n  \"streetLine1\": \"string\",\n  \"city\": \"string\",\n  \"state\": \"string\",\n  \"postalCode\": \"string\",\n  \"externalClientId\": \"string\",\n  \"dbaCompanyName\": \"string\",\n  \"companyPhone\": null,\n  \"streetLine2\": \"string\",\n  \"country\": \"string\",\n  \"billingStreetLine1\": null,\n  \"billingStreetLine2\": null,\n  \"billingCity\": null,\n  \"billingState\": \"string\",\n  \"billingPostalCode\": null,\n  \"billingCountry\": \"string\"\n}","options":{"raw":{"language":"json"}}},"url":"https://dev.partners.cbgc.io/clients"},"status":"Too Many Requests","code":429,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#rate_limited\",\n  \"title\": \"Too many requests\",\n  \"status\": 429,\n  \"detail\": \"Too many requests with an invalid API key from your IP address. Wait for the number of seconds in the Retry-After header.\",\n  \"code\": \"rate_limited\"\n}"},{"id":"cad14471-dc97-495c-ab6d-8e4f4527341d","name":"`upstream_unavailable`: the screening provider didn't answer. Nothing was recorded on our side; it's safe to retry.","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"body":{"mode":"raw","raw":"{\n  \"legalCompanyName\": \"string\",\n  \"primaryContactFirstName\": \"string\",\n  \"primaryContactLastName\": \"string\",\n  \"primaryContactEmail\": \"ySwHn0b2Q@hgEhBAolugcoYqvzsHJNaR.yrl\",\n  \"primaryContactPhone\": \"string\",\n  \"streetLine1\": \"string\",\n  \"city\": \"string\",\n  \"state\": \"string\",\n  \"postalCode\": \"string\",\n  \"externalClientId\": \"string\",\n  \"dbaCompanyName\": \"string\",\n  \"companyPhone\": null,\n  \"streetLine2\": \"string\",\n  \"country\": \"string\",\n  \"billingStreetLine1\": null,\n  \"billingStreetLine2\": null,\n  \"billingCity\": null,\n  \"billingState\": \"string\",\n  \"billingPostalCode\": null,\n  \"billingCountry\": \"string\"\n}","options":{"raw":{"language":"json"}}},"url":"https://dev.partners.cbgc.io/clients"},"status":"Bad Gateway","code":502,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#upstream_unavailable\",\n  \"title\": \"Screening provider unavailable\",\n  \"status\": 502,\n  \"detail\": \"The screening provider did not accept the request. Nothing was created; it is safe to retry.\",\n  \"code\": \"upstream_unavailable\"\n}"}],"_postman_id":"db06a676-d321-45e6-a8f3-0487dc551db0"},{"name":"List clients","id":"e655bc00-699f-437f-bc26-8fb12a1993b0","request":{"method":"GET","header":[{"key":"Accept","value":"application/json"}],"url":"https://dev.partners.cbgc.io/clients?externalClientId=string","description":"<p>Returns every client under your account, oldest first. Pass <code>externalClientId</code> to look up one client by your own id: the list then holds that client, or nothing.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-Api-Key"},{"key":"value","value":""}]},"isInherited":true,"source":{"_postman_id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","name":"Christian Background Checks Partner API","type":"collection"}},"urlObject":{"path":["clients"],"host":["https://dev.partners.cbgc.io"],"query":[{"description":{"content":"<p>Return only the client with this <code>externalClientId</code> (your own id for the customer, at most 100 characters). The list then has 0 or 1 items.</p>\n","type":"text/plain"},"key":"externalClientId","value":"string"}],"variable":[]}},"response":[{"id":"8721f353-84dd-462e-afce-4b007434845d","name":"Your clients, oldest first. With `externalClientId`, a list of 0 or 1 items.","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":{"raw":"https://dev.partners.cbgc.io/clients?externalClientId=string","host":["https://dev.partners.cbgc.io"],"path":["clients"],"query":[{"key":"externalClientId","value":"string","description":"Return only the client with this `externalClientId` (your own id for the customer, at most 100 characters). The list then has 0 or 1 items."}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"[\n  {\n    \"clientId\": \"string\",\n    \"externalClientId\": null,\n    \"name\": null,\n    \"status\": \"string\",\n    \"createdAt\": \"1971-01-12T21:01:21.128Z\",\n    \"portalUrl\": \"https://cjtqAoECAdfwVrvVnFheDnUrjViwPdn.ugsemN3jSsiHuxNw2qARPKft3e6fwOxfCUb7fKU\"\n  },\n  {\n    \"clientId\": \"string\",\n    \"externalClientId\": null,\n    \"name\": \"string\",\n    \"status\": \"string\",\n    \"createdAt\": \"1958-06-05T22:02:51.779Z\",\n    \"portalUrl\": \"https://eW.ybwRvzDaZoVAd7GOQ7t2iYxWZIjbTytPLCusKEgHXHNiE\"\n  }\n]"},{"id":"9d9336e2-a918-4e86-bf17-b93ffb23b94f","name":"`invalid_api_key`: the API key is missing, invalid or revoked, or it's a test key on production (or the reverse). Don't retry until the key is fixed.","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":{"raw":"https://dev.partners.cbgc.io/clients?externalClientId=string","host":["https://dev.partners.cbgc.io"],"path":["clients"],"query":[{"key":"externalClientId","value":"string","description":"Return only the client with this `externalClientId` (your own id for the customer, at most 100 characters). The list then has 0 or 1 items."}]}},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#invalid_api_key\",\n  \"title\": \"Invalid API key\",\n  \"status\": 401,\n  \"detail\": \"The API key is missing, invalid or revoked.\",\n  \"code\": \"invalid_api_key\"\n}"},{"id":"b5853034-e859-4228-bbe2-3822ce6b6ffc","name":"`rate_limited`: too many requests with an invalid API key from your IP address. Wait the number of seconds in `Retry-After`. Requests with a valid key are never throttled this way.","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":{"raw":"https://dev.partners.cbgc.io/clients?externalClientId=string","host":["https://dev.partners.cbgc.io"],"path":["clients"],"query":[{"key":"externalClientId","value":"string","description":"Return only the client with this `externalClientId` (your own id for the customer, at most 100 characters). The list then has 0 or 1 items."}]}},"status":"Too Many Requests","code":429,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#rate_limited\",\n  \"title\": \"Too many requests\",\n  \"status\": 429,\n  \"detail\": \"Too many requests with an invalid API key from your IP address. Wait for the number of seconds in the Retry-After header.\",\n  \"code\": \"rate_limited\"\n}"}],"_postman_id":"e655bc00-699f-437f-bc26-8fb12a1993b0"},{"name":"Get a client","id":"d1df1758-fdda-4e5c-938a-8c567698993d","request":{"method":"GET","header":[{"key":"Accept","value":"application/json"}],"url":"https://dev.partners.cbgc.io/clients/:clientRef","description":"<p>Returns one of your clients.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-Api-Key"},{"key":"value","value":""}]},"isInherited":true,"source":{"_postman_id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","name":"Christian Background Checks Partner API","type":"collection"}},"urlObject":{"path":["clients",":clientRef"],"host":["https://dev.partners.cbgc.io"],"query":[],"variable":[{"id":"7d3f80e4-8f26-4e6b-bc7f-7e20b8270471","description":{"content":"<p>The client: our <code>clientId</code> (<code>cl_…</code>) or your own <code>externalClientId</code> (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is <code>404 client_not_found</code>.</p>\n","type":"text/plain"},"type":"any","value":"string","key":"clientRef"}]}},"response":[{"id":"ffb9d306-fddc-421d-a493-4161f974656f","name":"The client.","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n  \"clientId\": \"string\",\n  \"externalClientId\": \"string\",\n  \"name\": null,\n  \"status\": \"string\",\n  \"createdAt\": \"2018-07-10T16:49:55.301Z\",\n  \"portalUrl\": \"https://rmxvjkZprQbL.htmcu,6CV3zpKsufnqQv+6HCMfHi3KXc8yOF55W6ocOLg2FEuAJT7aPrI84IldG91Uywn0Xc8N1q\"\n}"},{"id":"0ff84f52-6ed8-4585-9902-8f8bbb16e628","name":"`invalid_api_key`: the API key is missing, invalid or revoked, or it's a test key on production (or the reverse). Don't retry until the key is fixed.","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."}]}},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#invalid_api_key\",\n  \"title\": \"Invalid API key\",\n  \"status\": 401,\n  \"detail\": \"The API key is missing, invalid or revoked.\",\n  \"code\": \"invalid_api_key\"\n}"},{"id":"5297b9fe-a85e-415b-80d7-c58d2241825c","name":"`client_not_found`: no client with that `clientId` or `externalClientId` exists under your account. Don't retry.","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."}]}},"status":"Not Found","code":404,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#client_not_found\",\n  \"title\": \"Client not found\",\n  \"status\": 404,\n  \"detail\": \"No client 'org-1042' exists under your account.\",\n  \"code\": \"client_not_found\"\n}"},{"id":"d39c4973-5b6f-404b-bdd4-11cbb9c7ed81","name":"`rate_limited`: too many requests with an invalid API key from your IP address. Wait the number of seconds in `Retry-After`. Requests with a valid key are never throttled this way.","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."}]}},"status":"Too Many Requests","code":429,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#rate_limited\",\n  \"title\": \"Too many requests\",\n  \"status\": 429,\n  \"detail\": \"Too many requests with an invalid API key from your IP address. Wait for the number of seconds in the Retry-After header.\",\n  \"code\": \"rate_limited\"\n}"}],"_postman_id":"d1df1758-fdda-4e5c-938a-8c567698993d"},{"name":"Get a client's settings","id":"1b088e59-a521-4d0c-9bfa-475435d2a545","request":{"method":"GET","header":[{"key":"Accept","value":"application/json"}],"url":"https://dev.partners.cbgc.io/clients/:clientRef/settings","description":"<p>Returns the client's own settings and the values that apply to it (its own, else your account's defaults).</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-Api-Key"},{"key":"value","value":""}]},"isInherited":true,"source":{"_postman_id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","name":"Christian Background Checks Partner API","type":"collection"}},"urlObject":{"path":["clients",":clientRef","settings"],"host":["https://dev.partners.cbgc.io"],"query":[],"variable":[{"id":"07e2871b-13ac-4d7a-81e9-c0f1b5aa61cb","description":{"content":"<p>The client: our <code>clientId</code> (<code>cl_…</code>) or your own <code>externalClientId</code> (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is <code>404 client_not_found</code>.</p>\n","type":"text/plain"},"type":"any","value":"string","key":"clientRef"}]}},"response":[{"id":"4eb376e3-2de3-4acc-a65d-2fc08bb90715","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/settings","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","settings"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n  \"clientId\": \"string\",\n  \"checkValidityYears\": \"1890\",\n  \"effectiveCheckValidityYears\": \"-4483189\"\n}"},{"id":"1277c748-cfff-42a4-a06d-1fbf7e0b2403","name":"`invalid_api_key`: the API key is missing, invalid or revoked, or it's a test key on production (or the reverse). Don't retry until the key is fixed.","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/settings","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","settings"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."}]}},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#invalid_api_key\",\n  \"title\": \"Invalid API key\",\n  \"status\": 401,\n  \"detail\": \"The API key is missing, invalid or revoked.\",\n  \"code\": \"invalid_api_key\"\n}"},{"id":"1d9fd69d-a329-4517-af7b-804797f4b4b9","name":"Not Found","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/settings","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","settings"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."}]}},"status":"Not Found","code":404,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": null,\n  \"title\": \"string\",\n  \"status\": \"-0\",\n  \"detail\": \"string\",\n  \"instance\": null\n}"},{"id":"d25a6a25-3837-4e90-8309-18efb71cdbb3","name":"`rate_limited`: too many requests with an invalid API key from your IP address. Wait the number of seconds in `Retry-After`. Requests with a valid key are never throttled this way.","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/settings","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","settings"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."}]}},"status":"Too Many Requests","code":429,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#rate_limited\",\n  \"title\": \"Too many requests\",\n  \"status\": 429,\n  \"detail\": \"Too many requests with an invalid API key from your IP address. Wait for the number of seconds in the Retry-After header.\",\n  \"code\": \"rate_limited\"\n}"}],"_postman_id":"1b088e59-a521-4d0c-9bfa-475435d2a545"},{"name":"Update a client's settings","id":"d5fa79d8-5cc5-4cba-a9ab-db19987904b5","request":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"checkValidityYears\": \"-0\"\n}","options":{"raw":{"language":"json"}}},"url":"https://dev.partners.cbgc.io/clients/:clientRef/settings","description":"<p>Sets one client's own settings. This call replaces them; send the complete set.</p>\n<p><code>checkValidityYears</code> (1 to 5) is how long this client's <code>CLEAR</code> or <code>REVIEW</code> checks stay valid: their\n<code>expirationDate</code> is completion plus that many years, and until then ordering the same applicant again needs\n<code>forceReorder</code>. Null or omitted uses your account's default (<code>checkValidityYears</code> in <code>PUT /settings</code>). A\nchange applies to checks completed after it.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-Api-Key"},{"key":"value","value":""}]},"isInherited":true,"source":{"_postman_id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","name":"Christian Background Checks Partner API","type":"collection"}},"urlObject":{"path":["clients",":clientRef","settings"],"host":["https://dev.partners.cbgc.io"],"query":[],"variable":[{"id":"a4924669-a4cb-44e8-af30-127a48c844d0","description":{"content":"<p>The client: our <code>clientId</code> (<code>cl_…</code>) or your own <code>externalClientId</code> (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is <code>404 client_not_found</code>.</p>\n","type":"text/plain"},"type":"any","value":"string","key":"clientRef"}]}},"response":[{"id":"28f04f04-c6a8-428b-8ca5-9637ce7b38c5","name":"OK","originalRequest":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"body":{"mode":"raw","raw":"{\n  \"checkValidityYears\": \"-0\"\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/settings","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","settings"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n  \"clientId\": \"string\",\n  \"checkValidityYears\": \"1890\",\n  \"effectiveCheckValidityYears\": \"-4483189\"\n}"},{"id":"53ea46eb-e8ea-45cc-97cd-7b8dad4f0b05","name":"Bad Request","originalRequest":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"body":{"mode":"raw","raw":"{\n  \"checkValidityYears\": \"-0\"\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/settings","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","settings"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."}]}},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": null,\n  \"title\": null,\n  \"status\": \"-0\",\n  \"detail\": \"string\",\n  \"instance\": null,\n  \"errors\": {\n    \"key_0\": [\n      \"string\",\n      \"string\"\n    ],\n    \"key_1\": [\n      \"string\",\n      \"string\"\n    ]\n  }\n}"},{"id":"41efb18a-b2c2-4a52-a91a-1d7be0121949","name":"`invalid_api_key`: the API key is missing, invalid or revoked, or it's a test key on production (or the reverse). Don't retry until the key is fixed.","originalRequest":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"body":{"mode":"raw","raw":"{\n  \"checkValidityYears\": \"-0\"\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/settings","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","settings"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."}]}},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#invalid_api_key\",\n  \"title\": \"Invalid API key\",\n  \"status\": 401,\n  \"detail\": \"The API key is missing, invalid or revoked.\",\n  \"code\": \"invalid_api_key\"\n}"},{"id":"7e54fbb1-9e7e-40c9-9ca9-b8ea81f5e0e2","name":"Not Found","originalRequest":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"body":{"mode":"raw","raw":"{\n  \"checkValidityYears\": \"-0\"\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/settings","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","settings"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."}]}},"status":"Not Found","code":404,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": null,\n  \"title\": \"string\",\n  \"status\": \"-0\",\n  \"detail\": \"string\",\n  \"instance\": null\n}"},{"id":"1d004590-b4f0-4b84-90b3-e8426f6aadc0","name":"`rate_limited`: too many requests with an invalid API key from your IP address. Wait the number of seconds in `Retry-After`. Requests with a valid key are never throttled this way.","originalRequest":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"body":{"mode":"raw","raw":"{\n  \"checkValidityYears\": \"-0\"\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/settings","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","settings"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."}]}},"status":"Too Many Requests","code":429,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#rate_limited\",\n  \"title\": \"Too many requests\",\n  \"status\": 429,\n  \"detail\": \"Too many requests with an invalid API key from your IP address. Wait for the number of seconds in the Retry-After header.\",\n  \"code\": \"rate_limited\"\n}"}],"_postman_id":"d5fa79d8-5cc5-4cba-a9ab-db19987904b5"}],"id":"17a22b38-17ae-4a2d-98f8-65481064907c","description":"<p>Your customers (churches). Each one is a client under your account, addressed by our <code>clientId</code> or your own <code>externalClientId</code>.</p>\n","_postman_id":"17a22b38-17ae-4a2d-98f8-65481064907c","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-Api-Key"},{"key":"value","value":""}]},"isInherited":true,"source":{"_postman_id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","name":"Christian Background Checks Partner API","type":"collection"}}},{"name":"Products","item":[{"name":"List product levels","id":"88f1fe32-bd6d-4bf4-841e-4f1d9d9dd3d2","request":{"method":"GET","header":[{"key":"Accept","value":"application/json"}],"url":"https://dev.partners.cbgc.io/products","description":"<p>Returns every product level (1 to 6) you can order, sorted by level, with its name, description and\nbase price. Send the <code>level</code> when ordering a check; you never need to know which product that maps to.\nPrices are base prices: third-party fees are added (\"Plus pass-through fees.\"). Fees can differ per\nclient, so use <code>GET /clients/{clientRef}/products</code> to show a client's own prices.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-Api-Key"},{"key":"value","value":""}]},"isInherited":true,"source":{"_postman_id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","name":"Christian Background Checks Partner API","type":"collection"}},"urlObject":{"path":["products"],"host":["https://dev.partners.cbgc.io"],"query":[],"variable":[]}},"response":[{"id":"269ba34c-30ea-4a47-9e33-6a3a8b369d27","name":"Every level, 1 to 6, with its base price from your account's products. Show `feesNote` next to prices.","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":"https://dev.partners.cbgc.io/products"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"[\n  {\n    \"level\": \"0\",\n    \"name\": \"string\",\n    \"description\": \"string\",\n    \"price\": \"406511\",\n    \"feesNote\": \"Plus pass-through fees.\"\n  },\n  {\n    \"level\": \"-0\",\n    \"name\": \"string\",\n    \"description\": \"string\",\n    \"price\": \"-0\",\n    \"feesNote\": \"Plus pass-through fees.\"\n  }\n]"},{"id":"dcce781f-bdc0-4352-840f-449385dfa85d","name":"`invalid_api_key`: the API key is missing, invalid or revoked, or it's a test key on production (or the reverse). Don't retry until the key is fixed.","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":"https://dev.partners.cbgc.io/products"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#invalid_api_key\",\n  \"title\": \"Invalid API key\",\n  \"status\": 401,\n  \"detail\": \"The API key is missing, invalid or revoked.\",\n  \"code\": \"invalid_api_key\"\n}"},{"id":"2a7bc69e-193c-4032-9076-aa11696ab6c8","name":"`rate_limited`: too many requests with an invalid API key from your IP address. Wait the number of seconds in `Retry-After`. Requests with a valid key are never throttled this way.","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":"https://dev.partners.cbgc.io/products"},"status":"Too Many Requests","code":429,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#rate_limited\",\n  \"title\": \"Too many requests\",\n  \"status\": 429,\n  \"detail\": \"Too many requests with an invalid API key from your IP address. Wait for the number of seconds in the Retry-After header.\",\n  \"code\": \"rate_limited\"\n}"},{"id":"ccff6eaf-3efd-4dfd-b744-a61d05a3b83a","name":"`upstream_unavailable`: the screening provider didn't answer. Safe to retry.","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":"https://dev.partners.cbgc.io/products"},"status":"Bad Gateway","code":502,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#upstream_unavailable\",\n  \"title\": \"Screening provider unavailable\",\n  \"status\": 502,\n  \"detail\": \"The screening provider did not accept the request. Nothing was created; it is safe to retry.\",\n  \"code\": \"upstream_unavailable\"\n}"}],"_postman_id":"88f1fe32-bd6d-4bf4-841e-4f1d9d9dd3d2"},{"name":"List a client's product levels","id":"fd0f0419-c2ba-4a30-89eb-6ccb0c9ea508","request":{"method":"GET","header":[{"key":"Accept","value":"application/json"}],"url":"https://dev.partners.cbgc.io/clients/:clientRef/products","description":"<p>Returns the product levels this client can order, priced for this client (fees can differ per client).\nLevels the client doesn't have are left out.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-Api-Key"},{"key":"value","value":""}]},"isInherited":true,"source":{"_postman_id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","name":"Christian Background Checks Partner API","type":"collection"}},"urlObject":{"path":["clients",":clientRef","products"],"host":["https://dev.partners.cbgc.io"],"query":[],"variable":[{"id":"d297cdb8-ac3b-4912-833c-54c23f37b06a","description":{"content":"<p>The client: our <code>clientId</code> (<code>cl_…</code>) or your own <code>externalClientId</code> (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is <code>404 client_not_found</code>.</p>\n","type":"text/plain"},"type":"any","value":"string","key":"clientRef"}]}},"response":[{"id":"32110a3d-bd62-422d-8784-7c156f8aa592","name":"The levels this client can order, priced for it. Levels it doesn't have are left out.","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/products","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","products"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"[\n  {\n    \"level\": \"0\",\n    \"name\": \"string\",\n    \"description\": \"string\",\n    \"price\": \"406511\",\n    \"feesNote\": \"Plus pass-through fees.\"\n  },\n  {\n    \"level\": \"-0\",\n    \"name\": \"string\",\n    \"description\": \"string\",\n    \"price\": \"-0\",\n    \"feesNote\": \"Plus pass-through fees.\"\n  }\n]"},{"id":"1a280289-40da-439c-a772-d807fc57713b","name":"`invalid_api_key`: the API key is missing, invalid or revoked, or it's a test key on production (or the reverse). Don't retry until the key is fixed.","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/products","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","products"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."}]}},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#invalid_api_key\",\n  \"title\": \"Invalid API key\",\n  \"status\": 401,\n  \"detail\": \"The API key is missing, invalid or revoked.\",\n  \"code\": \"invalid_api_key\"\n}"},{"id":"248d7ac9-fd93-444e-908d-9b42e336748b","name":"`client_not_found`: no client with that `clientId` or `externalClientId` exists under your account. Don't retry.","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/products","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","products"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."}]}},"status":"Not Found","code":404,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#client_not_found\",\n  \"title\": \"Client not found\",\n  \"status\": 404,\n  \"detail\": \"No client 'org-1042' exists under your account.\",\n  \"code\": \"client_not_found\"\n}"},{"id":"9576a7bb-c8d2-4ffa-8386-57837f24b4ad","name":"`rate_limited`: too many requests with an invalid API key from your IP address. Wait the number of seconds in `Retry-After`. Requests with a valid key are never throttled this way.","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/products","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","products"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."}]}},"status":"Too Many Requests","code":429,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#rate_limited\",\n  \"title\": \"Too many requests\",\n  \"status\": 429,\n  \"detail\": \"Too many requests with an invalid API key from your IP address. Wait for the number of seconds in the Retry-After header.\",\n  \"code\": \"rate_limited\"\n}"},{"id":"4e346dac-d2dd-4904-85d6-aade0e327b31","name":"`upstream_unavailable`: the screening provider didn't answer. Safe to retry.","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/products","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","products"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."}]}},"status":"Bad Gateway","code":502,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#upstream_unavailable\",\n  \"title\": \"Screening provider unavailable\",\n  \"status\": 502,\n  \"detail\": \"The screening provider did not accept the request. Nothing was created; it is safe to retry.\",\n  \"code\": \"upstream_unavailable\"\n}"}],"_postman_id":"fd0f0419-c2ba-4a30-89eb-6ccb0c9ea508"}],"id":"cfa377a4-e3a4-4456-b0b7-80c3188f50e4","description":"<p>The product levels (1 to 6) you can order, and their base prices.</p>\n","_postman_id":"cfa377a4-e3a4-4456-b0b7-80c3188f50e4","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-Api-Key"},{"key":"value","value":""}]},"isInherited":true,"source":{"_postman_id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","name":"Christian Background Checks Partner API","type":"collection"}}},{"name":"Checks","item":[{"name":"Order checks for a list of people","id":"9704c971-f9b1-4a3d-9d8f-3229848b838b","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"level\": \"232\",\n  \"applicants\": [\n    {\n      \"firstName\": \"string\",\n      \"lastName\": \"string\",\n      \"email\": \"tq3qFSlpXCfc9@BbnLCpTaHFgHVOsm.pm\",\n      \"phone\": null,\n      \"externalIdentifier\": \"string\",\n      \"jobLocation\": \"string\",\n      \"stateOfEmployment\": null\n    }\n  ],\n  \"jobLocation\": \"string\",\n  \"stateOfEmployment\": \"string\",\n  \"orderedBy\": null,\n  \"batchReference\": \"string\"\n}","options":{"raw":{"language":"json"}}},"url":"https://dev.partners.cbgc.io/clients/:clientRef/checks/batch","description":"<p>Orders checks for up to 500 people in one call. Send the <code>level</code>, an optional <code>orderedBy</code>, an optional\n<code>batchReference</code>, and the <code>applicants</code>.</p>\n<p>Every applicant is validated and duplicate-checked first, against your stored checks and against the\napplicants before them in the same request. Each gets a <code>result</code>: <code>queued</code>, <code>duplicate</code> (with the\nexisting <code>check</code>) or <code>invalid</code> (with <code>errors</code>). A problem with one applicant never fails the batch;\nonly a problem with the batch itself (no applicants, more than 500, or a missing or invalid <code>level</code>) is a\n<code>400</code>.</p>\n<p>The response is <code>202 Accepted</code> with a <code>batchId</code>. Queued checks are submitted in the background, a few at\na time; each sends its own <code>check.updated</code> webhook as it moves from <code>QUEUED</code> to <code>PENDING</code> to <code>CREATED</code>,\nand <code>batch.completed</code> is sent once none is waiting. Poll <code>GET /batches/{batchId}</code> if you prefer.</p>\n<p>Send a <code>batchReference</code> to make the call safe to retry: sending the same value again returns the first\nbatch with <code>200 OK</code> and orders nothing new. A client can have one running batch at a time (<code>409</code>).</p>\n<p>An applicant whose <code>externalIdentifier</code> belongs to a check of another of your clients comes back as an <code>invalid</code>\nitem (<code>errors.externalIdentifier</code>); nothing is ordered for it.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-Api-Key"},{"key":"value","value":""}]},"isInherited":true,"source":{"_postman_id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","name":"Christian Background Checks Partner API","type":"collection"}},"urlObject":{"path":["clients",":clientRef","checks","batch"],"host":["https://dev.partners.cbgc.io"],"query":[],"variable":[{"id":"70665f5a-8084-4eb0-a010-73aadc1a4119","description":{"content":"<p>The client: our <code>clientId</code> (<code>cl_…</code>) or your own <code>externalClientId</code> (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is <code>404 client_not_found</code>.</p>\n","type":"text/plain"},"type":"any","value":"string","key":"clientRef"}]}},"response":[{"id":"fa148637-fea5-4240-966a-f4e951ecc475","name":"A batch with this `batchReference` already exists: this is that first batch, and nothing new was ordered.","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"body":{"mode":"raw","raw":"{\n  \"level\": \"232\",\n  \"applicants\": [\n    {\n      \"firstName\": \"string\",\n      \"lastName\": \"string\",\n      \"email\": \"tq3qFSlpXCfc9@BbnLCpTaHFgHVOsm.pm\",\n      \"phone\": null,\n      \"externalIdentifier\": \"string\",\n      \"jobLocation\": \"string\",\n      \"stateOfEmployment\": null\n    }\n  ],\n  \"jobLocation\": \"string\",\n  \"stateOfEmployment\": \"string\",\n  \"orderedBy\": null,\n  \"batchReference\": \"string\"\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/checks/batch","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","checks","batch"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n  \"batchId\": \"ed9b0f62-d4d8-e265-b148-7d7d4391c21c\",\n  \"batchReference\": null,\n  \"clientId\": \"string\",\n  \"status\": \"completed\",\n  \"counts\": {\n    \"key_0\": \"0\"\n  },\n  \"items\": [\n    {\n      \"index\": \"-0\",\n      \"externalIdentifier\": \"string\",\n      \"result\": \"invalid\",\n      \"check\": {\n        \"id\": \"string\",\n        \"externalIdentifier\": null,\n        \"clientId\": \"string\",\n        \"status\": \"CREATED\",\n        \"stage\": \"closed\",\n        \"level\": \"0\",\n        \"expirationDate\": \"2013-10-17T18:13:03.103Z\",\n        \"completedAt\": \"1990-11-12T14:00:47.461Z\",\n        \"reportUrl\": \"string\",\n        \"charges\": \"6338\",\n        \"errorCode\": null,\n        \"errorMessage\": \"string\",\n        \"createdAt\": \"1983-02-08T14:09:36.627Z\",\n        \"updatedAt\": \"1956-06-09T07:05:26.383Z\"\n      },\n      \"errors\": {\n        \"key_0\": [\n          \"string\",\n          \"string\"\n        ],\n        \"key_1\": [\n          \"string\",\n          \"string\"\n        ],\n        \"key_2\": [\n          \"string\",\n          \"string\"\n        ]\n      }\n    },\n    {\n      \"index\": \"543047\",\n      \"externalIdentifier\": \"string\",\n      \"result\": \"invalid\",\n      \"check\": {\n        \"id\": \"string\",\n        \"externalIdentifier\": \"string\",\n        \"clientId\": \"string\",\n        \"status\": \"REVIEW\",\n        \"stage\": \"in_progress\",\n        \"level\": \"0\",\n        \"expirationDate\": null,\n        \"completedAt\": null,\n        \"reportUrl\": \"string\",\n        \"charges\": \"0\",\n        \"errorCode\": null,\n        \"errorMessage\": null,\n        \"createdAt\": \"1958-05-10T20:33:34.245Z\",\n        \"updatedAt\": \"1998-05-09T18:41:34.491Z\"\n      },\n      \"errors\": null\n    }\n  ],\n  \"createdAt\": \"1997-02-02T00:07:22.766Z\"\n}"},{"id":"69f53325-f454-451e-b0e4-d9ea673e343c","name":"A new batch was accepted. Queued checks are submitted in the background; see each item's `result`. Billable per submitted check.","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"body":{"mode":"raw","raw":"{\n  \"level\": \"232\",\n  \"applicants\": [\n    {\n      \"firstName\": \"string\",\n      \"lastName\": \"string\",\n      \"email\": \"tq3qFSlpXCfc9@BbnLCpTaHFgHVOsm.pm\",\n      \"phone\": null,\n      \"externalIdentifier\": \"string\",\n      \"jobLocation\": \"string\",\n      \"stateOfEmployment\": null\n    }\n  ],\n  \"jobLocation\": \"string\",\n  \"stateOfEmployment\": \"string\",\n  \"orderedBy\": null,\n  \"batchReference\": \"string\"\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/checks/batch","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","checks","batch"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."}]}},"status":"Accepted","code":202,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n  \"batchId\": \"ed9b0f62-d4d8-e265-b148-7d7d4391c21c\",\n  \"batchReference\": null,\n  \"clientId\": \"string\",\n  \"status\": \"completed\",\n  \"counts\": {\n    \"key_0\": \"0\"\n  },\n  \"items\": [\n    {\n      \"index\": \"-0\",\n      \"externalIdentifier\": \"string\",\n      \"result\": \"invalid\",\n      \"check\": {\n        \"id\": \"string\",\n        \"externalIdentifier\": null,\n        \"clientId\": \"string\",\n        \"status\": \"CREATED\",\n        \"stage\": \"closed\",\n        \"level\": \"0\",\n        \"expirationDate\": \"2013-10-17T18:13:03.103Z\",\n        \"completedAt\": \"1990-11-12T14:00:47.461Z\",\n        \"reportUrl\": \"string\",\n        \"charges\": \"6338\",\n        \"errorCode\": null,\n        \"errorMessage\": \"string\",\n        \"createdAt\": \"1983-02-08T14:09:36.627Z\",\n        \"updatedAt\": \"1956-06-09T07:05:26.383Z\"\n      },\n      \"errors\": {\n        \"key_0\": [\n          \"string\",\n          \"string\"\n        ],\n        \"key_1\": [\n          \"string\",\n          \"string\"\n        ],\n        \"key_2\": [\n          \"string\",\n          \"string\"\n        ]\n      }\n    },\n    {\n      \"index\": \"543047\",\n      \"externalIdentifier\": \"string\",\n      \"result\": \"invalid\",\n      \"check\": {\n        \"id\": \"string\",\n        \"externalIdentifier\": \"string\",\n        \"clientId\": \"string\",\n        \"status\": \"REVIEW\",\n        \"stage\": \"in_progress\",\n        \"level\": \"0\",\n        \"expirationDate\": null,\n        \"completedAt\": null,\n        \"reportUrl\": \"string\",\n        \"charges\": \"0\",\n        \"errorCode\": null,\n        \"errorMessage\": null,\n        \"createdAt\": \"1958-05-10T20:33:34.245Z\",\n        \"updatedAt\": \"1998-05-09T18:41:34.491Z\"\n      },\n      \"errors\": null\n    }\n  ],\n  \"createdAt\": \"1997-02-02T00:07:22.766Z\"\n}"},{"id":"ece0a137-45e0-4260-9e69-9a7ed3a0775f","name":"`validation_failed`: a problem with the batch itself: no applicants, more than 500, a missing or invalid `level`, or a field too long. Problems with single applicants never fail the batch; they come back as `invalid` items.","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"body":{"mode":"raw","raw":"{\n  \"level\": \"232\",\n  \"applicants\": [\n    {\n      \"firstName\": \"string\",\n      \"lastName\": \"string\",\n      \"email\": \"tq3qFSlpXCfc9@BbnLCpTaHFgHVOsm.pm\",\n      \"phone\": null,\n      \"externalIdentifier\": \"string\",\n      \"jobLocation\": \"string\",\n      \"stateOfEmployment\": null\n    }\n  ],\n  \"jobLocation\": \"string\",\n  \"stateOfEmployment\": \"string\",\n  \"orderedBy\": null,\n  \"batchReference\": \"string\"\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/checks/batch","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","checks","batch"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."}]}},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#validation_failed\",\n  \"title\": \"One or more validation errors occurred.\",\n  \"status\": 400,\n  \"errors\": {\n    \"applicants\": [\n      \"applicants can hold at most 500 applicants per batch.\"\n    ]\n  },\n  \"code\": \"validation_failed\"\n}"},{"id":"9aad1f73-3364-4936-940e-0500372b5e02","name":"`invalid_api_key`: the API key is missing, invalid or revoked, or it's a test key on production (or the reverse). Don't retry until the key is fixed.","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"body":{"mode":"raw","raw":"{\n  \"level\": \"232\",\n  \"applicants\": [\n    {\n      \"firstName\": \"string\",\n      \"lastName\": \"string\",\n      \"email\": \"tq3qFSlpXCfc9@BbnLCpTaHFgHVOsm.pm\",\n      \"phone\": null,\n      \"externalIdentifier\": \"string\",\n      \"jobLocation\": \"string\",\n      \"stateOfEmployment\": null\n    }\n  ],\n  \"jobLocation\": \"string\",\n  \"stateOfEmployment\": \"string\",\n  \"orderedBy\": null,\n  \"batchReference\": \"string\"\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/checks/batch","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","checks","batch"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."}]}},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#invalid_api_key\",\n  \"title\": \"Invalid API key\",\n  \"status\": 401,\n  \"detail\": \"The API key is missing, invalid or revoked.\",\n  \"code\": \"invalid_api_key\"\n}"},{"id":"b60b7da5-de28-4e00-8a6d-d186aef36973","name":"`client_not_found`: no client with that `clientId` or `externalClientId` exists under your account. Don't retry.","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"body":{"mode":"raw","raw":"{\n  \"level\": \"232\",\n  \"applicants\": [\n    {\n      \"firstName\": \"string\",\n      \"lastName\": \"string\",\n      \"email\": \"tq3qFSlpXCfc9@BbnLCpTaHFgHVOsm.pm\",\n      \"phone\": null,\n      \"externalIdentifier\": \"string\",\n      \"jobLocation\": \"string\",\n      \"stateOfEmployment\": null\n    }\n  ],\n  \"jobLocation\": \"string\",\n  \"stateOfEmployment\": \"string\",\n  \"orderedBy\": null,\n  \"batchReference\": \"string\"\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/checks/batch","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","checks","batch"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."}]}},"status":"Not Found","code":404,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#client_not_found\",\n  \"title\": \"Client not found\",\n  \"status\": 404,\n  \"detail\": \"No client 'org-1042' exists under your account.\",\n  \"code\": \"client_not_found\"\n}"},{"id":"e3751eb3-72a0-4e27-bae3-33f274203f7e","name":"`batch_in_progress`: this client already has a batch that is still running. Nothing was ordered. Send the batch again once `GET /batches/{batchId}` shows the other one `completed`.","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"body":{"mode":"raw","raw":"{\n  \"level\": \"232\",\n  \"applicants\": [\n    {\n      \"firstName\": \"string\",\n      \"lastName\": \"string\",\n      \"email\": \"tq3qFSlpXCfc9@BbnLCpTaHFgHVOsm.pm\",\n      \"phone\": null,\n      \"externalIdentifier\": \"string\",\n      \"jobLocation\": \"string\",\n      \"stateOfEmployment\": null\n    }\n  ],\n  \"jobLocation\": \"string\",\n  \"stateOfEmployment\": \"string\",\n  \"orderedBy\": null,\n  \"batchReference\": \"string\"\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/checks/batch","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","checks","batch"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."}]}},"status":"Conflict","code":409,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#batch_in_progress\",\n  \"title\": \"Batch in progress\",\n  \"status\": 409,\n  \"detail\": \"This client already has a batch that is still running. Wait for it to complete (GET /batches/{batchId}) before sending another.\",\n  \"code\": \"batch_in_progress\"\n}"},{"id":"1632b5bd-6df5-4a63-8d2a-586ac10838c3","name":"`level_not_available`: this client has no product for that level. Nothing was ordered; contact support.","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"body":{"mode":"raw","raw":"{\n  \"level\": \"232\",\n  \"applicants\": [\n    {\n      \"firstName\": \"string\",\n      \"lastName\": \"string\",\n      \"email\": \"tq3qFSlpXCfc9@BbnLCpTaHFgHVOsm.pm\",\n      \"phone\": null,\n      \"externalIdentifier\": \"string\",\n      \"jobLocation\": \"string\",\n      \"stateOfEmployment\": null\n    }\n  ],\n  \"jobLocation\": \"string\",\n  \"stateOfEmployment\": \"string\",\n  \"orderedBy\": null,\n  \"batchReference\": \"string\"\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/checks/batch","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","checks","batch"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."}]}},"status":"Unprocessable Entity (WebDAV) (RFC 4918)","code":422,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#level_not_available\",\n  \"title\": \"Level not available\",\n  \"status\": 422,\n  \"detail\": \"This client has no product for level 4. Contact support.\",\n  \"code\": \"level_not_available\"\n}"},{"id":"6522987c-780f-4673-a75b-d85d38a7db96","name":"`rate_limited`: too many requests with an invalid API key from your IP address. Wait the number of seconds in `Retry-After`. Requests with a valid key are never throttled this way.","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"body":{"mode":"raw","raw":"{\n  \"level\": \"232\",\n  \"applicants\": [\n    {\n      \"firstName\": \"string\",\n      \"lastName\": \"string\",\n      \"email\": \"tq3qFSlpXCfc9@BbnLCpTaHFgHVOsm.pm\",\n      \"phone\": null,\n      \"externalIdentifier\": \"string\",\n      \"jobLocation\": \"string\",\n      \"stateOfEmployment\": null\n    }\n  ],\n  \"jobLocation\": \"string\",\n  \"stateOfEmployment\": \"string\",\n  \"orderedBy\": null,\n  \"batchReference\": \"string\"\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/checks/batch","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","checks","batch"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."}]}},"status":"Too Many Requests","code":429,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#rate_limited\",\n  \"title\": \"Too many requests\",\n  \"status\": 429,\n  \"detail\": \"Too many requests with an invalid API key from your IP address. Wait for the number of seconds in the Retry-After header.\",\n  \"code\": \"rate_limited\"\n}"},{"id":"f37dd516-d149-4381-af84-4d0e5b1cfd0b","name":"`upstream_unavailable`: the screening provider didn't answer. This happens before anything is stored (looking up the level's product), so nothing was ordered and a retry is safe.","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"body":{"mode":"raw","raw":"{\n  \"level\": \"232\",\n  \"applicants\": [\n    {\n      \"firstName\": \"string\",\n      \"lastName\": \"string\",\n      \"email\": \"tq3qFSlpXCfc9@BbnLCpTaHFgHVOsm.pm\",\n      \"phone\": null,\n      \"externalIdentifier\": \"string\",\n      \"jobLocation\": \"string\",\n      \"stateOfEmployment\": null\n    }\n  ],\n  \"jobLocation\": \"string\",\n  \"stateOfEmployment\": \"string\",\n  \"orderedBy\": null,\n  \"batchReference\": \"string\"\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/checks/batch","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","checks","batch"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."}]}},"status":"Bad Gateway","code":502,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#upstream_unavailable\",\n  \"title\": \"Screening provider unavailable\",\n  \"status\": 502,\n  \"detail\": \"The screening provider did not accept the request. Nothing was created; it is safe to retry.\",\n  \"code\": \"upstream_unavailable\"\n}"}],"_postman_id":"9704c971-f9b1-4a3d-9d8f-3229848b838b"},{"name":"Get a batch","id":"bbef512e-36a8-4921-bdaa-45efc5e797c0","request":{"method":"GET","header":[{"key":"Accept","value":"application/json"}],"url":"https://dev.partners.cbgc.io/batches/:batchId","description":"<p>Returns a batch: counts of its checks by status, and one item per applicant of the original request.\n<code>status</code> is <code>processing</code> while any check is <code>QUEUED</code> or <code>PENDING</code>, and <code>completed</code> once none is.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-Api-Key"},{"key":"value","value":""}]},"isInherited":true,"source":{"_postman_id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","name":"Christian Background Checks Partner API","type":"collection"}},"urlObject":{"path":["batches",":batchId"],"host":["https://dev.partners.cbgc.io"],"query":[],"variable":[{"id":"8f3f0bfd-70e8-47ed-95fc-a393aa8b25a4","description":{"content":"<p>The batch's <code>batchId</code> (a UUID), from <code>POST /clients/{clientRef}/checks/batch</code>. Only your own batches resolve.</p>\n","type":"text/plain"},"type":"any","value":"string","key":"batchId"}]}},"response":[{"id":"fb086027-4739-4742-a131-bc9a93b717ce","name":"The batch: counts by status and one item per applicant. `status` is `completed` once no check is `QUEUED` or `PENDING`.","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":{"raw":"https://dev.partners.cbgc.io/batches/:batchId","host":["https://dev.partners.cbgc.io"],"path":["batches",":batchId"],"variable":[{"key":"batchId","value":"string","description":"The batch's `batchId` (a UUID), from `POST /clients/{clientRef}/checks/batch`. Only your own batches resolve."}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n  \"batchId\": \"ed9b0f62-d4d8-e265-b148-7d7d4391c21c\",\n  \"batchReference\": null,\n  \"clientId\": \"string\",\n  \"status\": \"completed\",\n  \"counts\": {\n    \"key_0\": \"0\"\n  },\n  \"items\": [\n    {\n      \"index\": \"-0\",\n      \"externalIdentifier\": \"string\",\n      \"result\": \"invalid\",\n      \"check\": {\n        \"id\": \"string\",\n        \"externalIdentifier\": null,\n        \"clientId\": \"string\",\n        \"status\": \"CREATED\",\n        \"stage\": \"closed\",\n        \"level\": \"0\",\n        \"expirationDate\": \"2013-10-17T18:13:03.103Z\",\n        \"completedAt\": \"1990-11-12T14:00:47.461Z\",\n        \"reportUrl\": \"string\",\n        \"charges\": \"6338\",\n        \"errorCode\": null,\n        \"errorMessage\": \"string\",\n        \"createdAt\": \"1983-02-08T14:09:36.627Z\",\n        \"updatedAt\": \"1956-06-09T07:05:26.383Z\"\n      },\n      \"errors\": {\n        \"key_0\": [\n          \"string\",\n          \"string\"\n        ],\n        \"key_1\": [\n          \"string\",\n          \"string\"\n        ],\n        \"key_2\": [\n          \"string\",\n          \"string\"\n        ]\n      }\n    },\n    {\n      \"index\": \"543047\",\n      \"externalIdentifier\": \"string\",\n      \"result\": \"invalid\",\n      \"check\": {\n        \"id\": \"string\",\n        \"externalIdentifier\": \"string\",\n        \"clientId\": \"string\",\n        \"status\": \"REVIEW\",\n        \"stage\": \"in_progress\",\n        \"level\": \"0\",\n        \"expirationDate\": null,\n        \"completedAt\": null,\n        \"reportUrl\": \"string\",\n        \"charges\": \"0\",\n        \"errorCode\": null,\n        \"errorMessage\": null,\n        \"createdAt\": \"1958-05-10T20:33:34.245Z\",\n        \"updatedAt\": \"1998-05-09T18:41:34.491Z\"\n      },\n      \"errors\": null\n    }\n  ],\n  \"createdAt\": \"1997-02-02T00:07:22.766Z\"\n}"},{"id":"71e27920-4535-4aed-8db6-de669e9893d9","name":"`invalid_api_key`: the API key is missing, invalid or revoked, or it's a test key on production (or the reverse). Don't retry until the key is fixed.","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":{"raw":"https://dev.partners.cbgc.io/batches/:batchId","host":["https://dev.partners.cbgc.io"],"path":["batches",":batchId"],"variable":[{"key":"batchId","value":"string","description":"The batch's `batchId` (a UUID), from `POST /clients/{clientRef}/checks/batch`. Only your own batches resolve."}]}},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#invalid_api_key\",\n  \"title\": \"Invalid API key\",\n  \"status\": 401,\n  \"detail\": \"The API key is missing, invalid or revoked.\",\n  \"code\": \"invalid_api_key\"\n}"},{"id":"eec29a0c-e9f3-4ea8-8180-b3f0289383c9","name":"`batch_not_found`: no batch with that id exists under your account.","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":{"raw":"https://dev.partners.cbgc.io/batches/:batchId","host":["https://dev.partners.cbgc.io"],"path":["batches",":batchId"],"variable":[{"key":"batchId","value":"string","description":"The batch's `batchId` (a UUID), from `POST /clients/{clientRef}/checks/batch`. Only your own batches resolve."}]}},"status":"Not Found","code":404,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#batch_not_found\",\n  \"title\": \"Batch not found\",\n  \"status\": 404,\n  \"detail\": \"No batch '3f1c0b9e-7a52-4a6e-9d0c-5e7d2b1a8c44' exists under your account.\",\n  \"code\": \"batch_not_found\"\n}"},{"id":"2c223e14-120e-458e-a076-6201eeee95a5","name":"`rate_limited`: too many requests with an invalid API key from your IP address. Wait the number of seconds in `Retry-After`. Requests with a valid key are never throttled this way.","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":{"raw":"https://dev.partners.cbgc.io/batches/:batchId","host":["https://dev.partners.cbgc.io"],"path":["batches",":batchId"],"variable":[{"key":"batchId","value":"string","description":"The batch's `batchId` (a UUID), from `POST /clients/{clientRef}/checks/batch`. Only your own batches resolve."}]}},"status":"Too Many Requests","code":429,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#rate_limited\",\n  \"title\": \"Too many requests\",\n  \"status\": 429,\n  \"detail\": \"Too many requests with an invalid API key from your IP address. Wait for the number of seconds in the Retry-After header.\",\n  \"code\": \"rate_limited\"\n}"}],"_postman_id":"bbef512e-36a8-4921-bdaa-45efc5e797c0"},{"name":"Order a background check","id":"bf31c353-fa1e-4e09-9672-337836ef5439","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"applicantEmail\": \"ivvrk-o@HzpyAZVnJiKyDonEq.kfo\",\n  \"firstName\": \"string\",\n  \"lastName\": \"string\",\n  \"level\": \"20110\",\n  \"externalIdentifier\": null,\n  \"applicantPhone\": null,\n  \"jobLocation\": \"string\",\n  \"stateOfEmployment\": null,\n  \"orderedBy\": null,\n  \"forceReorder\": false\n}","options":{"raw":{"language":"json"}}},"url":"https://dev.partners.cbgc.io/clients/:clientRef/checks","description":"<p>Orders a background check for an applicant. The applicant receives an email invitation to provide their\npersonal details and consent directly with us, so you only send their name, email and what to order.</p>\n<p><strong>What to order.</strong> Send the <code>level</code> (1 to 6, see <code>GET /products</code>). We translate\nthe level to the client's own product; <code>422 Level not available</code> means the client doesn't have that level\n(contact support). <code>orderedBy</code> is optional: it is written to the order's notes so the client's staff can\nsee who asked, and is never stored by us or used to create a login.</p>\n<p><strong>Job location.</strong> Your CHMS must collect each applicant's job location and state of employment from the\nchurch and send them as <code>jobLocation</code> and <code>stateOfEmployment</code>. They decide which state's rules apply, and\nsome levels refuse an order without them. Send only what the church tells you; never use the church's own\naddress or another guess.</p>\n<p><strong>Duplicate protection.</strong> An order is rejected with <code>409 Conflict</code> (and nothing is billed) when the same\n<code>externalIdentifier</code>, or the same applicant email for this client, already has a check that is in progress\n(<code>PENDING</code>, <code>CREATED</code>) or completed and not yet expired (<code>CLEAR</code>, <code>REVIEW</code>). Checks that ended in <code>ERROR</code> or\n<code>CANCELLED</code>, or have expired, can be re-ordered normally. Set <code>forceReorder</code> to order anyway; that is billed\nas a new check.</p>\n<p><strong>Retries.</strong> Always send an <code>externalIdentifier</code>, and reuse it when retrying after a timeout or network\nerror: a retry can never create a second check.</p>\n<p><strong>502 responses.</strong> If submission to the screening provider fails, the check is kept as <code>PENDING</code> and returned\nin the body. Don't retry with <code>forceReorder</code>; the check will update via webhook or polling, or contact support\nwith its <code>id</code>.</p>\n<p><strong>One <code>externalIdentifier</code>, one check, across all your clients.</strong> An <code>externalIdentifier</code> already used by a check\nof another of your clients is <code>409 external_identifier_in_use</code>; nothing is ordered. Reusing it for the same client\nis the normal retry and re-order path.</p>\n<p><strong><code>PENDING</code> checks resolve on their own.</strong> A check left <code>PENDING</code> by a lost answer is looked up with the screening\nprovider every 10 minutes: if the provider has it, it takes the provider's status; if the provider still doesn't\nhave it after an hour, it becomes <code>ERROR</code> (never submitted, so ordering again is allowed). Either way you get\n<code>check.updated</code>.</p>\n<p><strong>Statuses.</strong> <code>CLEAR</code> is reported only when the provider says no search found records. Any other completed\nresult is <code>REVIEW</code> (flagged), so your users look at it in the portal.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-Api-Key"},{"key":"value","value":""}]},"isInherited":true,"source":{"_postman_id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","name":"Christian Background Checks Partner API","type":"collection"}},"urlObject":{"path":["clients",":clientRef","checks"],"host":["https://dev.partners.cbgc.io"],"query":[],"variable":[{"id":"802e02f7-b79c-4d34-8256-b58be1ae413f","description":{"content":"<p>The client: our <code>clientId</code> (<code>cl_…</code>) or your own <code>externalClientId</code> (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is <code>404 client_not_found</code>.</p>\n","type":"text/plain"},"type":"any","value":"string","key":"clientRef"}]}},"response":[{"id":"b8f5e2f3-2722-4000-b6f7-b752bdb2da1e","name":"The check was submitted (`status` `CREATED`) and the applicant has been emailed. Billable. `Location` points at the check.","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"body":{"mode":"raw","raw":"{\n  \"applicantEmail\": \"ivvrk-o@HzpyAZVnJiKyDonEq.kfo\",\n  \"firstName\": \"string\",\n  \"lastName\": \"string\",\n  \"level\": \"20110\",\n  \"externalIdentifier\": null,\n  \"applicantPhone\": null,\n  \"jobLocation\": \"string\",\n  \"stateOfEmployment\": null,\n  \"orderedBy\": null,\n  \"forceReorder\": false\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/checks","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","checks"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."}]}},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n  \"id\": \"string\",\n  \"externalIdentifier\": \"string\",\n  \"clientId\": \"string\",\n  \"status\": \"ERROR\",\n  \"stage\": \"in_progress\",\n  \"level\": \"-0\",\n  \"expirationDate\": \"1961-05-23T19:23:23.425Z\",\n  \"completedAt\": null,\n  \"reportUrl\": null,\n  \"charges\": \"-482097765.95644830363\",\n  \"errorCode\": null,\n  \"errorMessage\": \"string\",\n  \"createdAt\": \"1970-07-26T11:55:05.226Z\",\n  \"updatedAt\": \"1964-03-01T04:39:16.306Z\"\n}"},{"id":"15a0bcfb-a3cc-4c5b-90a1-fc144a6e7570","name":"`validation_failed`: a field is missing or invalid (for example no `level`). Nothing was ordered.","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"body":{"mode":"raw","raw":"{\n  \"applicantEmail\": \"ivvrk-o@HzpyAZVnJiKyDonEq.kfo\",\n  \"firstName\": \"string\",\n  \"lastName\": \"string\",\n  \"level\": \"20110\",\n  \"externalIdentifier\": null,\n  \"applicantPhone\": null,\n  \"jobLocation\": \"string\",\n  \"stateOfEmployment\": null,\n  \"orderedBy\": null,\n  \"forceReorder\": false\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/checks","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","checks"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."}]}},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#validation_failed\",\n  \"title\": \"One or more validation errors occurred.\",\n  \"status\": 400,\n  \"errors\": {\n    \"level\": [\n      \"level is required.\"\n    ]\n  },\n  \"code\": \"validation_failed\"\n}"},{"id":"f0ed00c3-cdfc-4beb-b400-6706a349f1a9","name":"`invalid_api_key`: the API key is missing, invalid or revoked, or it's a test key on production (or the reverse). Don't retry until the key is fixed.","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"body":{"mode":"raw","raw":"{\n  \"applicantEmail\": \"ivvrk-o@HzpyAZVnJiKyDonEq.kfo\",\n  \"firstName\": \"string\",\n  \"lastName\": \"string\",\n  \"level\": \"20110\",\n  \"externalIdentifier\": null,\n  \"applicantPhone\": null,\n  \"jobLocation\": \"string\",\n  \"stateOfEmployment\": null,\n  \"orderedBy\": null,\n  \"forceReorder\": false\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/checks","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","checks"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."}]}},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#invalid_api_key\",\n  \"title\": \"Invalid API key\",\n  \"status\": 401,\n  \"detail\": \"The API key is missing, invalid or revoked.\",\n  \"code\": \"invalid_api_key\"\n}"},{"id":"8396a07d-bb34-470d-97ac-5f5053ac4d0f","name":"`client_not_found`: no client with that `clientId` or `externalClientId` exists under your account. Don't retry.","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"body":{"mode":"raw","raw":"{\n  \"applicantEmail\": \"ivvrk-o@HzpyAZVnJiKyDonEq.kfo\",\n  \"firstName\": \"string\",\n  \"lastName\": \"string\",\n  \"level\": \"20110\",\n  \"externalIdentifier\": null,\n  \"applicantPhone\": null,\n  \"jobLocation\": \"string\",\n  \"stateOfEmployment\": null,\n  \"orderedBy\": null,\n  \"forceReorder\": false\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/checks","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","checks"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."}]}},"status":"Not Found","code":404,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#client_not_found\",\n  \"title\": \"Client not found\",\n  \"status\": 404,\n  \"detail\": \"No client 'org-1042' exists under your account.\",\n  \"code\": \"client_not_found\"\n}"},{"id":"a0f56d34-b51c-4185-ad23-530530cc7517","name":"Nothing was ordered or billed. Two cases, told apart by `code`: `duplicate_check` (this body: the applicant already has a check in progress or unexpired, in `order`), or `external_identifier_in_use` (problem details: the `externalIdentifier` belongs to a ","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"body":{"mode":"raw","raw":"{\n  \"applicantEmail\": \"ivvrk-o@HzpyAZVnJiKyDonEq.kfo\",\n  \"firstName\": \"string\",\n  \"lastName\": \"string\",\n  \"level\": \"20110\",\n  \"externalIdentifier\": null,\n  \"applicantPhone\": null,\n  \"jobLocation\": \"string\",\n  \"stateOfEmployment\": null,\n  \"orderedBy\": null,\n  \"forceReorder\": false\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/checks","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","checks"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."}]}},"status":"Conflict","code":409,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n  \"code\": \"duplicate_check\",\n  \"message\": \"A background check is currently in progress with status 'CREATED'.\",\n  \"currentStatus\": \"CREATED\",\n  \"instructions\": \"To force a re-order, submit the request with 'forceReorder': true.\",\n  \"order\": {\n    \"id\": \"chk_9c2e4f6a1b3d4e5f8a7b6c5d\",\n    \"externalIdentifier\": \"vol-8841\",\n    \"clientId\": \"cl_5b0e6f2a8c1d4e7b9a3f2d6c\",\n    \"status\": \"CREATED\",\n    \"stage\": \"awaiting_applicant\",\n    \"level\": 2,\n    \"expirationDate\": null,\n    \"completedAt\": null,\n    \"createdAt\": \"2026-10-16T15:10:00Z\",\n    \"updatedAt\": \"2026-10-16T15:10:01Z\"\n  }\n}"},{"id":"5a981966-84df-46b9-a0e0-4805b71e19b2","name":"`level_not_available`: this client has no product for that level. A configuration problem on our side; contact support. Nothing was ordered.","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"body":{"mode":"raw","raw":"{\n  \"applicantEmail\": \"ivvrk-o@HzpyAZVnJiKyDonEq.kfo\",\n  \"firstName\": \"string\",\n  \"lastName\": \"string\",\n  \"level\": \"20110\",\n  \"externalIdentifier\": null,\n  \"applicantPhone\": null,\n  \"jobLocation\": \"string\",\n  \"stateOfEmployment\": null,\n  \"orderedBy\": null,\n  \"forceReorder\": false\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/checks","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","checks"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."}]}},"status":"Unprocessable Entity (WebDAV) (RFC 4918)","code":422,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#level_not_available\",\n  \"title\": \"Level not available\",\n  \"status\": 422,\n  \"detail\": \"This client has no product for level 4. Contact support.\",\n  \"code\": \"level_not_available\"\n}"},{"id":"b34d0b72-2e49-442f-a539-fd59c7da4cd3","name":"`rate_limited`: too many requests with an invalid API key from your IP address. Wait the number of seconds in `Retry-After`. Requests with a valid key are never throttled this way.","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"body":{"mode":"raw","raw":"{\n  \"applicantEmail\": \"ivvrk-o@HzpyAZVnJiKyDonEq.kfo\",\n  \"firstName\": \"string\",\n  \"lastName\": \"string\",\n  \"level\": \"20110\",\n  \"externalIdentifier\": null,\n  \"applicantPhone\": null,\n  \"jobLocation\": \"string\",\n  \"stateOfEmployment\": null,\n  \"orderedBy\": null,\n  \"forceReorder\": false\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/checks","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","checks"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."}]}},"status":"Too Many Requests","code":429,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#rate_limited\",\n  \"title\": \"Too many requests\",\n  \"status\": 429,\n  \"detail\": \"Too many requests with an invalid API key from your IP address. Wait for the number of seconds in the Retry-After header.\",\n  \"code\": \"rate_limited\"\n}"},{"id":"23aab777-a9b8-47aa-9995-1a28589f4b59","name":"Two cases. If the body is a check (`status` `PENDING`, no `code`), the submission's answer was lost: the check may exist upstream, is kept `PENDING`, and is resolved automatically within about an hour (`check.updated` follows). Retry only with the same `e","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"body":{"mode":"raw","raw":"{\n  \"applicantEmail\": \"ivvrk-o@HzpyAZVnJiKyDonEq.kfo\",\n  \"firstName\": \"string\",\n  \"lastName\": \"string\",\n  \"level\": \"20110\",\n  \"externalIdentifier\": null,\n  \"applicantPhone\": null,\n  \"jobLocation\": \"string\",\n  \"stateOfEmployment\": null,\n  \"orderedBy\": null,\n  \"forceReorder\": false\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/checks","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","checks"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."}]}},"status":"Bad Gateway","code":502,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n  \"id\": \"chk_9c2e4f6a1b3d4e5f8a7b6c5d\",\n  \"externalIdentifier\": \"vol-8841\",\n  \"clientId\": \"cl_5b0e6f2a8c1d4e7b9a3f2d6c\",\n  \"status\": \"PENDING\",\n  \"stage\": \"submitting\",\n  \"level\": 2,\n  \"expirationDate\": null,\n  \"completedAt\": null,\n  \"createdAt\": \"2026-10-16T15:10:00Z\",\n  \"updatedAt\": \"2026-10-16T15:10:00Z\"\n}"}],"_postman_id":"bf31c353-fa1e-4e09-9672-337836ef5439"},{"name":"List checks","id":"ef3564a3-140d-4821-b83b-f672f3658f1a","request":{"method":"GET","header":[{"key":"Accept","value":"application/json"}],"url":"https://dev.partners.cbgc.io/clients/:clientRef/checks?updated_since=2023-02-14T17:09:37.346Z&limit=2&cursor=string","description":"<p>Returns a client's checks, oldest change first, one page at a time. Use it for reconciliation, e.g. a\nnightly job that catches any webhook you missed.</p>\n<p>Pass <code>updated_since</code> to get only checks that changed at or after that time, and follow <code>nextCursor</code> until it\nis null. A check that changes while you are paging may appear again on a later page, so process items\nidempotently (by <code>id</code>).</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-Api-Key"},{"key":"value","value":""}]},"isInherited":true,"source":{"_postman_id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","name":"Christian Background Checks Partner API","type":"collection"}},"urlObject":{"path":["clients",":clientRef","checks"],"host":["https://dev.partners.cbgc.io"],"query":[{"description":{"content":"<p>Only return checks whose <code>updatedAt</code> is at or after this time. ISO 8601; a time with no offset is treated as UTC. Omit for all checks.</p>\n","type":"text/plain"},"key":"updated_since","value":"2023-02-14T17:09:37.346Z"},{"description":{"content":"<p>Page size, 1 to 500 (larger values are clamped). Defaults to 100.</p>\n","type":"text/plain"},"key":"limit","value":"2"},{"description":{"content":"<p>The <code>nextCursor</code> from the previous page. Omit for the first page. An unknown value is <code>400 invalid_cursor</code>.</p>\n","type":"text/plain"},"key":"cursor","value":"string"}],"variable":[{"id":"2002fa45-f837-485c-bee4-19621d6e69ac","description":{"content":"<p>The client: our <code>clientId</code> (<code>cl_…</code>) or your own <code>externalClientId</code> (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is <code>404 client_not_found</code>.</p>\n","type":"text/plain"},"type":"any","value":"string","key":"clientRef"}]}},"response":[{"id":"79a5cf78-e705-4d5e-b6f9-fb9ceed4ff78","name":"One page of the client's checks, oldest change first. Follow `nextCursor` until it is null.","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/checks?updated_since=2023-02-14T17:09:37.346Z&limit=2&cursor=string","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","checks"],"query":[{"key":"updated_since","value":"2023-02-14T17:09:37.346Z","description":"Only return checks whose `updatedAt` is at or after this time. ISO 8601; a time with no offset is treated as UTC. Omit for all checks."},{"key":"limit","value":"2","description":"Page size, 1 to 500 (larger values are clamped). Defaults to 100."},{"key":"cursor","value":"string","description":"The `nextCursor` from the previous page. Omit for the first page. An unknown value is `400 invalid_cursor`."}],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n  \"items\": [\n    {\n      \"id\": \"string\",\n      \"externalIdentifier\": null,\n      \"clientId\": \"string\",\n      \"status\": \"CANCELLED\",\n      \"stage\": \"closed\",\n      \"level\": \"-0\",\n      \"expirationDate\": null,\n      \"completedAt\": \"2016-12-19T07:19:22.772Z\",\n      \"reportUrl\": \"string\",\n      \"charges\": \"-521956749\",\n      \"errorCode\": null,\n      \"errorMessage\": null,\n      \"createdAt\": \"1995-05-30T16:52:15.394Z\",\n      \"updatedAt\": \"2020-05-11T12:52:04.027Z\"\n    },\n    {\n      \"id\": \"string\",\n      \"externalIdentifier\": \"string\",\n      \"clientId\": \"string\",\n      \"status\": \"CLEAR\",\n      \"stage\": \"closed\",\n      \"level\": \"-1488021950\",\n      \"expirationDate\": \"1955-07-01T06:16:22.603Z\",\n      \"completedAt\": null,\n      \"reportUrl\": \"string\",\n      \"charges\": \"-75442352838.9528286\",\n      \"errorCode\": \"string\",\n      \"errorMessage\": \"string\",\n      \"createdAt\": \"1981-04-01T07:51:25.033Z\",\n      \"updatedAt\": \"1997-07-18T00:22:52.104Z\"\n    }\n  ],\n  \"nextCursor\": \"string\"\n}"},{"id":"415c462d-bd81-46d7-9bca-3ac2b5c9e8c6","name":"`invalid_cursor`: `cursor` isn't a `nextCursor` we issued; start again from the first page. (`invalid_json`: `updated_since` or `limit` isn't a valid value.)","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/checks?updated_since=2023-02-14T17:09:37.346Z&limit=2&cursor=string","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","checks"],"query":[{"key":"updated_since","value":"2023-02-14T17:09:37.346Z","description":"Only return checks whose `updatedAt` is at or after this time. ISO 8601; a time with no offset is treated as UTC. Omit for all checks."},{"key":"limit","value":"2","description":"Page size, 1 to 500 (larger values are clamped). Defaults to 100."},{"key":"cursor","value":"string","description":"The `nextCursor` from the previous page. Omit for the first page. An unknown value is `400 invalid_cursor`."}],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."}]}},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#invalid_cursor\",\n  \"title\": \"One or more validation errors occurred.\",\n  \"status\": 400,\n  \"errors\": {\n    \"cursor\": [\n      \"cursor is not valid. Use the nextCursor value from a previous page.\"\n    ]\n  },\n  \"code\": \"invalid_cursor\"\n}"},{"id":"d02db54b-d6c5-448d-a318-bd155ffcc7db","name":"`invalid_api_key`: the API key is missing, invalid or revoked, or it's a test key on production (or the reverse). Don't retry until the key is fixed.","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/checks?updated_since=2023-02-14T17:09:37.346Z&limit=2&cursor=string","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","checks"],"query":[{"key":"updated_since","value":"2023-02-14T17:09:37.346Z","description":"Only return checks whose `updatedAt` is at or after this time. ISO 8601; a time with no offset is treated as UTC. Omit for all checks."},{"key":"limit","value":"2","description":"Page size, 1 to 500 (larger values are clamped). Defaults to 100."},{"key":"cursor","value":"string","description":"The `nextCursor` from the previous page. Omit for the first page. An unknown value is `400 invalid_cursor`."}],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."}]}},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#invalid_api_key\",\n  \"title\": \"Invalid API key\",\n  \"status\": 401,\n  \"detail\": \"The API key is missing, invalid or revoked.\",\n  \"code\": \"invalid_api_key\"\n}"},{"id":"f208edde-5152-4757-9ffa-e34a5c17295e","name":"`client_not_found`: no client with that `clientId` or `externalClientId` exists under your account. Don't retry.","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/checks?updated_since=2023-02-14T17:09:37.346Z&limit=2&cursor=string","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","checks"],"query":[{"key":"updated_since","value":"2023-02-14T17:09:37.346Z","description":"Only return checks whose `updatedAt` is at or after this time. ISO 8601; a time with no offset is treated as UTC. Omit for all checks."},{"key":"limit","value":"2","description":"Page size, 1 to 500 (larger values are clamped). Defaults to 100."},{"key":"cursor","value":"string","description":"The `nextCursor` from the previous page. Omit for the first page. An unknown value is `400 invalid_cursor`."}],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."}]}},"status":"Not Found","code":404,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#client_not_found\",\n  \"title\": \"Client not found\",\n  \"status\": 404,\n  \"detail\": \"No client 'org-1042' exists under your account.\",\n  \"code\": \"client_not_found\"\n}"},{"id":"04c6733d-420d-4414-b681-e574e4a299bf","name":"`rate_limited`: too many requests with an invalid API key from your IP address. Wait the number of seconds in `Retry-After`. Requests with a valid key are never throttled this way.","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/checks?updated_since=2023-02-14T17:09:37.346Z&limit=2&cursor=string","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","checks"],"query":[{"key":"updated_since","value":"2023-02-14T17:09:37.346Z","description":"Only return checks whose `updatedAt` is at or after this time. ISO 8601; a time with no offset is treated as UTC. Omit for all checks."},{"key":"limit","value":"2","description":"Page size, 1 to 500 (larger values are clamped). Defaults to 100."},{"key":"cursor","value":"string","description":"The `nextCursor` from the previous page. Omit for the first page. An unknown value is `400 invalid_cursor`."}],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."}]}},"status":"Too Many Requests","code":429,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#rate_limited\",\n  \"title\": \"Too many requests\",\n  \"status\": 429,\n  \"detail\": \"Too many requests with an invalid API key from your IP address. Wait for the number of seconds in the Retry-After header.\",\n  \"code\": \"rate_limited\"\n}"}],"_postman_id":"ef3564a3-140d-4821-b83b-f672f3658f1a"},{"name":"Find existing checks by email","id":"b059ec92-1c37-4902-89b6-17f8248c17d7","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"emails\": [\n    \"k708ZAotjaHJdC@ESlCsOyhRBKnrpgtPOEpvCSkmh.uzyh\"\n  ]\n}","options":{"raw":{"language":"json"}}},"url":"https://dev.partners.cbgc.io/clients/:clientRef/checks/lookup","description":"<p>Finds the latest check for each of up to 500 applicant emails, including history imported when a church was\nmoved to you. Each result is keyed by the email's position in your request (<code>index</code>): emails are never\nreturned. Use it to match your own people to existing checks, then link them with\n<code>PATCH /clients/{clientRef}/checks/{checkRef}</code>.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-Api-Key"},{"key":"value","value":""}]},"isInherited":true,"source":{"_postman_id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","name":"Christian Background Checks Partner API","type":"collection"}},"urlObject":{"path":["clients",":clientRef","checks","lookup"],"host":["https://dev.partners.cbgc.io"],"query":[],"variable":[{"id":"8a36f486-7fc2-46c5-9499-df6a96995df0","description":{"content":"<p>The client: our <code>clientId</code> (<code>cl_…</code>) or your own <code>externalClientId</code> (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is <code>404 client_not_found</code>.</p>\n","type":"text/plain"},"type":"any","value":"string","key":"clientRef"}]}},"response":[{"id":"99ba1649-74a7-43bd-bf53-c305f0c0b471","name":"One item per email, in request order, keyed by `index`. `check` is the latest check for that email at this client, or null. Emails are never returned.","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"body":{"mode":"raw","raw":"{\n  \"emails\": [\n    \"k708ZAotjaHJdC@ESlCsOyhRBKnrpgtPOEpvCSkmh.uzyh\"\n  ]\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/checks/lookup","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","checks","lookup"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n  \"items\": [\n    {\n      \"index\": \"-0\",\n      \"check\": {\n        \"id\": \"string\",\n        \"externalIdentifier\": \"string\",\n        \"clientId\": \"string\",\n        \"status\": \"CREATED\",\n        \"stage\": \"queued\",\n        \"level\": \"0\",\n        \"expirationDate\": \"1997-06-23T16:39:29.396Z\",\n        \"completedAt\": null,\n        \"reportUrl\": \"string\",\n        \"charges\": \"-0\",\n        \"errorCode\": \"string\",\n        \"errorMessage\": \"string\",\n        \"createdAt\": \"1953-05-13T01:17:14.044Z\",\n        \"updatedAt\": \"1960-10-19T21:04:34.600Z\"\n      }\n    },\n    {\n      \"index\": \"-9156\",\n      \"check\": null\n    }\n  ]\n}"},{"id":"180a7f69-0a54-4250-a622-0a8655450b9a","name":"`validation_failed`: `emails` is empty, has more than 500 entries, or an entry is longer than 254 characters.","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"body":{"mode":"raw","raw":"{\n  \"emails\": [\n    \"k708ZAotjaHJdC@ESlCsOyhRBKnrpgtPOEpvCSkmh.uzyh\"\n  ]\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/checks/lookup","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","checks","lookup"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."}]}},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#validation_failed\",\n  \"title\": \"One or more validation errors occurred.\",\n  \"status\": 400,\n  \"errors\": {\n    \"emails\": [\n      \"emails can hold at most 500 addresses.\"\n    ]\n  },\n  \"code\": \"validation_failed\"\n}"},{"id":"0e7fdc4e-22a9-4ae7-8c3a-1f0be21cb1c6","name":"`invalid_api_key`: the API key is missing, invalid or revoked, or it's a test key on production (or the reverse). Don't retry until the key is fixed.","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"body":{"mode":"raw","raw":"{\n  \"emails\": [\n    \"k708ZAotjaHJdC@ESlCsOyhRBKnrpgtPOEpvCSkmh.uzyh\"\n  ]\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/checks/lookup","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","checks","lookup"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."}]}},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#invalid_api_key\",\n  \"title\": \"Invalid API key\",\n  \"status\": 401,\n  \"detail\": \"The API key is missing, invalid or revoked.\",\n  \"code\": \"invalid_api_key\"\n}"},{"id":"43fbd67b-a3f9-40a2-8736-0dee74f58eb0","name":"`client_not_found`: no client with that `clientId` or `externalClientId` exists under your account. Don't retry.","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"body":{"mode":"raw","raw":"{\n  \"emails\": [\n    \"k708ZAotjaHJdC@ESlCsOyhRBKnrpgtPOEpvCSkmh.uzyh\"\n  ]\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/checks/lookup","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","checks","lookup"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."}]}},"status":"Not Found","code":404,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#client_not_found\",\n  \"title\": \"Client not found\",\n  \"status\": 404,\n  \"detail\": \"No client 'org-1042' exists under your account.\",\n  \"code\": \"client_not_found\"\n}"},{"id":"edd7dcf5-75de-45a5-b696-0a615b598a1c","name":"`rate_limited`: too many requests with an invalid API key from your IP address. Wait the number of seconds in `Retry-After`. Requests with a valid key are never throttled this way.","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"body":{"mode":"raw","raw":"{\n  \"emails\": [\n    \"k708ZAotjaHJdC@ESlCsOyhRBKnrpgtPOEpvCSkmh.uzyh\"\n  ]\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/checks/lookup","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","checks","lookup"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."}]}},"status":"Too Many Requests","code":429,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#rate_limited\",\n  \"title\": \"Too many requests\",\n  \"status\": 429,\n  \"detail\": \"Too many requests with an invalid API key from your IP address. Wait for the number of seconds in the Retry-After header.\",\n  \"code\": \"rate_limited\"\n}"}],"_postman_id":"b059ec92-1c37-4902-89b6-17f8248c17d7"},{"name":"Set your identifier on a check","id":"18b31013-177e-442e-bc31-53f682a0c387","request":{"method":"PATCH","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"externalIdentifier\": \"string\"\n}","options":{"raw":{"language":"json"}}},"url":"https://dev.partners.cbgc.io/clients/:clientRef/checks/:checkRef","description":"<p>Sets <code>externalIdentifier</code> on a check that doesn't have one yet, so you can link a check (for example one found\nwith <code>POST /clients/{clientRef}/checks/lookup</code>) to your own record. <code>409</code> if the check already has an\nidentifier, or if another of your checks uses that value. <code>checkRef</code> is the check's <code>id</code> (<code>chk_…</code>).</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-Api-Key"},{"key":"value","value":""}]},"isInherited":true,"source":{"_postman_id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","name":"Christian Background Checks Partner API","type":"collection"}},"urlObject":{"path":["clients",":clientRef","checks",":checkRef"],"host":["https://dev.partners.cbgc.io"],"query":[],"variable":[{"id":"a56c335e-dd3b-47b0-b166-5adbdf6ea109","description":{"content":"<p>The client: our <code>clientId</code> (<code>cl_…</code>) or your own <code>externalClientId</code> (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is <code>404 client_not_found</code>.</p>\n","type":"text/plain"},"type":"any","value":"string","key":"clientRef"},{"id":"9fe0fc33-8cba-4d98-bc35-c3911bba9063","description":{"content":"<p>The check: its <code>id</code> (<code>chk_…</code>) or your <code>externalIdentifier</code>. Resolves only among your own checks (of that client, where the path names one).</p>\n","type":"text/plain"},"type":"any","value":"string","key":"checkRef"}]}},"response":[{"id":"34d06f3a-96b9-473b-99af-6566bf645e0e","name":"The check, now with your `externalIdentifier`.","originalRequest":{"method":"PATCH","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"body":{"mode":"raw","raw":"{\n  \"externalIdentifier\": \"string\"\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/checks/:checkRef","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","checks",":checkRef"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."},{"key":"checkRef","value":"string","description":"The check: its `id` (`chk_…`) or your `externalIdentifier`. Resolves only among your own checks (of that client, where the path names one)."}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n  \"id\": \"string\",\n  \"externalIdentifier\": \"string\",\n  \"clientId\": \"string\",\n  \"status\": \"ERROR\",\n  \"stage\": \"in_progress\",\n  \"level\": \"-0\",\n  \"expirationDate\": \"1961-05-23T19:23:23.425Z\",\n  \"completedAt\": null,\n  \"reportUrl\": null,\n  \"charges\": \"-482097765.95644830363\",\n  \"errorCode\": null,\n  \"errorMessage\": \"string\",\n  \"createdAt\": \"1970-07-26T11:55:05.226Z\",\n  \"updatedAt\": \"1964-03-01T04:39:16.306Z\"\n}"},{"id":"9c206b66-e873-4501-9368-26f6dcd571fd","name":"`validation_failed`: `externalIdentifier` is missing or longer than 100 characters.","originalRequest":{"method":"PATCH","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"body":{"mode":"raw","raw":"{\n  \"externalIdentifier\": \"string\"\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/checks/:checkRef","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","checks",":checkRef"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."},{"key":"checkRef","value":"string","description":"The check: its `id` (`chk_…`) or your `externalIdentifier`. Resolves only among your own checks (of that client, where the path names one)."}]}},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#validation_failed\",\n  \"title\": \"One or more validation errors occurred.\",\n  \"status\": 400,\n  \"errors\": {\n    \"externalIdentifier\": [\n      \"externalIdentifier is required.\"\n    ]\n  },\n  \"code\": \"validation_failed\"\n}"},{"id":"efe6d3af-1d6c-45c6-9f06-d12fe211bbc3","name":"`invalid_api_key`: the API key is missing, invalid or revoked, or it's a test key on production (or the reverse). Don't retry until the key is fixed.","originalRequest":{"method":"PATCH","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"body":{"mode":"raw","raw":"{\n  \"externalIdentifier\": \"string\"\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/checks/:checkRef","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","checks",":checkRef"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."},{"key":"checkRef","value":"string","description":"The check: its `id` (`chk_…`) or your `externalIdentifier`. Resolves only among your own checks (of that client, where the path names one)."}]}},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#invalid_api_key\",\n  \"title\": \"Invalid API key\",\n  \"status\": 401,\n  \"detail\": \"The API key is missing, invalid or revoked.\",\n  \"code\": \"invalid_api_key\"\n}"},{"id":"0c7d3d16-72d8-4c0e-804d-efcb881bf44b","name":"`client_not_found` or `check_not_found`: the client, or the check within it, doesn't exist under your account. Don't retry.","originalRequest":{"method":"PATCH","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"body":{"mode":"raw","raw":"{\n  \"externalIdentifier\": \"string\"\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/checks/:checkRef","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","checks",":checkRef"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."},{"key":"checkRef","value":"string","description":"The check: its `id` (`chk_…`) or your `externalIdentifier`. Resolves only among your own checks (of that client, where the path names one)."}]}},"status":"Not Found","code":404,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#check_not_found\",\n  \"title\": \"Check not found\",\n  \"status\": 404,\n  \"detail\": \"No check 'vol-8841' exists for client 'org-1042'.\",\n  \"code\": \"check_not_found\"\n}"},{"id":"2b3b0912-12bb-471d-b959-0488b144ab47","name":"`external_identifier_in_use`: the check already has an `externalIdentifier` (it can be set once), or another of your checks uses that value. Nothing changed.","originalRequest":{"method":"PATCH","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"body":{"mode":"raw","raw":"{\n  \"externalIdentifier\": \"string\"\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/checks/:checkRef","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","checks",":checkRef"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."},{"key":"checkRef","value":"string","description":"The check: its `id` (`chk_…`) or your `externalIdentifier`. Resolves only among your own checks (of that client, where the path names one)."}]}},"status":"Conflict","code":409,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#external_identifier_in_use\",\n  \"title\": \"External identifier in use\",\n  \"status\": 409,\n  \"detail\": \"Another of your checks already uses that externalIdentifier.\",\n  \"code\": \"external_identifier_in_use\"\n}"},{"id":"3dcf0f5d-76bc-49bd-a9aa-b6a1edf70c2b","name":"`rate_limited`: too many requests with an invalid API key from your IP address. Wait the number of seconds in `Retry-After`. Requests with a valid key are never throttled this way.","originalRequest":{"method":"PATCH","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"body":{"mode":"raw","raw":"{\n  \"externalIdentifier\": \"string\"\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/checks/:checkRef","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","checks",":checkRef"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."},{"key":"checkRef","value":"string","description":"The check: its `id` (`chk_…`) or your `externalIdentifier`. Resolves only among your own checks (of that client, where the path names one)."}]}},"status":"Too Many Requests","code":429,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#rate_limited\",\n  \"title\": \"Too many requests\",\n  \"status\": 429,\n  \"detail\": \"Too many requests with an invalid API key from your IP address. Wait for the number of seconds in the Retry-After header.\",\n  \"code\": \"rate_limited\"\n}"}],"_postman_id":"18b31013-177e-442e-bc31-53f682a0c387"},{"name":"Get a check","id":"28a792df-4607-473c-986d-50b918e16dcd","request":{"method":"GET","header":[{"key":"Accept","value":"application/json"}],"url":"https://dev.partners.cbgc.io/clients/:clientRef/checks/:checkRef","description":"<p>Returns one check. <code>checkRef</code> may be the check's <code>id</code> (<code>chk_…</code>) or your <code>externalIdentifier</code>.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-Api-Key"},{"key":"value","value":""}]},"isInherited":true,"source":{"_postman_id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","name":"Christian Background Checks Partner API","type":"collection"}},"urlObject":{"path":["clients",":clientRef","checks",":checkRef"],"host":["https://dev.partners.cbgc.io"],"query":[],"variable":[{"id":"4a36b9cf-fad7-46f7-93f7-a5e36e3fd591","description":{"content":"<p>The client: our <code>clientId</code> (<code>cl_…</code>) or your own <code>externalClientId</code> (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is <code>404 client_not_found</code>.</p>\n","type":"text/plain"},"type":"any","value":"string","key":"clientRef"},{"id":"37a696f5-cd32-4d17-8a3d-4f2d87f5d6ba","description":{"content":"<p>The check: its <code>id</code> (<code>chk_…</code>) or your <code>externalIdentifier</code>. Resolves only among your own checks (of that client, where the path names one).</p>\n","type":"text/plain"},"type":"any","value":"string","key":"checkRef"}]}},"response":[{"id":"0409b421-5a50-4765-a58b-c589e2c21f4b","name":"The check's current state.","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/checks/:checkRef","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","checks",":checkRef"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."},{"key":"checkRef","value":"string","description":"The check: its `id` (`chk_…`) or your `externalIdentifier`. Resolves only among your own checks (of that client, where the path names one)."}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n  \"id\": \"string\",\n  \"externalIdentifier\": \"string\",\n  \"clientId\": \"string\",\n  \"status\": \"ERROR\",\n  \"stage\": \"in_progress\",\n  \"level\": \"-0\",\n  \"expirationDate\": \"1961-05-23T19:23:23.425Z\",\n  \"completedAt\": null,\n  \"reportUrl\": null,\n  \"charges\": \"-482097765.95644830363\",\n  \"errorCode\": null,\n  \"errorMessage\": \"string\",\n  \"createdAt\": \"1970-07-26T11:55:05.226Z\",\n  \"updatedAt\": \"1964-03-01T04:39:16.306Z\"\n}"},{"id":"f33a6b53-08a3-4a47-bad2-9ad5b96c1a83","name":"`invalid_api_key`: the API key is missing, invalid or revoked, or it's a test key on production (or the reverse). Don't retry until the key is fixed.","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/checks/:checkRef","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","checks",":checkRef"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."},{"key":"checkRef","value":"string","description":"The check: its `id` (`chk_…`) or your `externalIdentifier`. Resolves only among your own checks (of that client, where the path names one)."}]}},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#invalid_api_key\",\n  \"title\": \"Invalid API key\",\n  \"status\": 401,\n  \"detail\": \"The API key is missing, invalid or revoked.\",\n  \"code\": \"invalid_api_key\"\n}"},{"id":"8916487d-169f-49c2-b317-165030501f68","name":"`client_not_found` or `check_not_found`: the client, or the check within it, doesn't exist under your account. Don't retry.","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/checks/:checkRef","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","checks",":checkRef"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."},{"key":"checkRef","value":"string","description":"The check: its `id` (`chk_…`) or your `externalIdentifier`. Resolves only among your own checks (of that client, where the path names one)."}]}},"status":"Not Found","code":404,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#check_not_found\",\n  \"title\": \"Check not found\",\n  \"status\": 404,\n  \"detail\": \"No check 'vol-8841' exists for client 'org-1042'.\",\n  \"code\": \"check_not_found\"\n}"},{"id":"10b21fff-3c2d-4a02-8b9f-9c617bffe688","name":"`rate_limited`: too many requests with an invalid API key from your IP address. Wait the number of seconds in `Retry-After`. Requests with a valid key are never throttled this way.","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/checks/:checkRef","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","checks",":checkRef"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."},{"key":"checkRef","value":"string","description":"The check: its `id` (`chk_…`) or your `externalIdentifier`. Resolves only among your own checks (of that client, where the path names one)."}]}},"status":"Too Many Requests","code":429,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#rate_limited\",\n  \"title\": \"Too many requests\",\n  \"status\": 429,\n  \"detail\": \"Too many requests with an invalid API key from your IP address. Wait for the number of seconds in the Retry-After header.\",\n  \"code\": \"rate_limited\"\n}"}],"_postman_id":"28a792df-4607-473c-986d-50b918e16dcd"},{"name":"Cancel a check","id":"ff28e9fd-912e-4e05-98e1-2d75703b878f","request":{"method":"POST","header":[{"key":"Accept","value":"application/json"}],"url":"https://dev.partners.cbgc.io/clients/:clientRef/checks/:checkRef/cancel","description":"<p>Cancels a check, e.g. one ordered by mistake. Cancel before the applicant submits their information to avoid\ncharges. <code>checkRef</code> may be the check's <code>id</code> (<code>chk_…</code>) or your <code>externalIdentifier</code>.</p>\n<p>The check is marked <code>CANCELLED</code> either way. <code>upstreamCancelled</code> tells you whether the screening provider\nconfirmed it; if it's false, the check may still be processed, so contact support.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-Api-Key"},{"key":"value","value":""}]},"isInherited":true,"source":{"_postman_id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","name":"Christian Background Checks Partner API","type":"collection"}},"urlObject":{"path":["clients",":clientRef","checks",":checkRef","cancel"],"host":["https://dev.partners.cbgc.io"],"query":[],"variable":[{"id":"a9e783c0-9881-4e01-b7b7-718505305552","description":{"content":"<p>The client: our <code>clientId</code> (<code>cl_…</code>) or your own <code>externalClientId</code> (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is <code>404 client_not_found</code>.</p>\n","type":"text/plain"},"type":"any","value":"string","key":"clientRef"},{"id":"49cacf3c-1b78-4735-9a4f-02c43fd0490c","description":{"content":"<p>The check: its <code>id</code> (<code>chk_…</code>) or your <code>externalIdentifier</code>. Resolves only among your own checks (of that client, where the path names one).</p>\n","type":"text/plain"},"type":"any","value":"string","key":"checkRef"}]}},"response":[{"id":"3243e187-6cb2-4055-952e-cbda6d423f9b","name":"The check is now `CANCELLED`. If `upstreamCancelled` is false the screening provider didn't confirm it and the check may still be processed and billed: contact support.","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/checks/:checkRef/cancel","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","checks",":checkRef","cancel"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."},{"key":"checkRef","value":"string","description":"The check: its `id` (`chk_…`) or your `externalIdentifier`. Resolves only among your own checks (of that client, where the path names one)."}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n  \"upstreamCancelled\": false,\n  \"id\": \"string\",\n  \"externalIdentifier\": \"string\",\n  \"clientId\": \"string\",\n  \"status\": \"REVIEW\",\n  \"stage\": \"submitting\",\n  \"level\": \"-0\",\n  \"expirationDate\": null,\n  \"completedAt\": \"2020-03-29T14:05:16.946Z\",\n  \"reportUrl\": null,\n  \"charges\": \"-7725269.50744833\",\n  \"errorCode\": \"string\",\n  \"errorMessage\": \"string\",\n  \"createdAt\": \"2026-01-10T04:21:24.723Z\",\n  \"updatedAt\": \"2001-12-25T10:02:28.470Z\"\n}"},{"id":"a7f6c96a-00cc-44b8-9027-4f3a42bb87a3","name":"`invalid_api_key`: the API key is missing, invalid or revoked, or it's a test key on production (or the reverse). Don't retry until the key is fixed.","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/checks/:checkRef/cancel","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","checks",":checkRef","cancel"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."},{"key":"checkRef","value":"string","description":"The check: its `id` (`chk_…`) or your `externalIdentifier`. Resolves only among your own checks (of that client, where the path names one)."}]}},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#invalid_api_key\",\n  \"title\": \"Invalid API key\",\n  \"status\": 401,\n  \"detail\": \"The API key is missing, invalid or revoked.\",\n  \"code\": \"invalid_api_key\"\n}"},{"id":"28daae66-f0c6-4f56-a2d2-25a4e62617d1","name":"`client_not_found` or `check_not_found`: the client, or the check within it, doesn't exist under your account. Don't retry.","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/checks/:checkRef/cancel","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","checks",":checkRef","cancel"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."},{"key":"checkRef","value":"string","description":"The check: its `id` (`chk_…`) or your `externalIdentifier`. Resolves only among your own checks (of that client, where the path names one)."}]}},"status":"Not Found","code":404,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#check_not_found\",\n  \"title\": \"Check not found\",\n  \"status\": 404,\n  \"detail\": \"No check 'vol-8841' exists for client 'org-1042'.\",\n  \"code\": \"check_not_found\"\n}"},{"id":"aebc6809-0786-44af-8ded-a0b6cc656864","name":"`rate_limited`: too many requests with an invalid API key from your IP address. Wait the number of seconds in `Retry-After`. Requests with a valid key are never throttled this way.","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/checks/:checkRef/cancel","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","checks",":checkRef","cancel"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."},{"key":"checkRef","value":"string","description":"The check: its `id` (`chk_…`) or your `externalIdentifier`. Resolves only among your own checks (of that client, where the path names one)."}]}},"status":"Too Many Requests","code":429,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#rate_limited\",\n  \"title\": \"Too many requests\",\n  \"status\": 429,\n  \"detail\": \"Too many requests with an invalid API key from your IP address. Wait for the number of seconds in the Retry-After header.\",\n  \"code\": \"rate_limited\"\n}"}],"_postman_id":"ff28e9fd-912e-4e05-98e1-2d75703b878f"},{"name":"Re-send the applicant's invitation","id":"59e388dd-dd88-44b9-8457-039e1573fc19","request":{"method":"POST","header":[{"key":"Accept","value":"application/json"}],"url":"https://dev.partners.cbgc.io/clients/:clientRef/checks/:checkRef/remind","description":"<p>Sends the applicant their invitation again: by email, and by text if <code>applicantPhone</code> was sent with the\norder. Only for a check waiting for the applicant (<code>CREATED</code>, stage <code>awaiting_applicant</code>), at most once an\nhour. <code>checkRef</code> may be the check's <code>id</code> (<code>chk_…</code>) or your <code>externalIdentifier</code>.</p>\n<p><code>409 check_not_awaiting_applicant</code> if the applicant already finished (or the check is closed);\n<code>409 reminder_too_soon</code> within an hour of the last reminder.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-Api-Key"},{"key":"value","value":""}]},"isInherited":true,"source":{"_postman_id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","name":"Christian Background Checks Partner API","type":"collection"}},"urlObject":{"path":["clients",":clientRef","checks",":checkRef","remind"],"host":["https://dev.partners.cbgc.io"],"query":[],"variable":[{"id":"e367fe35-5281-4f20-85ed-9d56663992d1","description":{"content":"<p>The client: our <code>clientId</code> (<code>cl_…</code>) or your own <code>externalClientId</code> (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is <code>404 client_not_found</code>.</p>\n","type":"text/plain"},"type":"any","value":"string","key":"clientRef"},{"id":"e07de226-d498-4138-8d84-702e372eea74","description":{"content":"<p>The check: its <code>id</code> (<code>chk_…</code>) or your <code>externalIdentifier</code>. Resolves only among your own checks (of that client, where the path names one).</p>\n","type":"text/plain"},"type":"any","value":"string","key":"checkRef"}]}},"response":[{"id":"401f911a-5c57-4155-88f1-eb86a0cb9fc2","name":"OK","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/checks/:checkRef/remind","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","checks",":checkRef","remind"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."},{"key":"checkRef","value":"string","description":"The check: its `id` (`chk_…`) or your `externalIdentifier`. Resolves only among your own checks (of that client, where the path names one)."}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n  \"id\": \"string\",\n  \"remindedAt\": \"1948-09-10T19:32:51.053Z\"\n}"},{"id":"15d3969a-4c9f-438e-b555-463af6cb5eb9","name":"`invalid_api_key`: the API key is missing, invalid or revoked, or it's a test key on production (or the reverse). Don't retry until the key is fixed.","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/checks/:checkRef/remind","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","checks",":checkRef","remind"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."},{"key":"checkRef","value":"string","description":"The check: its `id` (`chk_…`) or your `externalIdentifier`. Resolves only among your own checks (of that client, where the path names one)."}]}},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#invalid_api_key\",\n  \"title\": \"Invalid API key\",\n  \"status\": 401,\n  \"detail\": \"The API key is missing, invalid or revoked.\",\n  \"code\": \"invalid_api_key\"\n}"},{"id":"b67aacba-d6ff-4335-9000-40a9226159a7","name":"Not Found","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/checks/:checkRef/remind","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","checks",":checkRef","remind"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."},{"key":"checkRef","value":"string","description":"The check: its `id` (`chk_…`) or your `externalIdentifier`. Resolves only among your own checks (of that client, where the path names one)."}]}},"status":"Not Found","code":404,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": null,\n  \"title\": \"string\",\n  \"status\": \"-0\",\n  \"detail\": \"string\",\n  \"instance\": null\n}"},{"id":"718f5856-640f-4265-9b53-3679a120833e","name":"Conflict","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/checks/:checkRef/remind","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","checks",":checkRef","remind"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."},{"key":"checkRef","value":"string","description":"The check: its `id` (`chk_…`) or your `externalIdentifier`. Resolves only among your own checks (of that client, where the path names one)."}]}},"status":"Conflict","code":409,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": null,\n  \"title\": \"string\",\n  \"status\": \"-0\",\n  \"detail\": \"string\",\n  \"instance\": null\n}"},{"id":"b2eedc44-d4b1-4600-9ba5-4050b8306c6e","name":"`rate_limited`: too many requests with an invalid API key from your IP address. Wait the number of seconds in `Retry-After`. Requests with a valid key are never throttled this way.","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/checks/:checkRef/remind","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","checks",":checkRef","remind"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."},{"key":"checkRef","value":"string","description":"The check: its `id` (`chk_…`) or your `externalIdentifier`. Resolves only among your own checks (of that client, where the path names one)."}]}},"status":"Too Many Requests","code":429,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#rate_limited\",\n  \"title\": \"Too many requests\",\n  \"status\": 429,\n  \"detail\": \"Too many requests with an invalid API key from your IP address. Wait for the number of seconds in the Retry-After header.\",\n  \"code\": \"rate_limited\"\n}"},{"id":"5d455608-4245-4385-994d-8e84ff2059a2","name":"Bad Gateway","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/checks/:checkRef/remind","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","checks",":checkRef","remind"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."},{"key":"checkRef","value":"string","description":"The check: its `id` (`chk_…`) or your `externalIdentifier`. Resolves only among your own checks (of that client, where the path names one)."}]}},"status":"Bad Gateway","code":502,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": null,\n  \"title\": \"string\",\n  \"status\": \"-0\",\n  \"detail\": \"string\",\n  \"instance\": null\n}"}],"_postman_id":"59e388dd-dd88-44b9-8457-039e1573fc19"},{"name":"Re-send a check's webhook","id":"9782baed-6798-4ca5-866d-82c7271940c8","request":{"method":"POST","header":[{"key":"Accept","value":"application/json"}],"url":"https://dev.partners.cbgc.io/clients/:clientRef/checks/:checkRef/replay-webhook","description":"<p>Queues a new delivery of the <code>check.updated</code> webhook with the check's current state, e.g. after your endpoint\nwas down. Delivery is asynchronous and retried like any other webhook. <code>checkRef</code> may be the check's <code>id</code> (<code>chk_…</code>) or your <code>externalIdentifier</code>.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-Api-Key"},{"key":"value","value":""}]},"isInherited":true,"source":{"_postman_id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","name":"Christian Background Checks Partner API","type":"collection"}},"urlObject":{"path":["clients",":clientRef","checks",":checkRef","replay-webhook"],"host":["https://dev.partners.cbgc.io"],"query":[],"variable":[{"id":"4ddf4967-2773-40e0-acb1-b641312608a4","description":{"content":"<p>The client: our <code>clientId</code> (<code>cl_…</code>) or your own <code>externalClientId</code> (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is <code>404 client_not_found</code>.</p>\n","type":"text/plain"},"type":"any","value":"string","key":"clientRef"},{"id":"c977b5aa-5041-4f57-8a05-fd06551b5af8","description":{"content":"<p>The check: its <code>id</code> (<code>chk_…</code>) or your <code>externalIdentifier</code>. Resolves only among your own checks (of that client, where the path names one).</p>\n","type":"text/plain"},"type":"any","value":"string","key":"checkRef"}]}},"response":[{"id":"17259337-ad51-4c20-90fb-de527cec16b9","name":"A new `check.updated` delivery with the check's current state was queued (a new `eventId`).","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/checks/:checkRef/replay-webhook","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","checks",":checkRef","replay-webhook"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."},{"key":"checkRef","value":"string","description":"The check: its `id` (`chk_…`) or your `externalIdentifier`. Resolves only among your own checks (of that client, where the path names one)."}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n  \"message\": \"string\",\n  \"id\": \"string\",\n  \"status\": \"QUEUED\"\n}"},{"id":"e4894d29-b814-4def-8285-e85f8481d02c","name":"`invalid_api_key`: the API key is missing, invalid or revoked, or it's a test key on production (or the reverse). Don't retry until the key is fixed.","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/checks/:checkRef/replay-webhook","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","checks",":checkRef","replay-webhook"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."},{"key":"checkRef","value":"string","description":"The check: its `id` (`chk_…`) or your `externalIdentifier`. Resolves only among your own checks (of that client, where the path names one)."}]}},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#invalid_api_key\",\n  \"title\": \"Invalid API key\",\n  \"status\": 401,\n  \"detail\": \"The API key is missing, invalid or revoked.\",\n  \"code\": \"invalid_api_key\"\n}"},{"id":"20cb05fe-8ef5-46c9-8697-c704feab9c7f","name":"`client_not_found` or `check_not_found`: the client, or the check within it, doesn't exist under your account. Don't retry.","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/checks/:checkRef/replay-webhook","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","checks",":checkRef","replay-webhook"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."},{"key":"checkRef","value":"string","description":"The check: its `id` (`chk_…`) or your `externalIdentifier`. Resolves only among your own checks (of that client, where the path names one)."}]}},"status":"Not Found","code":404,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#check_not_found\",\n  \"title\": \"Check not found\",\n  \"status\": 404,\n  \"detail\": \"No check 'vol-8841' exists for client 'org-1042'.\",\n  \"code\": \"check_not_found\"\n}"},{"id":"2d404b9c-5dc2-4f5c-9197-d61b7f3e3cf8","name":"`rate_limited`: too many requests with an invalid API key from your IP address. Wait the number of seconds in `Retry-After`. Requests with a valid key are never throttled this way.","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/problem+json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"url":{"raw":"https://dev.partners.cbgc.io/clients/:clientRef/checks/:checkRef/replay-webhook","host":["https://dev.partners.cbgc.io"],"path":["clients",":clientRef","checks",":checkRef","replay-webhook"],"variable":[{"key":"clientRef","value":"string","description":"The client: our `clientId` (`cl_…`) or your own `externalClientId` (at most 100 characters; URL-encode it). Both resolve only among your own clients; anything else is `404 client_not_found`."},{"key":"checkRef","value":"string","description":"The check: its `id` (`chk_…`) or your `externalIdentifier`. Resolves only among your own checks (of that client, where the path names one)."}]}},"status":"Too Many Requests","code":429,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/problem+json"}],"cookie":[],"responseTime":null,"body":"{\n  \"type\": \"https://partners.cbgc.io/docs/errors.md#rate_limited\",\n  \"title\": \"Too many requests\",\n  \"status\": 429,\n  \"detail\": \"Too many requests with an invalid API key from your IP address. Wait for the number of seconds in the Retry-After header.\",\n  \"code\": \"rate_limited\"\n}"}],"_postman_id":"9782baed-6798-4ca5-866d-82c7271940c8"}],"id":"b40a5b6a-4b91-4ece-92e4-8a341c1b0248","description":"<p>Order (one at a time or in batches), track, cancel and look up background checks for a client's applicants.</p>\n","_postman_id":"b40a5b6a-4b91-4ece-92e4-8a341c1b0248","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-Api-Key"},{"key":"value","value":""}]},"isInherited":true,"source":{"_postman_id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","name":"Christian Background Checks Partner API","type":"collection"}}},{"name":"Webhooks","item":[{"name":"Check status changed","id":"276a189e-6e8f-4bf4-b8a0-1482b3423b02","request":{"method":"POST","header":[{"key":"X-Partner-Signature","value":"string","description":"<p>Lowercase hex HMAC-SHA256 of the raw request body, keyed with the UTF-8 bytes of your whole webhook secret (<code>whsec_</code> prefix included).</p>\n"},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"event\": \"check.updated\",\n  \"eventId\": \"e7a1c3b5-2d4f-4a6b-8c9d-0e1f2a3b4c5d\",\n  \"id\": \"chk_9c2e4f6a1b3d4e5f8a7b6c5d\",\n  \"externalIdentifier\": \"vol-8841\",\n  \"clientId\": \"cl_5b0e6f2a8c1d4e7b9a3f2d6c\",\n  \"status\": \"CLEAR\",\n  \"stage\": \"complete\",\n  \"level\": 2,\n  \"expirationDate\": \"2028-10-18T18:22:41Z\",\n  \"completedAt\": \"2026-10-18T18:22:41Z\",\n  \"timestamp\": \"2026-10-18T18:22:42Z\"\n}","options":{"raw":{"language":"json"}}},"url":"https://dev.partners.cbgc.iocheck.updated","description":"<p>Sent to your webhook URL whenever a check changes status (including each step of a batch and automatic\nresolution of a <code>PENDING</code> check), and when you call <strong>Re-send a check's webhook</strong>. The payload carries both\n<code>status</code> and the finer <code>stage</code>.</p>\n<p><strong>Verify every delivery</strong> before trusting it: compute HMAC-SHA256 over the raw request body (the exact bytes you\nreceived, before parsing), keyed with the UTF-8 bytes of your whole webhook secret (<code>whsec_</code> prefix included),\nhex-encode it in lowercase, and compare it to the <code>X-Partner-Signature</code> header in constant time.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-js\">// Node.js 20+ (rawBody is a Buffer of the exact request body)\nimport crypto from \"node:crypto\";\nconst expected = crypto.createHmac(\"sha256\", process.env.DATASOURCE_WEBHOOK_SECRET).update(rawBody).digest(\"hex\");\nconst given = Buffer.from(req.get(\"X-Partner-Signature\") ?? \"\", \"utf8\");\nconst valid = given.length === expected.length &amp;&amp; crypto.timingSafeEqual(given, Buffer.from(expected, \"utf8\"));\n</code></pre>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-python\"># Python 3\nimport hashlib, hmac, os\nexpected = hmac.new(os.environ[\"DATASOURCE_WEBHOOK_SECRET\"].encode(\"utf-8\"), raw_body, hashlib.sha256).hexdigest()\nvalid = hmac.compare_digest(expected, request.headers.get(\"X-Partner-Signature\", \"\"))\n</code></pre>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-csharp\">// C#\nvar expected = Convert.ToHexString(HMACSHA256.HashData(Encoding.UTF8.GetBytes(secret), rawBody)).ToLowerInvariant();\nvar valid = CryptographicOperations.FixedTimeEquals(Encoding.UTF8.GetBytes(expected), Encoding.UTF8.GetBytes(signatureHeader ?? \"\"));\n</code></pre>\n<p><strong>Delivery.</strong> Respond with any <code>2xx</code> within 15 seconds; do slow work asynchronously. Anything else is retried up to\n5 more times with increasing delays. Delivery is at least once and not ordered: drop repeats by <code>eventId</code> (the same\non every retry of one event), and keep the state with the latest <code>timestamp</code> for each check (key checks by <code>id</code>).</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-Api-Key"},{"key":"value","value":""}]},"isInherited":true,"source":{"_postman_id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","name":"Christian Background Checks Partner API","type":"collection"}},"urlObject":{"host":["https://dev.partners.cbgc.iocheck","updated"],"query":[],"variable":[]}},"response":[{"id":"4c06fff8-190b-4310-a5b8-5a6ef191e19f","name":"Any 2xx acknowledges receipt.","originalRequest":{"method":"POST","header":[{"key":"X-Partner-Signature","value":"string","description":"Lowercase hex HMAC-SHA256 of the raw request body, keyed with the UTF-8 bytes of your whole webhook secret (`whsec_` prefix included)."},{"key":"Content-Type","value":"application/json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"body":{"mode":"raw","raw":"{\n  \"event\": \"check.updated\",\n  \"eventId\": \"e7a1c3b5-2d4f-4a6b-8c9d-0e1f2a3b4c5d\",\n  \"id\": \"chk_9c2e4f6a1b3d4e5f8a7b6c5d\",\n  \"externalIdentifier\": \"vol-8841\",\n  \"clientId\": \"cl_5b0e6f2a8c1d4e7b9a3f2d6c\",\n  \"status\": \"CLEAR\",\n  \"stage\": \"complete\",\n  \"level\": 2,\n  \"expirationDate\": \"2028-10-18T18:22:41Z\",\n  \"completedAt\": \"2026-10-18T18:22:41Z\",\n  \"timestamp\": \"2026-10-18T18:22:42Z\"\n}","options":{"raw":{"language":"json"}}},"url":"https://dev.partners.cbgc.iocheck.updated"},"status":"OK","code":200,"_postman_previewlanguage":"text","header":null,"cookie":[],"responseTime":null,"body":""},{"id":"581c14aa-8eca-467f-bc90-9e05b98cf93a","name":"Anything else, a timeout (15 seconds) or a connection error is retried, up to 5 more times with increasing delays. Redirects are not followed.","originalRequest":{"method":"POST","header":[{"key":"X-Partner-Signature","value":"string","description":"Lowercase hex HMAC-SHA256 of the raw request body, keyed with the UTF-8 bytes of your whole webhook secret (`whsec_` prefix included)."},{"key":"Content-Type","value":"application/json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"body":{"mode":"raw","raw":"{\n  \"event\": \"check.updated\",\n  \"eventId\": \"e7a1c3b5-2d4f-4a6b-8c9d-0e1f2a3b4c5d\",\n  \"id\": \"chk_9c2e4f6a1b3d4e5f8a7b6c5d\",\n  \"externalIdentifier\": \"vol-8841\",\n  \"clientId\": \"cl_5b0e6f2a8c1d4e7b9a3f2d6c\",\n  \"status\": \"CLEAR\",\n  \"stage\": \"complete\",\n  \"level\": 2,\n  \"expirationDate\": \"2028-10-18T18:22:41Z\",\n  \"completedAt\": \"2026-10-18T18:22:41Z\",\n  \"timestamp\": \"2026-10-18T18:22:42Z\"\n}","options":{"raw":{"language":"json"}}},"url":"https://dev.partners.cbgc.iocheck.updated"},"status":"OK","code":200,"_postman_previewlanguage":"text","header":null,"cookie":[],"responseTime":null,"body":""}],"_postman_id":"276a189e-6e8f-4bf4-b8a0-1482b3423b02"},{"name":"Batch completed","id":"6c952804-88df-4472-aa3c-4832b4d2f2f5","request":{"method":"POST","header":[{"key":"X-Partner-Signature","value":"string","description":"<p>Lowercase hex HMAC-SHA256 of the raw request body, keyed with the UTF-8 bytes of your whole webhook secret (<code>whsec_</code> prefix included).</p>\n"},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"event\": \"batch.completed\",\n  \"eventId\": \"0b8f2e6d-4c1a-4f3e-9d7b-5a2c8e1f6d30\",\n  \"timestamp\": \"2026-10-16T15:12:30Z\",\n  \"batchId\": \"3f1c0b9e-7a52-4a6e-9d0c-5e7d2b1a8c44\",\n  \"batchReference\": \"onboarding-2026-10-16\",\n  \"clientId\": \"cl_5b0e6f2a8c1d4e7b9a3f2d6c\",\n  \"externalClientId\": \"org-1042\",\n  \"counts\": {\n    \"QUEUED\": 0,\n    \"PENDING\": 0,\n    \"CREATED\": 1\n  }\n}","options":{"raw":{"language":"json"}}},"url":"https://dev.partners.cbgc.iobatch.completed","description":"<p>Sent once when no check of a batch is <code>QUEUED</code> or <code>PENDING</code> any more: every check has been submitted (or released). It is not a results event; results come as <code>check.updated</code>. Same signature, retry and <code>eventId</code> rules as <code>check.updated</code>.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-Api-Key"},{"key":"value","value":""}]},"isInherited":true,"source":{"_postman_id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","name":"Christian Background Checks Partner API","type":"collection"}},"urlObject":{"host":["https://dev.partners.cbgc.iobatch","completed"],"query":[],"variable":[]}},"response":[{"id":"42f2b7be-899b-4a6f-b106-5d8967e344e1","name":"Any 2xx acknowledges receipt.","originalRequest":{"method":"POST","header":[{"key":"X-Partner-Signature","value":"string","description":"Lowercase hex HMAC-SHA256 of the raw request body, keyed with the UTF-8 bytes of your whole webhook secret (`whsec_` prefix included)."},{"key":"Content-Type","value":"application/json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"body":{"mode":"raw","raw":"{\n  \"event\": \"batch.completed\",\n  \"eventId\": \"0b8f2e6d-4c1a-4f3e-9d7b-5a2c8e1f6d30\",\n  \"timestamp\": \"2026-10-16T15:12:30Z\",\n  \"batchId\": \"3f1c0b9e-7a52-4a6e-9d0c-5e7d2b1a8c44\",\n  \"batchReference\": \"onboarding-2026-10-16\",\n  \"clientId\": \"cl_5b0e6f2a8c1d4e7b9a3f2d6c\",\n  \"externalClientId\": \"org-1042\",\n  \"counts\": {\n    \"QUEUED\": 0,\n    \"PENDING\": 0,\n    \"CREATED\": 1\n  }\n}","options":{"raw":{"language":"json"}}},"url":"https://dev.partners.cbgc.iobatch.completed"},"status":"OK","code":200,"_postman_previewlanguage":"text","header":null,"cookie":[],"responseTime":null,"body":""},{"id":"7e69ad3d-c9a6-47d9-bbe6-82bdf408111e","name":"Anything else, a timeout (15 seconds) or a connection error is retried, up to 5 more times with increasing delays. Redirects are not followed.","originalRequest":{"method":"POST","header":[{"key":"X-Partner-Signature","value":"string","description":"Lowercase hex HMAC-SHA256 of the raw request body, keyed with the UTF-8 bytes of your whole webhook secret (`whsec_` prefix included)."},{"key":"Content-Type","value":"application/json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"body":{"mode":"raw","raw":"{\n  \"event\": \"batch.completed\",\n  \"eventId\": \"0b8f2e6d-4c1a-4f3e-9d7b-5a2c8e1f6d30\",\n  \"timestamp\": \"2026-10-16T15:12:30Z\",\n  \"batchId\": \"3f1c0b9e-7a52-4a6e-9d0c-5e7d2b1a8c44\",\n  \"batchReference\": \"onboarding-2026-10-16\",\n  \"clientId\": \"cl_5b0e6f2a8c1d4e7b9a3f2d6c\",\n  \"externalClientId\": \"org-1042\",\n  \"counts\": {\n    \"QUEUED\": 0,\n    \"PENDING\": 0,\n    \"CREATED\": 1\n  }\n}","options":{"raw":{"language":"json"}}},"url":"https://dev.partners.cbgc.iobatch.completed"},"status":"OK","code":200,"_postman_previewlanguage":"text","header":null,"cookie":[],"responseTime":null,"body":""}],"_postman_id":"6c952804-88df-4472-aa3c-4832b4d2f2f5"},{"name":"Church connected","id":"8085a96f-f76f-4f51-9006-9dbbef323ec3","request":{"method":"POST","header":[{"key":"X-Partner-Signature","value":"string","description":"<p>Lowercase hex HMAC-SHA256 of the raw request body, keyed with the UTF-8 bytes of your whole webhook secret (<code>whsec_</code> prefix included).</p>\n"},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"event\": \"client.connected\",\n  \"eventId\": \"6c3d9a1e-8b2f-4e5d-a7c0-1f9e3b5d7a24\",\n  \"timestamp\": \"2026-10-16T15:16:40Z\",\n  \"sessionId\": \"8d2f6c14-3b7a-4e0e-9c55-1a9b7d3e2f60\",\n  \"externalClientId\": \"org-1042\",\n  \"clientId\": \"cl_5b0e6f2a8c1d4e7b9a3f2d6c\",\n  \"status\": \"Active\"\n}","options":{"raw":{"language":"json"}}},"url":"https://dev.partners.cbgc.ioclient.connected","description":"<p>Sent when a church finishes the hosted connect page and its client exists (<code>status</code> is <code>Active</code>). Confirm a connection with this event or <code>GET /connect/sessions/{sessionId}</code> before treating the church as connected; never with the browser redirect alone. Same signature, retry and <code>eventId</code> rules as <code>check.updated</code>.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-Api-Key"},{"key":"value","value":""}]},"isInherited":true,"source":{"_postman_id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","name":"Christian Background Checks Partner API","type":"collection"}},"urlObject":{"host":["https://dev.partners.cbgc.ioclient","connected"],"query":[],"variable":[]}},"response":[{"id":"36ce1721-4559-468c-92a2-2b238802eec1","name":"Any 2xx acknowledges receipt.","originalRequest":{"method":"POST","header":[{"key":"X-Partner-Signature","value":"string","description":"Lowercase hex HMAC-SHA256 of the raw request body, keyed with the UTF-8 bytes of your whole webhook secret (`whsec_` prefix included)."},{"key":"Content-Type","value":"application/json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"body":{"mode":"raw","raw":"{\n  \"event\": \"client.connected\",\n  \"eventId\": \"6c3d9a1e-8b2f-4e5d-a7c0-1f9e3b5d7a24\",\n  \"timestamp\": \"2026-10-16T15:16:40Z\",\n  \"sessionId\": \"8d2f6c14-3b7a-4e0e-9c55-1a9b7d3e2f60\",\n  \"externalClientId\": \"org-1042\",\n  \"clientId\": \"cl_5b0e6f2a8c1d4e7b9a3f2d6c\",\n  \"status\": \"Active\"\n}","options":{"raw":{"language":"json"}}},"url":"https://dev.partners.cbgc.ioclient.connected"},"status":"OK","code":200,"_postman_previewlanguage":"text","header":null,"cookie":[],"responseTime":null,"body":""},{"id":"14f1b5e7-ca4d-49eb-953a-748a7d860ae2","name":"Anything else, a timeout (15 seconds) or a connection error is retried, up to 5 more times with increasing delays. Redirects are not followed.","originalRequest":{"method":"POST","header":[{"key":"X-Partner-Signature","value":"string","description":"Lowercase hex HMAC-SHA256 of the raw request body, keyed with the UTF-8 bytes of your whole webhook secret (`whsec_` prefix included)."},{"key":"Content-Type","value":"application/json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"body":{"mode":"raw","raw":"{\n  \"event\": \"client.connected\",\n  \"eventId\": \"6c3d9a1e-8b2f-4e5d-a7c0-1f9e3b5d7a24\",\n  \"timestamp\": \"2026-10-16T15:16:40Z\",\n  \"sessionId\": \"8d2f6c14-3b7a-4e0e-9c55-1a9b7d3e2f60\",\n  \"externalClientId\": \"org-1042\",\n  \"clientId\": \"cl_5b0e6f2a8c1d4e7b9a3f2d6c\",\n  \"status\": \"Active\"\n}","options":{"raw":{"language":"json"}}},"url":"https://dev.partners.cbgc.ioclient.connected"},"status":"OK","code":200,"_postman_previewlanguage":"text","header":null,"cookie":[],"responseTime":null,"body":""}],"_postman_id":"8085a96f-f76f-4f51-9006-9dbbef323ec3"},{"name":"Church migrated","id":"07484d10-cb83-4ec4-8ecc-1423ec63d458","request":{"method":"POST","header":[{"key":"X-Partner-Signature","value":"string","description":"<p>Lowercase hex HMAC-SHA256 of the raw request body, keyed with the UTF-8 bytes of your whole webhook secret (<code>whsec_</code> prefix included).</p>\n"},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"event\": \"client.migrated\",\n  \"eventId\": \"a4e2c8f0-3d6b-4a1e-b9c5-7d0f2e4a6c81\",\n  \"timestamp\": \"2026-10-20T14:02:11Z\",\n  \"externalClientId\": \"org-1042\",\n  \"clientId\": \"cl_5b0e6f2a8c1d4e7b9a3f2d6c\",\n  \"importedChecks\": 214\n}","options":{"raw":{"language":"json"}}},"url":"https://dev.partners.cbgc.ioclient.migrated","description":"<p>Sent when an existing Datasource church has been moved under your account and its past checks were imported (<code>importedChecks</code>). Same signature, retry and <code>eventId</code> rules as <code>check.updated</code>.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-Api-Key"},{"key":"value","value":""}]},"isInherited":true,"source":{"_postman_id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","name":"Christian Background Checks Partner API","type":"collection"}},"urlObject":{"host":["https://dev.partners.cbgc.ioclient","migrated"],"query":[],"variable":[]}},"response":[{"id":"2220ae8c-730c-46a7-b70b-8654eadb27d9","name":"Any 2xx acknowledges receipt.","originalRequest":{"method":"POST","header":[{"key":"X-Partner-Signature","value":"string","description":"Lowercase hex HMAC-SHA256 of the raw request body, keyed with the UTF-8 bytes of your whole webhook secret (`whsec_` prefix included)."},{"key":"Content-Type","value":"application/json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"body":{"mode":"raw","raw":"{\n  \"event\": \"client.migrated\",\n  \"eventId\": \"a4e2c8f0-3d6b-4a1e-b9c5-7d0f2e4a6c81\",\n  \"timestamp\": \"2026-10-20T14:02:11Z\",\n  \"externalClientId\": \"org-1042\",\n  \"clientId\": \"cl_5b0e6f2a8c1d4e7b9a3f2d6c\",\n  \"importedChecks\": 214\n}","options":{"raw":{"language":"json"}}},"url":"https://dev.partners.cbgc.ioclient.migrated"},"status":"OK","code":200,"_postman_previewlanguage":"text","header":null,"cookie":[],"responseTime":null,"body":""},{"id":"0cb672ef-e0a4-4831-9f22-af4aa7770edd","name":"Anything else, a timeout (15 seconds) or a connection error is retried, up to 5 more times with increasing delays. Redirects are not followed.","originalRequest":{"method":"POST","header":[{"key":"X-Partner-Signature","value":"string","description":"Lowercase hex HMAC-SHA256 of the raw request body, keyed with the UTF-8 bytes of your whole webhook secret (`whsec_` prefix included)."},{"key":"Content-Type","value":"application/json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"body":{"mode":"raw","raw":"{\n  \"event\": \"client.migrated\",\n  \"eventId\": \"a4e2c8f0-3d6b-4a1e-b9c5-7d0f2e4a6c81\",\n  \"timestamp\": \"2026-10-20T14:02:11Z\",\n  \"externalClientId\": \"org-1042\",\n  \"clientId\": \"cl_5b0e6f2a8c1d4e7b9a3f2d6c\",\n  \"importedChecks\": 214\n}","options":{"raw":{"language":"json"}}},"url":"https://dev.partners.cbgc.ioclient.migrated"},"status":"OK","code":200,"_postman_previewlanguage":"text","header":null,"cookie":[],"responseTime":null,"body":""}],"_postman_id":"07484d10-cb83-4ec4-8ecc-1423ec63d458"},{"name":"Check expiring soon","id":"f5909458-fa01-4802-9336-fa9db55e89f0","request":{"method":"POST","header":[{"key":"X-Partner-Signature","value":"string","description":"<p>Lowercase hex HMAC-SHA256 of the raw request body, keyed with the UTF-8 bytes of your whole webhook secret (<code>whsec_</code> prefix included).</p>\n"},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"event\": \"check.expiring\",\n  \"eventId\": \"a4c6e8f0-2b4d-4f6a-8c0e-1a3c5e7f9b2d\",\n  \"timestamp\": \"2028-09-18T14:00:03Z\",\n  \"id\": \"chk_9c2e4f6a1b3d4e5f8a7b6c5d\",\n  \"externalIdentifier\": \"vol-8841\",\n  \"clientId\": \"cl_5b0e6f2a8c1d4e7b9a3f2d6c\",\n  \"status\": \"CLEAR\",\n  \"expirationDate\": \"2028-10-18T18:22:41Z\",\n  \"daysLeft\": 30\n}","options":{"raw":{"language":"json"}}},"url":"https://dev.partners.cbgc.iocheck.expiring","description":"<p>Sent 30 days and again 7 days before a <code>CLEAR</code> or <code>REVIEW</code> check's <code>expirationDate</code> (each once; a check found later than 30 days out gets only the 7-day one). Use it to prompt the church to re-screen before the clearance lapses. Same signature, retry and <code>eventId</code> rules as <code>check.updated</code>.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-Api-Key"},{"key":"value","value":""}]},"isInherited":true,"source":{"_postman_id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","name":"Christian Background Checks Partner API","type":"collection"}},"urlObject":{"host":["https://dev.partners.cbgc.iocheck","expiring"],"query":[],"variable":[]}},"response":[{"id":"45f9476e-593d-448c-a958-db9a0237b0f4","name":"Any 2xx acknowledges receipt.","originalRequest":{"method":"POST","header":[{"key":"X-Partner-Signature","value":"string","description":"Lowercase hex HMAC-SHA256 of the raw request body, keyed with the UTF-8 bytes of your whole webhook secret (`whsec_` prefix included)."},{"key":"Content-Type","value":"application/json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"body":{"mode":"raw","raw":"{\n  \"event\": \"check.expiring\",\n  \"eventId\": \"a4c6e8f0-2b4d-4f6a-8c0e-1a3c5e7f9b2d\",\n  \"timestamp\": \"2028-09-18T14:00:03Z\",\n  \"id\": \"chk_9c2e4f6a1b3d4e5f8a7b6c5d\",\n  \"externalIdentifier\": \"vol-8841\",\n  \"clientId\": \"cl_5b0e6f2a8c1d4e7b9a3f2d6c\",\n  \"status\": \"CLEAR\",\n  \"expirationDate\": \"2028-10-18T18:22:41Z\",\n  \"daysLeft\": 30\n}","options":{"raw":{"language":"json"}}},"url":"https://dev.partners.cbgc.iocheck.expiring"},"status":"OK","code":200,"_postman_previewlanguage":"text","header":null,"cookie":[],"responseTime":null,"body":""},{"id":"fa88095e-6009-47d8-90a5-97e35ecaaee3","name":"Anything else, a timeout (15 seconds) or a connection error is retried, up to 5 more times with increasing delays. Redirects are not followed.","originalRequest":{"method":"POST","header":[{"key":"X-Partner-Signature","value":"string","description":"Lowercase hex HMAC-SHA256 of the raw request body, keyed with the UTF-8 bytes of your whole webhook secret (`whsec_` prefix included)."},{"key":"Content-Type","value":"application/json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"body":{"mode":"raw","raw":"{\n  \"event\": \"check.expiring\",\n  \"eventId\": \"a4c6e8f0-2b4d-4f6a-8c0e-1a3c5e7f9b2d\",\n  \"timestamp\": \"2028-09-18T14:00:03Z\",\n  \"id\": \"chk_9c2e4f6a1b3d4e5f8a7b6c5d\",\n  \"externalIdentifier\": \"vol-8841\",\n  \"clientId\": \"cl_5b0e6f2a8c1d4e7b9a3f2d6c\",\n  \"status\": \"CLEAR\",\n  \"expirationDate\": \"2028-10-18T18:22:41Z\",\n  \"daysLeft\": 30\n}","options":{"raw":{"language":"json"}}},"url":"https://dev.partners.cbgc.iocheck.expiring"},"status":"OK","code":200,"_postman_previewlanguage":"text","header":null,"cookie":[],"responseTime":null,"body":""}],"_postman_id":"f5909458-fa01-4802-9336-fa9db55e89f0"},{"name":"Test ping","id":"651a40f7-336f-47f9-908c-094e1490b9be","request":{"method":"POST","header":[{"key":"X-Partner-Signature","value":"string","description":"<p>Lowercase hex HMAC-SHA256 of the raw request body, keyed with the UTF-8 bytes of your whole webhook secret (<code>whsec_</code> prefix included).</p>\n"},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"event\": \"ping\",\n  \"eventId\": \"f1d3b5a7-9c2e-4d6f-8a0b-3c5e7f9a1b2d\",\n  \"timestamp\": \"2026-10-16T15:00:00Z\"\n}","options":{"raw":{"language":"json"}}},"url":"https://dev.partners.cbgc.ioping","description":"<p>Sent by <code>POST /settings/webhook-test</code> so you can verify your endpoint and your signature check. Same signature, retry and <code>eventId</code> rules as <code>check.updated</code>.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-Api-Key"},{"key":"value","value":""}]},"isInherited":true,"source":{"_postman_id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","name":"Christian Background Checks Partner API","type":"collection"}},"urlObject":{"host":["https://dev.partners.cbgc.ioping"],"query":[],"variable":[]}},"response":[{"id":"326b244e-564a-4a3e-9e38-967ddcf6e626","name":"Any 2xx acknowledges receipt.","originalRequest":{"method":"POST","header":[{"key":"X-Partner-Signature","value":"string","description":"Lowercase hex HMAC-SHA256 of the raw request body, keyed with the UTF-8 bytes of your whole webhook secret (`whsec_` prefix included)."},{"key":"Content-Type","value":"application/json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"body":{"mode":"raw","raw":"{\n  \"event\": \"ping\",\n  \"eventId\": \"f1d3b5a7-9c2e-4d6f-8a0b-3c5e7f9a1b2d\",\n  \"timestamp\": \"2026-10-16T15:00:00Z\"\n}","options":{"raw":{"language":"json"}}},"url":"https://dev.partners.cbgc.ioping"},"status":"OK","code":200,"_postman_previewlanguage":"text","header":null,"cookie":[],"responseTime":null,"body":""},{"id":"5e086ad7-d05f-4943-8764-2979282a03ad","name":"Anything else, a timeout (15 seconds) or a connection error is retried, up to 5 more times with increasing delays. Redirects are not followed.","originalRequest":{"method":"POST","header":[{"key":"X-Partner-Signature","value":"string","description":"Lowercase hex HMAC-SHA256 of the raw request body, keyed with the UTF-8 bytes of your whole webhook secret (`whsec_` prefix included)."},{"key":"Content-Type","value":"application/json"},{"key":"X-Api-Key","value":"<API Key>","description":"Added as a part of security scheme: apikey"}],"body":{"mode":"raw","raw":"{\n  \"event\": \"ping\",\n  \"eventId\": \"f1d3b5a7-9c2e-4d6f-8a0b-3c5e7f9a1b2d\",\n  \"timestamp\": \"2026-10-16T15:00:00Z\"\n}","options":{"raw":{"language":"json"}}},"url":"https://dev.partners.cbgc.ioping"},"status":"OK","code":200,"_postman_previewlanguage":"text","header":null,"cookie":[],"responseTime":null,"body":""}],"_postman_id":"651a40f7-336f-47f9-908c-094e1490b9be"}],"id":"565ca9ca-c4e5-415b-a45b-55ceed8739f7","_postman_id":"565ca9ca-c4e5-415b-a45b-55ceed8739f7","description":"","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-Api-Key"},{"key":"value","value":""}]},"isInherited":true,"source":{"_postman_id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","id":"b0091fa1-fd5f-4d7e-8e67-e9ba3e3bdde5","name":"Christian Background Checks Partner API","type":"collection"}}}],"auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-Api-Key"},{"key":"value","value":""}]}},"variable":[{"key":"baseUrl","value":"https://dev.partners.cbgc.io","type":"string"},{"key":"productionBaseUrl","value":"https://partners.cbgc.io","type":"string"},{"key":"apiKey","value":"","type":"string"}]}