MENU navbar-image

Introduction

This documentation aims to provide all the information you need to work with our API.

Authenticating requests

To authenticate requests, include an Authorization header with the value "Bearer {YOUR_AUTH_KEY}".

All authenticated endpoints are marked with a requires authentication badge in the documentation below.

You can retrieve your token by logging in with the account login endpoint.

Endpoints

Generate Bearer Token

Example request:
curl --request POST \
    "http://demo.mngmt.theqwikfix.com/api/v1/auth/login" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"email\": \"system@businesspartner.com\",
    \"password\": \"2CwM5YgjyW!n5\"
}"
const url = new URL(
    "http://demo.mngmt.theqwikfix.com/api/v1/auth/login"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "email": "system@businesspartner.com",
    "password": "2CwM5YgjyW!n5"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'http://demo.mngmt.theqwikfix.com/api/v1/auth/login';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'email' => 'system@businesspartner.com',
            'password' => '2CwM5YgjyW!n5',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'http://demo.mngmt.theqwikfix.com/api/v1/auth/login'
payload = {
    "email": "system@businesspartner.com",
    "password": "2CwM5YgjyW!n5"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Example response (200):


{
    "access_token": "1234|kVx2CmtkX5CHxwM5YgjyW3Njyhlnnr5vMn5PLpwG"
}
 

Request   

POST api/v1/auth/login

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

email   required  optional  

Example: system@businesspartner.com

password   required  optional  

Example: 2CwM5YgjyW!n5

Request a QwikQuote

requires authentication

Example request:
curl --request POST \
    "http://demo.mngmt.theqwikfix.com/api/v1/quote-request/create" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"client_name\": \"John Smith\",
    \"client_email\": \"johnsmith@example.com\",
    \"client_phone\": \"8775551234\",
    \"client_role\": \"Listing Agent\",
    \"agent_name\": \"Jane Doe\",
    \"agent_email\": \"janedoe@example2.com\",
    \"agent_phone\": \"8445559876\",
    \"agent_role\": \"Buyers Agent\",
    \"property_address\": \"123 Main Street\",
    \"city\": \"Anytown\",
    \"state\": \"CA\",
    \"zip_code\": \"12345\",
    \"closing_date\": \"2026-08-20\",
    \"inspection_report_url\": \"https:\\/\\/example.com\\/inspection_report.pdf\",
    \"repair_request_url\": \"https:\\/\\/example.com\\/repair_request.pdf\",
    \"webhook_url\": \"https:\\/\\/example.com\\/webhook?my_param=value\",
    \"google_place_id\": \"ChIJN1dKJhK6j4AR4Ge1mUxMFX4\",
    \"discount_code\": \"reprehenderit\"
}"
const url = new URL(
    "http://demo.mngmt.theqwikfix.com/api/v1/quote-request/create"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "client_name": "John Smith",
    "client_email": "johnsmith@example.com",
    "client_phone": "8775551234",
    "client_role": "Listing Agent",
    "agent_name": "Jane Doe",
    "agent_email": "janedoe@example2.com",
    "agent_phone": "8445559876",
    "agent_role": "Buyers Agent",
    "property_address": "123 Main Street",
    "city": "Anytown",
    "state": "CA",
    "zip_code": "12345",
    "closing_date": "2026-08-20",
    "inspection_report_url": "https:\/\/example.com\/inspection_report.pdf",
    "repair_request_url": "https:\/\/example.com\/repair_request.pdf",
    "webhook_url": "https:\/\/example.com\/webhook?my_param=value",
    "google_place_id": "ChIJN1dKJhK6j4AR4Ge1mUxMFX4",
    "discount_code": "reprehenderit"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'http://demo.mngmt.theqwikfix.com/api/v1/quote-request/create';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'client_name' => 'John Smith',
            'client_email' => 'johnsmith@example.com',
            'client_phone' => '8775551234',
            'client_role' => 'Listing Agent',
            'agent_name' => 'Jane Doe',
            'agent_email' => 'janedoe@example2.com',
            'agent_phone' => '8445559876',
            'agent_role' => 'Buyers Agent',
            'property_address' => '123 Main Street',
            'city' => 'Anytown',
            'state' => 'CA',
            'zip_code' => '12345',
            'closing_date' => '2026-08-20',
            'inspection_report_url' => 'https://example.com/inspection_report.pdf',
            'repair_request_url' => 'https://example.com/repair_request.pdf',
            'webhook_url' => 'https://example.com/webhook?my_param=value',
            'google_place_id' => 'ChIJN1dKJhK6j4AR4Ge1mUxMFX4',
            'discount_code' => 'reprehenderit',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'http://demo.mngmt.theqwikfix.com/api/v1/quote-request/create'
payload = {
    "client_name": "John Smith",
    "client_email": "johnsmith@example.com",
    "client_phone": "8775551234",
    "client_role": "Listing Agent",
    "agent_name": "Jane Doe",
    "agent_email": "janedoe@example2.com",
    "agent_phone": "8445559876",
    "agent_role": "Buyers Agent",
    "property_address": "123 Main Street",
    "city": "Anytown",
    "state": "CA",
    "zip_code": "12345",
    "closing_date": "2026-08-20",
    "inspection_report_url": "https:\/\/example.com\/inspection_report.pdf",
    "repair_request_url": "https:\/\/example.com\/repair_request.pdf",
    "webhook_url": "https:\/\/example.com\/webhook?my_param=value",
    "google_place_id": "ChIJN1dKJhK6j4AR4Ge1mUxMFX4",
    "discount_code": "reprehenderit"
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Example response (200):


{
    "message": "Quote Request successfully submitted.",
    "qwik_quote_uuid": "b15a050a-397f-4d1e-b387-d146632d83a1",
    "dashboard_url": "https://theqwikfix.com/user/qwik-quotes/b15a050a-397f-4d1e-b387-d146632d83a9"
}
 

Request   

POST api/v1/quote-request/create

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

client_name   string  optional  

Full name of the client. This field is required when agent_name is not present. Must not be greater than 255 characters. Example: John Smith

client_email   string  optional  

The client's email address. This field is required when client_name is present. Must be a valid email address. Example: johnsmith@example.com

client_phone   string   

The client's raw US phone number and excluding parenthesis, hyphens, periods, and spaces. Must match the regex /^+1[2-9]\d{2}[2-9]\d{6}$/. Example: 8775551234

client_role   string  optional  

This field is required when client_name is present. Example: Listing Agent

Must be one of:
  • Home Buyer
  • Homeowner
  • Buyers Agent
  • Listing Agent
agent_name   string  optional  

Full name of the agent. This field is required when client_name is not present. Must not be greater than 255 characters. Example: Jane Doe

agent_email   string  optional  

The agent's email address. This field is required when agent_name is present. Must be a valid email address. Example: janedoe@example2.com

agent_phone   string  optional  

The agent's raw US phone number and excluding parenthesis, hyphens, periods, and spaces. Must match the regex /^+1[2-9]\d{2}[2-9]\d{6}$/. Example: 8445559876

agent_role   string  optional  

This field is required when agent_name is present. Example: Buyers Agent

Must be one of:
  • Buyers Agent
  • Listing Agent
property_address   string   

The street address of the property. Example: 123 Main Street

city   string   

The city of the property. Example: Anytown

state   string   

The abbreviated state of the property. Example: CA

zip_code   string   

The zip code of the property. Example: 12345

closing_date   string   

The closing date of the property. Must be a valid date. Example: 2026-08-20

inspection_report_url   string  optional  

The URL of the inspection report. Must be a valid URL. Example: https://example.com/inspection_report.pdf

repair_request_url   string  optional  

The URL of the repair request document (optional). Must be a valid URL. Example: https://example.com/repair_request.pdf

webhook_url   string  optional  

The URL of the webhook. Any added URL parameters will be returned. Must be a valid URL. Example: https://example.com/webhook?my_param=value

google_place_id   string  optional  

The Google Place ID of the property. Example: ChIJN1dKJhK6j4AR4Ge1mUxMFX4

discount_code   string   

Example: reprehenderit