<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>http://docs.callproof.com/index.php?action=history&amp;feed=atom&amp;title=Fetch_Contact_Person</id>
	<title>Fetch Contact Person - Revision history</title>
	<link rel="self" type="application/atom+xml" href="http://docs.callproof.com/index.php?action=history&amp;feed=atom&amp;title=Fetch_Contact_Person"/>
	<link rel="alternate" type="text/html" href="http://docs.callproof.com/index.php?title=Fetch_Contact_Person&amp;action=history"/>
	<updated>2026-07-24T07:20:18Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.31.0</generator>
	<entry>
		<id>http://docs.callproof.com/index.php?title=Fetch_Contact_Person&amp;diff=3097&amp;oldid=prev</id>
		<title>Ashley DeBon: /* Fetch Contact Person */</title>
		<link rel="alternate" type="text/html" href="http://docs.callproof.com/index.php?title=Fetch_Contact_Person&amp;diff=3097&amp;oldid=prev"/>
		<updated>2026-07-21T15:51:10Z</updated>

		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Fetch Contact Person&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Revision as of 15:51, 21 July 2026&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot; &gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Fetch Contact Person ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;[[Mobile_API]] &amp;amp;#187;&lt;/ins&gt;Fetch Contact Person ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== Base URL ===&lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== Base URL ===&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Ashley DeBon</name></author>
		
	</entry>
	<entry>
		<id>http://docs.callproof.com/index.php?title=Fetch_Contact_Person&amp;diff=3096&amp;oldid=prev</id>
		<title>Ashley DeBon: Created page with &quot;== Fetch Contact Person ==  === Base URL === https://apimobile.callproof.com  === Endpoint === /api/ai/chat-bot/fetch-contact-person  === Purpose === Resolves a contact and re...&quot;</title>
		<link rel="alternate" type="text/html" href="http://docs.callproof.com/index.php?title=Fetch_Contact_Person&amp;diff=3096&amp;oldid=prev"/>
		<updated>2026-07-21T15:50:59Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;== Fetch Contact Person ==  === Base URL === https://apimobile.callproof.com  === Endpoint === /api/ai/chat-bot/fetch-contact-person  === Purpose === Resolves a contact and re...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== Fetch Contact Person ==&lt;br /&gt;
&lt;br /&gt;
=== Base URL ===&lt;br /&gt;
https://apimobile.callproof.com&lt;br /&gt;
&lt;br /&gt;
=== Endpoint ===&lt;br /&gt;
/api/ai/chat-bot/fetch-contact-person&lt;br /&gt;
&lt;br /&gt;
=== Purpose ===&lt;br /&gt;
Resolves a contact and related person (personnel) from a company name and/or person name—typically used by the AI chat bot to find the right contact for messaging (for example, “Sarah from XYZ Corp”). Returns contact, person, and phone identifiers when a unique match is found; otherwise returns clarifying error details when multiple matches exist.&lt;br /&gt;
&lt;br /&gt;
=== HTTP Method ===&lt;br /&gt;
POST&lt;br /&gt;
&lt;br /&gt;
=== Headers ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Header !! Required !! Description&lt;br /&gt;
|-&lt;br /&gt;
| Authorization || Yes || Bearer access token&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Security ===&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Yes&amp;#039;&amp;#039;&amp;#039; – Requires Bearer Token authentication.&lt;br /&gt;
&lt;br /&gt;
=== Parameters ===&lt;br /&gt;
&lt;br /&gt;
==== Path Parameters ====&lt;br /&gt;
None.&lt;br /&gt;
&lt;br /&gt;
==== Query Parameters ====&lt;br /&gt;
None.&lt;br /&gt;
&lt;br /&gt;
==== Request Body ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Parameter !! Type !! Required !! Description&lt;br /&gt;
|-&lt;br /&gt;
| companyId || integer || Yes || Company identifier to search within&lt;br /&gt;
|-&lt;br /&gt;
| contactName || string || No || Contact/company name to match (exact name match, case-insensitive)&lt;br /&gt;
|-&lt;br /&gt;
| personName || string || No || Person name to match against first/last name (partial match; supports one or two name parts)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Successful Response (200) ===&lt;br /&gt;
Returned when a unique contact/person/phone match is resolved.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Field !! Type !! Description&lt;br /&gt;
|-&lt;br /&gt;
| clientStatusCode || integer || Status indicator for the client (for example, 200)&lt;br /&gt;
|-&lt;br /&gt;
| user_id || integer || Identifier of the authenticated user&lt;br /&gt;
|-&lt;br /&gt;
| company_id || integer || Identifier of the authenticated user’s company&lt;br /&gt;
|-&lt;br /&gt;
| data || object || Resolved contact/person/phone details&lt;br /&gt;
|-&lt;br /&gt;
| uri || string || Requested resource URI&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== data ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Field !! Type !! Description&lt;br /&gt;
|-&lt;br /&gt;
| contact_personal_id || integer || Unique identifier of the matched person (personnel)&lt;br /&gt;
|-&lt;br /&gt;
| contact_personal_name || string || Full name of the matched person&lt;br /&gt;
|-&lt;br /&gt;
| contact_phone_id || integer || Phone record identifier to use&lt;br /&gt;
|-&lt;br /&gt;
| contact_id || integer || Unique identifier of the matched contact&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Error Responses ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Status Code !! Meaning&lt;br /&gt;
|-&lt;br /&gt;
| 200 || Validation failed – response body uses &amp;lt;code&amp;gt;clientStatusCode&amp;lt;/code&amp;gt; 422 with the first validation error message&lt;br /&gt;
|-&lt;br /&gt;
| 400 || Bad Request – contact/person could not be uniquely resolved (response includes &amp;lt;code&amp;gt;message&amp;lt;/code&amp;gt; and optional &amp;lt;code&amp;gt;data&amp;lt;/code&amp;gt;)&lt;br /&gt;
|-&lt;br /&gt;
| 401 || Unauthorized – missing, invalid, or expired Bearer token&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Validation (HTTP 200, clientStatusCode 422)&amp;#039;&amp;#039;&amp;#039; – Missing or invalid &amp;lt;code&amp;gt;companyId&amp;lt;/code&amp;gt;.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;400&amp;#039;&amp;#039;&amp;#039; – Examples: invalid contact name (&amp;quot;contact name invalid&amp;quot;), contact not found, contact phone not found, multiple people with the same name, multiple companies with the same name, multiple contacts with the same name, or multiple phone numbers for the contact. Ambiguous matches may include a &amp;lt;code&amp;gt;data&amp;lt;/code&amp;gt; payload listing candidates.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;401&amp;#039;&amp;#039;&amp;#039; – Authentication failed or the access token is missing/expired.&lt;/div&gt;</summary>
		<author><name>Ashley DeBon</name></author>
		
	</entry>
</feed>