> For the complete documentation index, see [llms.txt](https://help.paintscout.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://help.paintscout.com/developers/contacts.md).

# Contacts

## GET /contacts

> List Contacts

```json
{"openapi":"3.0.0","info":{"title":"Core API","version":"v2"},"servers":[{"url":"https://openapi.paintscout.com/v2"}],"security":[{"BearerAuth":[]}],"components":{"securitySchemes":{"BearerAuth":{"type":"http","scheme":"bearer"}},"schemas":{"Contact":{"type":"object","additionalProperties":false,"properties":{"id":{"type":"string","description":"The unique ID of the Contact. Ignored when creating & updating contacts"},"firstName":{"type":"string","nullable":true,"description":"The First Name of the Contact."},"lastName":{"type":"string","nullable":true,"description":"The Last Name of the Contact"},"secondaryFirstName":{"type":"string","nullable":true,"description":"The secondary First Name of the Contact"},"secondaryLastName":{"type":"string","nullable":true,"description":"The secondary Last Name of the Contact"},"company":{"type":"string","nullable":true,"description":"The name of the Company this Contact is associated with"},"email":{"type":"string","nullable":true,"description":"The email address of this Contact"},"alternateEmail":{"type":"string","nullable":true,"description":"The alternate email address of this Contact"},"phoneNumber":{"type":"string","nullable":true,"description":"The phone number of this Contact"},"phoneNumberExt":{"type":"string","nullable":true,"description":"The phone number extension of this Contact"},"alternatePhoneNumber":{"type":"string","nullable":true,"description":"The alternate phone number of this Contact"},"alternatePhoneNumberExt":{"type":"string","nullable":true,"description":"The alternate phone number extension of this Contact"},"preferredContactMethod":{"type":"string","nullable":true,"description":"The preferred contact method for this Contact"},"address":{"type":"string","nullable":true,"description":"The address of this Contact"},"city":{"type":"string","nullable":true,"description":"The city of this Contact"},"state":{"type":"string","nullable":true,"description":"The state of this Contact"},"zip":{"type":"string","nullable":true,"description":"The zip or postal code of this Contact"},"leadSource":{"type":"string","nullable":true,"description":"The lead source of this Contact"},"source":{"$ref":"#/components/schemas/Source"},"owner":{"type":"object","nullable":true,"$ref":"#/components/schemas/Owner"},"timestamp":{"$ref":"#/components/schemas/Timestamp"},"note":{"type":"string","nullable":true,"description":"A note about this Contact"},"tags":{"type":"array","description":"Tags associated with this Contact","items":{"type":"string"}}}},"Source":{"type":"object","additionalProperties":false,"properties":{"id":{"type":"string","nullable":true,"description":"The ID of the entity on the other side"},"provider":{"type":"string","nullable":true,"description":"The name of the provider this entity came from"}}},"Owner":{"type":"object","additionalProperties":false,"properties":{"id":{"type":"string","description":"The unique user ID"},"firstName":{"type":"string","description":"The first name of the user"},"lastName":{"type":"string","description":"The last name of the user"},"title":{"type":"string","description":"The job title of the user"},"email":{"type":"string","description":"The email address of the user"},"phoneNumber":{"type":"string","description":"The phone number of the user"},"phoneExtension":{"type":"string","description":"The phone extension of the user"}}},"Timestamp":{"type":"object","additionalProperties":false,"properties":{"created":{"type":"number","description":"The timestamp when this entity was created"},"updated":{"type":"number","description":"The timestamp when this entity was last updated"}}},"Error":{"type":"object","additionalProperties":false,"properties":{"errors":{"type":"array","items":{"type":"string"},"description":"Array of error messages"}}}}},"paths":{"/contacts":{"get":{"summary":"List Contacts","operationId":"listContacts","tags":["Contacts"],"parameters":[{"name":"page","in":"query","schema":{"type":"integer","format":"int32","minimum":1}},{"name":"perPage","in":"query","schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"query","in":"query","allowReserved":true,"schema":{"type":"string"}},{"name":"sort","in":"query","schema":{"type":"string"}},{"name":"sortDir","in":"query","schema":{"type":"string","enum":["asc","desc"]}}],"responses":{"200":{"description":"List of contacts","content":{"application/json":{"schema":{"type":"object","properties":{"totalRows":{"type":"number"},"page":{"type":"number"},"perPage":{"type":"number"},"rows":{"type":"array","items":{"$ref":"#/components/schemas/Contact"}}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Not Authorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"500":{"description":"Unexpected error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}}}}
```

## POST /contacts

> Create Contact

```json
{"openapi":"3.0.0","info":{"title":"Core API","version":"v2"},"servers":[{"url":"https://openapi.paintscout.com/v2"}],"security":[{"BearerAuth":[]}],"components":{"securitySchemes":{"BearerAuth":{"type":"http","scheme":"bearer"}},"schemas":{"Contact":{"type":"object","additionalProperties":false,"properties":{"id":{"type":"string","description":"The unique ID of the Contact. Ignored when creating & updating contacts"},"firstName":{"type":"string","nullable":true,"description":"The First Name of the Contact."},"lastName":{"type":"string","nullable":true,"description":"The Last Name of the Contact"},"secondaryFirstName":{"type":"string","nullable":true,"description":"The secondary First Name of the Contact"},"secondaryLastName":{"type":"string","nullable":true,"description":"The secondary Last Name of the Contact"},"company":{"type":"string","nullable":true,"description":"The name of the Company this Contact is associated with"},"email":{"type":"string","nullable":true,"description":"The email address of this Contact"},"alternateEmail":{"type":"string","nullable":true,"description":"The alternate email address of this Contact"},"phoneNumber":{"type":"string","nullable":true,"description":"The phone number of this Contact"},"phoneNumberExt":{"type":"string","nullable":true,"description":"The phone number extension of this Contact"},"alternatePhoneNumber":{"type":"string","nullable":true,"description":"The alternate phone number of this Contact"},"alternatePhoneNumberExt":{"type":"string","nullable":true,"description":"The alternate phone number extension of this Contact"},"preferredContactMethod":{"type":"string","nullable":true,"description":"The preferred contact method for this Contact"},"address":{"type":"string","nullable":true,"description":"The address of this Contact"},"city":{"type":"string","nullable":true,"description":"The city of this Contact"},"state":{"type":"string","nullable":true,"description":"The state of this Contact"},"zip":{"type":"string","nullable":true,"description":"The zip or postal code of this Contact"},"leadSource":{"type":"string","nullable":true,"description":"The lead source of this Contact"},"source":{"$ref":"#/components/schemas/Source"},"owner":{"type":"object","nullable":true,"$ref":"#/components/schemas/Owner"},"timestamp":{"$ref":"#/components/schemas/Timestamp"},"note":{"type":"string","nullable":true,"description":"A note about this Contact"},"tags":{"type":"array","description":"Tags associated with this Contact","items":{"type":"string"}}}},"Source":{"type":"object","additionalProperties":false,"properties":{"id":{"type":"string","nullable":true,"description":"The ID of the entity on the other side"},"provider":{"type":"string","nullable":true,"description":"The name of the provider this entity came from"}}},"Owner":{"type":"object","additionalProperties":false,"properties":{"id":{"type":"string","description":"The unique user ID"},"firstName":{"type":"string","description":"The first name of the user"},"lastName":{"type":"string","description":"The last name of the user"},"title":{"type":"string","description":"The job title of the user"},"email":{"type":"string","description":"The email address of the user"},"phoneNumber":{"type":"string","description":"The phone number of the user"},"phoneExtension":{"type":"string","description":"The phone extension of the user"}}},"Timestamp":{"type":"object","additionalProperties":false,"properties":{"created":{"type":"number","description":"The timestamp when this entity was created"},"updated":{"type":"number","description":"The timestamp when this entity was last updated"}}},"Error":{"type":"object","additionalProperties":false,"properties":{"errors":{"type":"array","items":{"type":"string"},"description":"Array of error messages"}}}}},"paths":{"/contacts":{"post":{"summary":"Create Contact","operationId":"createContact","tags":["Contacts"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Contact"}}}},"responses":{"200":{"description":"Details about the new Contact","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Contact"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Not Authorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"500":{"description":"Unexpected error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}}}}
```

## GET /contacts/{id}

> Retrieve Contact

```json
{"openapi":"3.0.0","info":{"title":"Core API","version":"v2"},"servers":[{"url":"https://openapi.paintscout.com/v2"}],"security":[{"BearerAuth":[]}],"components":{"securitySchemes":{"BearerAuth":{"type":"http","scheme":"bearer"}},"schemas":{"Contact":{"type":"object","additionalProperties":false,"properties":{"id":{"type":"string","description":"The unique ID of the Contact. Ignored when creating & updating contacts"},"firstName":{"type":"string","nullable":true,"description":"The First Name of the Contact."},"lastName":{"type":"string","nullable":true,"description":"The Last Name of the Contact"},"secondaryFirstName":{"type":"string","nullable":true,"description":"The secondary First Name of the Contact"},"secondaryLastName":{"type":"string","nullable":true,"description":"The secondary Last Name of the Contact"},"company":{"type":"string","nullable":true,"description":"The name of the Company this Contact is associated with"},"email":{"type":"string","nullable":true,"description":"The email address of this Contact"},"alternateEmail":{"type":"string","nullable":true,"description":"The alternate email address of this Contact"},"phoneNumber":{"type":"string","nullable":true,"description":"The phone number of this Contact"},"phoneNumberExt":{"type":"string","nullable":true,"description":"The phone number extension of this Contact"},"alternatePhoneNumber":{"type":"string","nullable":true,"description":"The alternate phone number of this Contact"},"alternatePhoneNumberExt":{"type":"string","nullable":true,"description":"The alternate phone number extension of this Contact"},"preferredContactMethod":{"type":"string","nullable":true,"description":"The preferred contact method for this Contact"},"address":{"type":"string","nullable":true,"description":"The address of this Contact"},"city":{"type":"string","nullable":true,"description":"The city of this Contact"},"state":{"type":"string","nullable":true,"description":"The state of this Contact"},"zip":{"type":"string","nullable":true,"description":"The zip or postal code of this Contact"},"leadSource":{"type":"string","nullable":true,"description":"The lead source of this Contact"},"source":{"$ref":"#/components/schemas/Source"},"owner":{"type":"object","nullable":true,"$ref":"#/components/schemas/Owner"},"timestamp":{"$ref":"#/components/schemas/Timestamp"},"note":{"type":"string","nullable":true,"description":"A note about this Contact"},"tags":{"type":"array","description":"Tags associated with this Contact","items":{"type":"string"}}}},"Source":{"type":"object","additionalProperties":false,"properties":{"id":{"type":"string","nullable":true,"description":"The ID of the entity on the other side"},"provider":{"type":"string","nullable":true,"description":"The name of the provider this entity came from"}}},"Owner":{"type":"object","additionalProperties":false,"properties":{"id":{"type":"string","description":"The unique user ID"},"firstName":{"type":"string","description":"The first name of the user"},"lastName":{"type":"string","description":"The last name of the user"},"title":{"type":"string","description":"The job title of the user"},"email":{"type":"string","description":"The email address of the user"},"phoneNumber":{"type":"string","description":"The phone number of the user"},"phoneExtension":{"type":"string","description":"The phone extension of the user"}}},"Timestamp":{"type":"object","additionalProperties":false,"properties":{"created":{"type":"number","description":"The timestamp when this entity was created"},"updated":{"type":"number","description":"The timestamp when this entity was last updated"}}},"Error":{"type":"object","additionalProperties":false,"properties":{"errors":{"type":"array","items":{"type":"string"},"description":"Array of error messages"}}}}},"paths":{"/contacts/{id}":{"get":{"summary":"Retrieve Contact","operationId":"getContact","tags":["Contacts"],"parameters":[{"name":"id","in":"path","description":"ID of the Contact","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Details about the contact","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Contact"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Not Authorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"500":{"description":"Unexpected error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}}}}
```

## PUT /contacts/{id}

> Update Contact

```json
{"openapi":"3.0.0","info":{"title":"Core API","version":"v2"},"servers":[{"url":"https://openapi.paintscout.com/v2"}],"security":[{"BearerAuth":[]}],"components":{"securitySchemes":{"BearerAuth":{"type":"http","scheme":"bearer"}},"schemas":{"Contact":{"type":"object","additionalProperties":false,"properties":{"id":{"type":"string","description":"The unique ID of the Contact. Ignored when creating & updating contacts"},"firstName":{"type":"string","nullable":true,"description":"The First Name of the Contact."},"lastName":{"type":"string","nullable":true,"description":"The Last Name of the Contact"},"secondaryFirstName":{"type":"string","nullable":true,"description":"The secondary First Name of the Contact"},"secondaryLastName":{"type":"string","nullable":true,"description":"The secondary Last Name of the Contact"},"company":{"type":"string","nullable":true,"description":"The name of the Company this Contact is associated with"},"email":{"type":"string","nullable":true,"description":"The email address of this Contact"},"alternateEmail":{"type":"string","nullable":true,"description":"The alternate email address of this Contact"},"phoneNumber":{"type":"string","nullable":true,"description":"The phone number of this Contact"},"phoneNumberExt":{"type":"string","nullable":true,"description":"The phone number extension of this Contact"},"alternatePhoneNumber":{"type":"string","nullable":true,"description":"The alternate phone number of this Contact"},"alternatePhoneNumberExt":{"type":"string","nullable":true,"description":"The alternate phone number extension of this Contact"},"preferredContactMethod":{"type":"string","nullable":true,"description":"The preferred contact method for this Contact"},"address":{"type":"string","nullable":true,"description":"The address of this Contact"},"city":{"type":"string","nullable":true,"description":"The city of this Contact"},"state":{"type":"string","nullable":true,"description":"The state of this Contact"},"zip":{"type":"string","nullable":true,"description":"The zip or postal code of this Contact"},"leadSource":{"type":"string","nullable":true,"description":"The lead source of this Contact"},"source":{"$ref":"#/components/schemas/Source"},"owner":{"type":"object","nullable":true,"$ref":"#/components/schemas/Owner"},"timestamp":{"$ref":"#/components/schemas/Timestamp"},"note":{"type":"string","nullable":true,"description":"A note about this Contact"},"tags":{"type":"array","description":"Tags associated with this Contact","items":{"type":"string"}}}},"Source":{"type":"object","additionalProperties":false,"properties":{"id":{"type":"string","nullable":true,"description":"The ID of the entity on the other side"},"provider":{"type":"string","nullable":true,"description":"The name of the provider this entity came from"}}},"Owner":{"type":"object","additionalProperties":false,"properties":{"id":{"type":"string","description":"The unique user ID"},"firstName":{"type":"string","description":"The first name of the user"},"lastName":{"type":"string","description":"The last name of the user"},"title":{"type":"string","description":"The job title of the user"},"email":{"type":"string","description":"The email address of the user"},"phoneNumber":{"type":"string","description":"The phone number of the user"},"phoneExtension":{"type":"string","description":"The phone extension of the user"}}},"Timestamp":{"type":"object","additionalProperties":false,"properties":{"created":{"type":"number","description":"The timestamp when this entity was created"},"updated":{"type":"number","description":"The timestamp when this entity was last updated"}}},"Error":{"type":"object","additionalProperties":false,"properties":{"errors":{"type":"array","items":{"type":"string"},"description":"Array of error messages"}}}}},"paths":{"/contacts/{id}":{"put":{"summary":"Update Contact","parameters":[{"name":"id","in":"path","description":"ID of the Contact","required":true,"schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Contact"}}}},"operationId":"updateContact","tags":["Contacts"],"responses":{"200":{"description":"The updated contact","content":{"application/json":{"schema":{"additionalProperties":false,"$ref":"#/components/schemas/Contact"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Not Authorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"500":{"description":"Unexpected error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}}}}
```

## DELETE /contacts/{id}

> Delete Contact

```json
{"openapi":"3.0.0","info":{"title":"Core API","version":"v2"},"servers":[{"url":"https://openapi.paintscout.com/v2"}],"security":[{"BearerAuth":[]}],"components":{"securitySchemes":{"BearerAuth":{"type":"http","scheme":"bearer"}},"schemas":{"Error":{"type":"object","additionalProperties":false,"properties":{"errors":{"type":"array","items":{"type":"string"},"description":"Array of error messages"}}}}},"paths":{"/contacts/{id}":{"delete":{"summary":"Delete Contact","parameters":[{"name":"id","in":"path","description":"ID of the Contact","required":true,"schema":{"type":"string"}}],"operationId":"deleteContact","tags":["Contacts"],"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Not Authorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"500":{"description":"Unexpected error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}}}}
```


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://help.paintscout.com/developers/contacts.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
