MENU navbar-image

Introduction

Estate Management API

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

<aside>As you scroll, you'll see code examples for working with the API in different programming languages in the dark area to the right (or as part of the content on mobile).
You can switch the language used with the tabs at the top right (or from the nav menu at the top left on mobile).</aside>

Authenticating requests

This API is not authenticated.

Endpoints

GET api/v1/estate-list

Example request:
curl --request GET \
    --get "https://admin.smartgate.africa/api/v1/estate-list" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/estate-list"
);

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

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/estate-list';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/estate-list'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Example response (404):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "The route api/v1/estate-list could not be found."
}
 

Request      

GET api/v1/estate-list

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Resident and Security: authenticate resident andsecurity user.

Example request:
curl --request POST \
    "https://admin.smartgate.africa/api/v1/resident/signin" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/resident/signin"
);

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

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/resident/signin';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/resident/signin'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Request      

POST api/v1/resident/signin

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Resident: authenticate resident user.

Example request:
curl --request POST \
    "https://admin.smartgate.africa/api/v1/resident/login" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/resident/login"
);

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

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/resident/login';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/resident/login'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Request      

POST api/v1/resident/login

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Resident: resident profile.

Example request:
curl --request GET \
    --get "https://admin.smartgate.africa/api/v1/resident/profile" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/resident/profile"
);

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

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/resident/profile';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/resident/profile'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Example response (404):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "The route api/v1/resident/profile could not be found."
}
 

Request      

GET api/v1/resident/profile

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

POST api/v1/resident/add-estate

Example request:
curl --request POST \
    "https://admin.smartgate.africa/api/v1/resident/add-estate" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"estate_id\": \"consequatur\"
}"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/resident/add-estate"
);

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

let body = {
    "estate_id": "consequatur"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/resident/add-estate';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'estate_id' => 'consequatur',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/resident/add-estate'
payload = {
    "estate_id": "consequatur"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Request      

POST api/v1/resident/add-estate

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

estate_id   string   

The id of an existing record in the estates table. Example: consequatur

Resident: Update Profile

Example request:
curl --request POST \
    "https://admin.smartgate.africa/api/v1/resident/update-profile" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "email=qkunze@example.com"\
    --form "image=@/tmp/phpI4gNlw" 
const url = new URL(
    "https://admin.smartgate.africa/api/v1/resident/update-profile"
);

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

const body = new FormData();
body.append('email', 'qkunze@example.com');
body.append('image', document.querySelector('input[name="image"]').files[0]);

fetch(url, {
    method: "POST",
    headers,
    body,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/resident/update-profile';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'multipart/form-data',
            'Accept' => 'application/json',
        ],
        'multipart' => [
            [
                'name' => 'email',
                'contents' => 'qkunze@example.com'
            ],
            [
                'name' => 'image',
                'contents' => fopen('/tmp/phpI4gNlw', 'r')
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/resident/update-profile'
files = {
  'email': (None, 'qkunze@example.com'),
  'image': open('/tmp/phpI4gNlw', 'rb')}
payload = {
    "email": "qkunze@example.com"
}
headers = {
  'Content-Type': 'multipart/form-data',
  'Accept': 'application/json'
}

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

Request      

POST api/v1/resident/update-profile

Headers

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

Body Parameters

estate_id   string  optional  
firstname   string  optional  
lastname   string  optional  
othername   string  optional  
phone_number   string  optional  
address   string  optional  
house_no   string  optional  
email   string  optional  

Must be a valid email address. Example: qkunze@example.com

image   file  optional  

Must be a file. Must be an image. Must not be greater than 2048 kilobytes. Example: /tmp/phpI4gNlw

Resident: Generate access code.

Example request:
curl --request POST \
    "https://admin.smartgate.africa/api/v1/resident/generate-access-code" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"visitor\": \"consequatur\",
    \"no_of_visitors\": 11613.31890586000008624978363513946533203125,
    \"estate_id\": \"consequatur\",
    \"access_type\": \"one-time\",
    \"check_in\": \"2025-11-19 00:39:48\",
    \"check_out\": \"2106-12-18\"
}"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/resident/generate-access-code"
);

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

let body = {
    "visitor": "consequatur",
    "no_of_visitors": 11613.31890586000008624978363513946533203125,
    "estate_id": "consequatur",
    "access_type": "one-time",
    "check_in": "2025-11-19 00:39:48",
    "check_out": "2106-12-18"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/resident/generate-access-code';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'visitor' => 'consequatur',
            'no_of_visitors' => 11613.31890586000008624978363513946533203125,
            'estate_id' => 'consequatur',
            'access_type' => 'one-time',
            'check_in' => '2025-11-19 00:39:48',
            'check_out' => '2106-12-18',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/resident/generate-access-code'
payload = {
    "visitor": "consequatur",
    "no_of_visitors": 11613.31890586000008624978363513946533203125,
    "estate_id": "consequatur",
    "access_type": "one-time",
    "check_in": "2025-11-19 00:39:48",
    "check_out": "2106-12-18"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Request      

POST api/v1/resident/generate-access-code

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

visitor   string   

Example: consequatur

no_of_visitors   number   

Example: 11613.31890586

estate_id   string   

The id of an existing record in the estates table. Example: consequatur

access_type   string   

Example: one-time

Must be one of:
  • one-time
  • event
  • extended
check_in   string   

Must be a valid date in the format Y-m-d H:i:s. Example: 2025-11-19 00:39:48

check_out   string   

Must be a valid date in the format Y-m-d H:i:s. Must be a date after check_in. Example: 2106-12-18

Resident: Generate access code for artisan.

Example request:
curl --request POST \
    "https://admin.smartgate.africa/api/v1/resident/generate-access-code-for-artisan" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"estate_id\": \"consequatur\",
    \"check_in\": \"2025-11-19 00:39:48\",
    \"check_out\": \"2106-12-18\",
    \"job_id\": \"consequatur\",
    \"no_of_visitors\": 11613.31890586000008624978363513946533203125
}"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/resident/generate-access-code-for-artisan"
);

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

let body = {
    "estate_id": "consequatur",
    "check_in": "2025-11-19 00:39:48",
    "check_out": "2106-12-18",
    "job_id": "consequatur",
    "no_of_visitors": 11613.31890586000008624978363513946533203125
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/resident/generate-access-code-for-artisan';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'estate_id' => 'consequatur',
            'check_in' => '2025-11-19 00:39:48',
            'check_out' => '2106-12-18',
            'job_id' => 'consequatur',
            'no_of_visitors' => 11613.31890586000008624978363513946533203125,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/resident/generate-access-code-for-artisan'
payload = {
    "estate_id": "consequatur",
    "check_in": "2025-11-19 00:39:48",
    "check_out": "2106-12-18",
    "job_id": "consequatur",
    "no_of_visitors": 11613.31890586000008624978363513946533203125
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Request      

POST api/v1/resident/generate-access-code-for-artisan

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

estate_id   string   

The id of an existing record in the estates table. Example: consequatur

check_in   string   

Must be a valid date in the format Y-m-d H:i:s. Example: 2025-11-19 00:39:48

check_out   string   

Must be a valid date in the format Y-m-d H:i:s. Must be a date after check_in. Example: 2106-12-18

job_id   string   

The id of an existing record in the artisan_job_histories table. Example: consequatur

no_of_visitors   number  optional  

Example: 11613.31890586

All: verify access code.

Example request:
curl --request GET \
    --get "https://admin.smartgate.africa/api/v1/resident/get-access-code" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"access_code\": \"consequatur\",
    \"estate_id\": \"consequatur\"
}"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/resident/get-access-code"
);

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

let body = {
    "access_code": "consequatur",
    "estate_id": "consequatur"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/resident/get-access-code';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'access_code' => 'consequatur',
            'estate_id' => 'consequatur',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/resident/get-access-code'
payload = {
    "access_code": "consequatur",
    "estate_id": "consequatur"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Example response (404):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "The route api/v1/resident/get-access-code could not be found."
}
 

Request      

GET api/v1/resident/get-access-code

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

access_code   string   

Example: consequatur

estate_id   string   

Example: consequatur

Resident: get access codes by residents.

Example request:
curl --request GET \
    --get "https://admin.smartgate.africa/api/v1/resident/all-access-codes" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"estate_id\": \"consequatur\",
    \"status\": \"expired\"
}"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/resident/all-access-codes"
);

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

let body = {
    "estate_id": "consequatur",
    "status": "expired"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/resident/all-access-codes';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'estate_id' => 'consequatur',
            'status' => 'expired',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/resident/all-access-codes'
payload = {
    "estate_id": "consequatur",
    "status": "expired"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Example response (404):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "The route api/v1/resident/all-access-codes could not be found."
}
 

Request      

GET api/v1/resident/all-access-codes

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

estate_id   string   

Example: consequatur

status   string   

Example: expired

Must be one of:
  • active
  • expired

Emergency contact:list contact

Example request:
curl --request GET \
    --get "https://admin.smartgate.africa/api/v1/resident/emergency-contact" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"estate_id\": \"consequatur\"
}"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/resident/emergency-contact"
);

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

let body = {
    "estate_id": "consequatur"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/resident/emergency-contact';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'estate_id' => 'consequatur',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/resident/emergency-contact'
payload = {
    "estate_id": "consequatur"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Example response (404):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "The route api/v1/resident/emergency-contact could not be found."
}
 

Request      

GET api/v1/resident/emergency-contact

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

estate_id   string   

Example: consequatur

Resident: update access code detail.

Example request:
curl --request PUT \
    "https://admin.smartgate.africa/api/v1/resident/update-access-code/consequatur" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"visitor_name\": \"consequatur\",
    \"comment\": \"consequatur\",
    \"no_of_visitors\": 11613.31890586000008624978363513946533203125,
    \"estate_id\": 11613.31890586000008624978363513946533203125,
    \"status\": \"checked-in\",
    \"type\": \"extended\",
    \"set_check_in\": \"2025-11-19 00:39:48\",
    \"set_check_out\": \"2096-05-21\"
}"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/resident/update-access-code/consequatur"
);

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

let body = {
    "visitor_name": "consequatur",
    "comment": "consequatur",
    "no_of_visitors": 11613.31890586000008624978363513946533203125,
    "estate_id": 11613.31890586000008624978363513946533203125,
    "status": "checked-in",
    "type": "extended",
    "set_check_in": "2025-11-19 00:39:48",
    "set_check_out": "2096-05-21"
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/resident/update-access-code/consequatur';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'visitor_name' => 'consequatur',
            'comment' => 'consequatur',
            'no_of_visitors' => 11613.31890586000008624978363513946533203125,
            'estate_id' => 11613.31890586000008624978363513946533203125,
            'status' => 'checked-in',
            'type' => 'extended',
            'set_check_in' => '2025-11-19 00:39:48',
            'set_check_out' => '2096-05-21',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/resident/update-access-code/consequatur'
payload = {
    "visitor_name": "consequatur",
    "comment": "consequatur",
    "no_of_visitors": 11613.31890586000008624978363513946533203125,
    "estate_id": 11613.31890586000008624978363513946533203125,
    "status": "checked-in",
    "type": "extended",
    "set_check_in": "2025-11-19 00:39:48",
    "set_check_out": "2096-05-21"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Request      

PUT api/v1/resident/update-access-code/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the update access code. Example: consequatur

Body Parameters

visitor_name   string  optional  

Example: consequatur

comment   string  optional  

Example: consequatur

no_of_visitors   number  optional  

Example: 11613.31890586

estate_id   number  optional  

Example: 11613.31890586

status   string  optional  

Example: checked-in

Must be one of:
  • pending
  • block-entry
  • block-exit
  • checked-in
  • checked-out
  • over-stayed
  • expired
type   string  optional  

Example: extended

Must be one of:
  • one-time
  • event
  • extended
set_check_in   string  optional  

Must be a valid date in the format Y-m-d H:i:s. Example: 2025-11-19 00:39:48

set_check_out   string  optional  

Must be a valid date in the format Y-m-d H:i:s. Must be a date after check_in. Example: 2096-05-21

All: verify access code.

Example request:
curl --request DELETE \
    "https://admin.smartgate.africa/api/v1/resident/delete-access-code" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"access_code\": \"consequatur\",
    \"estate_id\": \"consequatur\"
}"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/resident/delete-access-code"
);

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

let body = {
    "access_code": "consequatur",
    "estate_id": "consequatur"
};

fetch(url, {
    method: "DELETE",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/resident/delete-access-code';
$response = $client->delete(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'access_code' => 'consequatur',
            'estate_id' => 'consequatur',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/resident/delete-access-code'
payload = {
    "access_code": "consequatur",
    "estate_id": "consequatur"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Request      

DELETE api/v1/resident/delete-access-code

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

access_code   string   

Example: consequatur

estate_id   string   

Example: consequatur

Resident: Hire an artisan, send a job request (idempotent).

This method is idempotent based on a unique combination of:

If a job request with the same parameters already exists and is still pending, it will not create a duplicate.

Example request:
curl --request POST \
    "https://admin.smartgate.africa/api/v1/resident/request-job" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "estate_id=17"\
    --form "description=Dolores dolorum amet iste laborum eius est dolor."\
    --form "job_category_id=consequatur"\
    --form "preferred_time=2025-11-19 00:39:48"\
    --form "artisan_id=17"\
    --form "images[]=@/tmp/php5JlQQx" 
const url = new URL(
    "https://admin.smartgate.africa/api/v1/resident/request-job"
);

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

const body = new FormData();
body.append('estate_id', '17');
body.append('description', 'Dolores dolorum amet iste laborum eius est dolor.');
body.append('job_category_id', 'consequatur');
body.append('preferred_time', '2025-11-19 00:39:48');
body.append('artisan_id', '17');
body.append('images[]', document.querySelector('input[name="images[]"]').files[0]);

fetch(url, {
    method: "POST",
    headers,
    body,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/resident/request-job';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'multipart/form-data',
            'Accept' => 'application/json',
        ],
        'multipart' => [
            [
                'name' => 'estate_id',
                'contents' => '17'
            ],
            [
                'name' => 'description',
                'contents' => 'Dolores dolorum amet iste laborum eius est dolor.'
            ],
            [
                'name' => 'job_category_id',
                'contents' => 'consequatur'
            ],
            [
                'name' => 'preferred_time',
                'contents' => '2025-11-19 00:39:48'
            ],
            [
                'name' => 'artisan_id',
                'contents' => '17'
            ],
            [
                'name' => 'images[]',
                'contents' => fopen('/tmp/php5JlQQx', 'r')
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/resident/request-job'
files = {
  'estate_id': (None, '17'),
  'description': (None, 'Dolores dolorum amet iste laborum eius est dolor.'),
  'job_category_id': (None, 'consequatur'),
  'preferred_time': (None, '2025-11-19 00:39:48'),
  'artisan_id': (None, '17'),
  'images[]': open('/tmp/php5JlQQx', 'rb')}
payload = {
    "estate_id": 17,
    "description": "Dolores dolorum amet iste laborum eius est dolor.",
    "job_category_id": "consequatur",
    "preferred_time": "2025-11-19 00:39:48",
    "artisan_id": 17
}
headers = {
  'Content-Type': 'multipart/form-data',
  'Accept': 'application/json'
}

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

Request      

POST api/v1/resident/request-job

Headers

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

Body Parameters

estate_id   integer   

The id of an existing record in the estates table. Example: 17

description   string   

Example: Dolores dolorum amet iste laborum eius est dolor.

job_category_id   string   

Example: consequatur

preferred_time   string   

Must be a valid date in the format Y-m-d H:i:s. Example: 2025-11-19 00:39:48

images   file[]  optional  

Must be a file. Must not be greater than 5048 kilobytes.

artisan_id   integer   

The id of an existing record in the estate_artisans table. Example: 17

POST api/v1/resident/change-status/{jobId}

Example request:
curl --request POST \
    "https://admin.smartgate.africa/api/v1/resident/change-status/consequatur" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"job_id\": 17,
    \"status\": \"rejected\"
}"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/resident/change-status/consequatur"
);

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

let body = {
    "job_id": 17,
    "status": "rejected"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/resident/change-status/consequatur';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'job_id' => 17,
            'status' => 'rejected',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/resident/change-status/consequatur'
payload = {
    "job_id": 17,
    "status": "rejected"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Request      

POST api/v1/resident/change-status/{jobId}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

jobId   string   

Example: consequatur

Body Parameters

job_id   integer   

The id of an existing record in the artisan_job_histories table. Example: 17

status   string   

Example: rejected

Must be one of:
  • accepted
  • rejected
  • completed

Resident: Rate an artisan work.

Example request:
curl --request POST \
    "https://admin.smartgate.africa/api/v1/resident/rate-job" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"rate\": 5,
    \"job_id\": 17,
    \"comment\": \"consequatur\"
}"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/resident/rate-job"
);

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

let body = {
    "rate": 5,
    "job_id": 17,
    "comment": "consequatur"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/resident/rate-job';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'rate' => 5,
            'job_id' => 17,
            'comment' => 'consequatur',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/resident/rate-job'
payload = {
    "rate": 5,
    "job_id": 17,
    "comment": "consequatur"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Request      

POST api/v1/resident/rate-job

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

rate   number   

Must be at least 1. Must not be greater than 5. Example: 5

job_id   integer   

The id of an existing record in the artisan_job_histories table. Example: 17

comment   string  optional  

Example: consequatur

GET api/v1/resident/billing/payment-cycle/{estate_id}

Example request:
curl --request GET \
    --get "https://admin.smartgate.africa/api/v1/resident/billing/payment-cycle/consequatur" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/resident/billing/payment-cycle/consequatur"
);

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

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/resident/billing/payment-cycle/consequatur';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/resident/billing/payment-cycle/consequatur'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Example response (404):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "The route api/v1/resident/billing/payment-cycle/consequatur could not be found."
}
 

Request      

GET api/v1/resident/billing/payment-cycle/{estate_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

estate_id   string   

The ID of the estate. Example: consequatur

GET api/v1/resident/billing/dues-owed/{estate_id}

Example request:
curl --request GET \
    --get "https://admin.smartgate.africa/api/v1/resident/billing/dues-owed/consequatur" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/resident/billing/dues-owed/consequatur"
);

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

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/resident/billing/dues-owed/consequatur';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/resident/billing/dues-owed/consequatur'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Example response (404):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "The route api/v1/resident/billing/dues-owed/consequatur could not be found."
}
 

Request      

GET api/v1/resident/billing/dues-owed/{estate_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

estate_id   string   

The ID of the estate. Example: consequatur

GET api/v1/resident/billing/dues-pending/{estate_id}

Example request:
curl --request GET \
    --get "https://admin.smartgate.africa/api/v1/resident/billing/dues-pending/consequatur" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/resident/billing/dues-pending/consequatur"
);

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

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/resident/billing/dues-pending/consequatur';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/resident/billing/dues-pending/consequatur'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Example response (404):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "The route api/v1/resident/billing/dues-pending/consequatur could not be found."
}
 

Request      

GET api/v1/resident/billing/dues-pending/{estate_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

estate_id   string   

The ID of the estate. Example: consequatur

GET api/v1/resident/billing/payment-stats/{estate_id}

Example request:
curl --request GET \
    --get "https://admin.smartgate.africa/api/v1/resident/billing/payment-stats/consequatur" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/resident/billing/payment-stats/consequatur"
);

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

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/resident/billing/payment-stats/consequatur';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/resident/billing/payment-stats/consequatur'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Example response (404):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "The route api/v1/resident/billing/payment-stats/consequatur could not be found."
}
 

Request      

GET api/v1/resident/billing/payment-stats/{estate_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

estate_id   string   

The ID of the estate. Example: consequatur

GET api/v1/resident/billing/get-payment-cycles/{estate_id}

Example request:
curl --request GET \
    --get "https://admin.smartgate.africa/api/v1/resident/billing/get-payment-cycles/consequatur" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/resident/billing/get-payment-cycles/consequatur"
);

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

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/resident/billing/get-payment-cycles/consequatur';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/resident/billing/get-payment-cycles/consequatur'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Example response (404):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "The route api/v1/resident/billing/get-payment-cycles/consequatur could not be found."
}
 

Request      

GET api/v1/resident/billing/get-payment-cycles/{estate_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

estate_id   string   

The ID of the estate. Example: consequatur

Return active cycle + coverage + blocking + next unpaid + history

Example request:
curl --request GET \
    --get "https://admin.smartgate.africa/api/v1/resident/billing/active" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/resident/billing/active"
);

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

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/resident/billing/active';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/resident/billing/active'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Example response (404):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "The route api/v1/resident/billing/active could not be found."
}
 

Request      

GET api/v1/resident/billing/active

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Quote: months -> amount + the exact FIFO obligations to be covered

Example request:
curl --request POST \
    "https://admin.smartgate.africa/api/v1/resident/billing/quote" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/resident/billing/quote"
);

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

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/resident/billing/quote';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/resident/billing/quote'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Request      

POST api/v1/resident/billing/quote

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

POST api/v1/resident/billing/pay/init

Example request:
curl --request POST \
    "https://admin.smartgate.africa/api/v1/resident/billing/pay/init" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"months\": 73
}"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/resident/billing/pay/init"
);

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

let body = {
    "months": 73
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/resident/billing/pay/init';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'months' => 73,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/resident/billing/pay/init'
payload = {
    "months": 73
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Request      

POST api/v1/resident/billing/pay/init

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

months   integer   

Must be at least 1. Example: 73

Payment history (paginated)

Example request:
curl --request GET \
    --get "https://admin.smartgate.africa/api/v1/resident/billing/payments" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/resident/billing/payments"
);

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

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/resident/billing/payments';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/resident/billing/payments'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Example response (404):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "The route api/v1/resident/billing/payments could not be found."
}
 

Request      

GET api/v1/resident/billing/payments

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

GET api/v1/resident/billing/payments/monthly-dues

Example request:
curl --request GET \
    --get "https://admin.smartgate.africa/api/v1/resident/billing/payments/monthly-dues" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/resident/billing/payments/monthly-dues"
);

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

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/resident/billing/payments/monthly-dues';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/resident/billing/payments/monthly-dues'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Example response (404):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "The route api/v1/resident/billing/payments/monthly-dues could not be found."
}
 

Request      

GET api/v1/resident/billing/payments/monthly-dues

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

GET api/v1/resident/billing/payments/paystack/callback

Example request:
curl --request GET \
    --get "https://admin.smartgate.africa/api/v1/resident/billing/payments/paystack/callback" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/resident/billing/payments/paystack/callback"
);

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

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/resident/billing/payments/paystack/callback';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/resident/billing/payments/paystack/callback'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Example response (404):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "The route api/v1/resident/billing/payments/paystack/callback could not be found."
}
 

Request      

GET api/v1/resident/billing/payments/paystack/callback

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

GET api/v1/resident/billing/payments/details/{ref}

Example request:
curl --request GET \
    --get "https://admin.smartgate.africa/api/v1/resident/billing/payments/details/consequatur" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/resident/billing/payments/details/consequatur"
);

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

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/resident/billing/payments/details/consequatur';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/resident/billing/payments/details/consequatur'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Example response (404):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "The route api/v1/resident/billing/payments/details/consequatur could not be found."
}
 

Request      

GET api/v1/resident/billing/payments/details/{ref}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

ref   string   

Example: consequatur

GET api/v1/resident/billing/payments/download/receipt/{ref}

Example request:
curl --request GET \
    --get "https://admin.smartgate.africa/api/v1/resident/billing/payments/download/receipt/consequatur" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/resident/billing/payments/download/receipt/consequatur"
);

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

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/resident/billing/payments/download/receipt/consequatur';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/resident/billing/payments/download/receipt/consequatur'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Example response (404):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "The route api/v1/resident/billing/payments/download/receipt/consequatur could not be found."
}
 

Request      

GET api/v1/resident/billing/payments/download/receipt/{ref}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

ref   string   

Example: consequatur

All: verify access code.

Example request:
curl --request GET \
    --get "https://admin.smartgate.africa/api/v1/security/verify-access-code" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"access_code\": \"consequatur\",
    \"estate_id\": \"consequatur\"
}"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/security/verify-access-code"
);

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

let body = {
    "access_code": "consequatur",
    "estate_id": "consequatur"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/security/verify-access-code';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'access_code' => 'consequatur',
            'estate_id' => 'consequatur',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/security/verify-access-code'
payload = {
    "access_code": "consequatur",
    "estate_id": "consequatur"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Example response (404):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "The route api/v1/security/verify-access-code could not be found."
}
 

Request      

GET api/v1/security/verify-access-code

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

access_code   string   

Example: consequatur

estate_id   string   

Example: consequatur

Security: Authenticate access code.

Example request:
curl --request POST \
    "https://admin.smartgate.africa/api/v1/security/authenticate-access-code" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"access_code\": \"consequatur\",
    \"estate_id\": \"consequatur\",
    \"no_of_visitors_allowed\": 11613.31890586000008624978363513946533203125
}"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/security/authenticate-access-code"
);

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

let body = {
    "access_code": "consequatur",
    "estate_id": "consequatur",
    "no_of_visitors_allowed": 11613.31890586000008624978363513946533203125
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/security/authenticate-access-code';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'access_code' => 'consequatur',
            'estate_id' => 'consequatur',
            'no_of_visitors_allowed' => 11613.31890586000008624978363513946533203125,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/security/authenticate-access-code'
payload = {
    "access_code": "consequatur",
    "estate_id": "consequatur",
    "no_of_visitors_allowed": 11613.31890586000008624978363513946533203125
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Request      

POST api/v1/security/authenticate-access-code

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

access_code   string   

Example: consequatur

estate_id   string   

Example: consequatur

no_of_visitors_allowed   number  optional  

Example: 11613.31890586

Security: Checkout access Code.

Example request:
curl --request POST \
    "https://admin.smartgate.africa/api/v1/security/checout-visitor" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"access_code\": \"consequatur\"
}"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/security/checout-visitor"
);

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

let body = {
    "access_code": "consequatur"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/security/checout-visitor';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'access_code' => 'consequatur',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/security/checout-visitor'
payload = {
    "access_code": "consequatur"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Request      

POST api/v1/security/checout-visitor

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

access_code   string   

Example: consequatur

no_of_visitors_out   string  optional  

Admin: Admin approve an Artisan.

Example request:
curl --request POST \
    "https://admin.smartgate.africa/api/v1/approve-artisan" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"artisan_id\": \"consequatur\"
}"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/approve-artisan"
);

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

let body = {
    "artisan_id": "consequatur"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/approve-artisan';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'artisan_id' => 'consequatur',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/approve-artisan'
payload = {
    "artisan_id": "consequatur"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Request      

POST api/v1/approve-artisan

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

artisan_id   string   

Example: consequatur

Artisan: Sign in a artisan user by verifying their email and returning associated estate.

Example request:
curl --request POST \
    "https://admin.smartgate.africa/api/v1/artisan/signin" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"email\": \"qkunze@example.com\"
}"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/artisan/signin"
);

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

let body = {
    "email": "qkunze@example.com"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/artisan/signin';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'email' => 'qkunze@example.com',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/artisan/signin'
payload = {
    "email": "qkunze@example.com"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Request      

POST api/v1/artisan/signin

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

email   string   

Must be a valid email address. Example: qkunze@example.com

Artisan: authenticate artisan user.

Example request:
curl --request POST \
    "https://admin.smartgate.africa/api/v1/artisan/login" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"email\": \"qkunze@example.com\",
    \"password\": \"consequatur\"
}"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/artisan/login"
);

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

let body = {
    "email": "qkunze@example.com",
    "password": "consequatur"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/artisan/login';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'email' => 'qkunze@example.com',
            'password' => 'consequatur',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/artisan/login'
payload = {
    "email": "qkunze@example.com",
    "password": "consequatur"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Request      

POST api/v1/artisan/login

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

email   string   

Must be a valid email address. Example: qkunze@example.com

password   string   

Example: consequatur

Check if an email already exists as an artisan.

Example request:
curl --request POST \
    "https://admin.smartgate.africa/api/v1/artisan/verify-artisan-email" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"email\": \"qkunze@example.com\"
}"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/artisan/verify-artisan-email"
);

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

let body = {
    "email": "qkunze@example.com"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/artisan/verify-artisan-email';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'email' => 'qkunze@example.com',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/artisan/verify-artisan-email'
payload = {
    "email": "qkunze@example.com"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Request      

POST api/v1/artisan/verify-artisan-email

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

email   string   

Must be a valid email address. Example: qkunze@example.com

POST api/v1/artisan/validate-registration

Example request:
curl --request POST \
    "https://admin.smartgate.africa/api/v1/artisan/validate-registration" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"title\": \"consequatur\",
    \"name\": \"consequatur\",
    \"phone_number\": \"consequatur\",
    \"email\": \"carolyne.luettgen@example.org\",
    \"state_id\": \"consequatur\",
    \"address\": \"consequatur\",
    \"category_ids\": []
}"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/artisan/validate-registration"
);

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

let body = {
    "title": "consequatur",
    "name": "consequatur",
    "phone_number": "consequatur",
    "email": "carolyne.luettgen@example.org",
    "state_id": "consequatur",
    "address": "consequatur",
    "category_ids": []
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/artisan/validate-registration';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'title' => 'consequatur',
            'name' => 'consequatur',
            'phone_number' => 'consequatur',
            'email' => 'carolyne.luettgen@example.org',
            'state_id' => 'consequatur',
            'address' => 'consequatur',
            'category_ids' => [],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/artisan/validate-registration'
payload = {
    "title": "consequatur",
    "name": "consequatur",
    "phone_number": "consequatur",
    "email": "carolyne.luettgen@example.org",
    "state_id": "consequatur",
    "address": "consequatur",
    "category_ids": []
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Request      

POST api/v1/artisan/validate-registration

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

title   string   

Example: consequatur

name   string   

Example: consequatur

phone_number   string   

Example: consequatur

email   string   

Must be a valid email address. Example: carolyne.luettgen@example.org

state_id   string   

Example: consequatur

address   string   

Example: consequatur

category_ids   object   

Artisan: Register an Artisan.

Example request:
curl --request POST \
    "https://admin.smartgate.africa/api/v1/artisan/register" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "title=consequatur"\
    --form "name=consequatur"\
    --form "phone_number=consequatur"\
    --form "email=carolyne.luettgen@example.org"\
    --form "state_id=consequatur"\
    --form "address=consequatur"\
    --form "estates[]=17"\
    --form "image=@/tmp/phpBzuYqP" 
const url = new URL(
    "https://admin.smartgate.africa/api/v1/artisan/register"
);

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

const body = new FormData();
body.append('title', 'consequatur');
body.append('name', 'consequatur');
body.append('phone_number', 'consequatur');
body.append('email', 'carolyne.luettgen@example.org');
body.append('state_id', 'consequatur');
body.append('address', 'consequatur');
body.append('estates[]', '17');
body.append('image', document.querySelector('input[name="image"]').files[0]);

fetch(url, {
    method: "POST",
    headers,
    body,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/artisan/register';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'multipart/form-data',
            'Accept' => 'application/json',
        ],
        'multipart' => [
            [
                'name' => 'title',
                'contents' => 'consequatur'
            ],
            [
                'name' => 'name',
                'contents' => 'consequatur'
            ],
            [
                'name' => 'phone_number',
                'contents' => 'consequatur'
            ],
            [
                'name' => 'email',
                'contents' => 'carolyne.luettgen@example.org'
            ],
            [
                'name' => 'state_id',
                'contents' => 'consequatur'
            ],
            [
                'name' => 'address',
                'contents' => 'consequatur'
            ],
            [
                'name' => 'estates[]',
                'contents' => '17'
            ],
            [
                'name' => 'image',
                'contents' => fopen('/tmp/phpBzuYqP', 'r')
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/artisan/register'
files = {
  'title': (None, 'consequatur'),
  'name': (None, 'consequatur'),
  'phone_number': (None, 'consequatur'),
  'email': (None, 'carolyne.luettgen@example.org'),
  'state_id': (None, 'consequatur'),
  'address': (None, 'consequatur'),
  'estates[]': (None, '17'),
  'image': open('/tmp/phpBzuYqP', 'rb')}
payload = {
    "title": "consequatur",
    "name": "consequatur",
    "phone_number": "consequatur",
    "email": "carolyne.luettgen@example.org",
    "state_id": "consequatur",
    "address": "consequatur",
    "category_ids": [],
    "estates": [
        17
    ]
}
headers = {
  'Content-Type': 'multipart/form-data',
  'Accept': 'application/json'
}

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

Request      

POST api/v1/artisan/register

Headers

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

Body Parameters

title   string   

Example: consequatur

name   string   

Example: consequatur

phone_number   string   

Example: consequatur

email   string   

Must be a valid email address. Example: carolyne.luettgen@example.org

state_id   string   

Example: consequatur

address   string   

Example: consequatur

category_ids   object   
estates   integer[]  optional  

The id of an existing record in the estates table.

image   file  optional  

Must be an image. Must not be greater than 2048 kilobytes. Example: /tmp/phpBzuYqP

Artisan: Get list of artisans

Example request:
curl --request GET \
    --get "https://admin.smartgate.africa/api/v1/artisan/list" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"estate_id\": 17,
    \"status\": \"estate-verified\",
    \"search_value\": \"consequatur\",
    \"category\": \"consequatur\"
}"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/artisan/list"
);

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

let body = {
    "estate_id": 17,
    "status": "estate-verified",
    "search_value": "consequatur",
    "category": "consequatur"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/artisan/list';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'estate_id' => 17,
            'status' => 'estate-verified',
            'search_value' => 'consequatur',
            'category' => 'consequatur',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/artisan/list'
payload = {
    "estate_id": 17,
    "status": "estate-verified",
    "search_value": "consequatur",
    "category": "consequatur"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Example response (404):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "The route api/v1/artisan/list could not be found."
}
 

Request      

GET api/v1/artisan/list

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

estate_id   integer   

Example: 17

status   string   

Example: estate-verified

Must be one of:
  • approved
  • estate-verified
  • smartgate-verified
search_value   string  optional  

Example: consequatur

category   string  optional  

Example: consequatur

Artisan: Get artisan By Id

Example request:
curl --request GET \
    --get "https://admin.smartgate.africa/api/v1/artisan/getArtisanById/consequatur" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/artisan/getArtisanById/consequatur"
);

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

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/artisan/getArtisanById/consequatur';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/artisan/getArtisanById/consequatur'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Example response (404):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "The route api/v1/artisan/getArtisanById/consequatur could not be found."
}
 

Request      

GET api/v1/artisan/getArtisanById/{artisan_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

artisan_id   string   

The ID of the artisan. Example: consequatur

Artisan Job categories.

Example request:
curl --request GET \
    --get "https://admin.smartgate.africa/api/v1/artisan/category" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/artisan/category"
);

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

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/artisan/category';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/artisan/category'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Example response (404):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "The route api/v1/artisan/category could not be found."
}
 

Request      

GET api/v1/artisan/category

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Artisan: Get list of artisans by category and by estate

Example request:
curl --request GET \
    --get "https://admin.smartgate.africa/api/v1/artisan/list-by-category" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"estate_id\": \"consequatur\",
    \"status\": \"consequatur\",
    \"job_id\": \"consequatur\"
}"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/artisan/list-by-category"
);

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

let body = {
    "estate_id": "consequatur",
    "status": "consequatur",
    "job_id": "consequatur"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/artisan/list-by-category';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'estate_id' => 'consequatur',
            'status' => 'consequatur',
            'job_id' => 'consequatur',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/artisan/list-by-category'
payload = {
    "estate_id": "consequatur",
    "status": "consequatur",
    "job_id": "consequatur"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Example response (404):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "The route api/v1/artisan/list-by-category could not be found."
}
 

Request      

GET api/v1/artisan/list-by-category

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

estate_id   string   

Example: consequatur

status   string   

Example: consequatur

job_id   string   

Example: consequatur

Artisan Project: Create a new artisan project

Example request:
curl --request POST \
    "https://admin.smartgate.africa/api/v1/artisan/artisan-projects" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "description=Dolores dolorum amet iste laborum eius est dolor."\
    --form "artisan_id=17"\
    --form "attachment=@/tmp/phpoQaFZl" 
const url = new URL(
    "https://admin.smartgate.africa/api/v1/artisan/artisan-projects"
);

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

const body = new FormData();
body.append('description', 'Dolores dolorum amet iste laborum eius est dolor.');
body.append('artisan_id', '17');
body.append('attachment', document.querySelector('input[name="attachment"]').files[0]);

fetch(url, {
    method: "POST",
    headers,
    body,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/artisan/artisan-projects';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'multipart/form-data',
            'Accept' => 'application/json',
        ],
        'multipart' => [
            [
                'name' => 'description',
                'contents' => 'Dolores dolorum amet iste laborum eius est dolor.'
            ],
            [
                'name' => 'artisan_id',
                'contents' => '17'
            ],
            [
                'name' => 'attachment',
                'contents' => fopen('/tmp/phpoQaFZl', 'r')
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/artisan/artisan-projects'
files = {
  'description': (None, 'Dolores dolorum amet iste laborum eius est dolor.'),
  'artisan_id': (None, '17'),
  'attachment': open('/tmp/phpoQaFZl', 'rb')}
payload = {
    "description": "Dolores dolorum amet iste laborum eius est dolor.",
    "artisan_id": 17
}
headers = {
  'Content-Type': 'multipart/form-data',
  'Accept': 'application/json'
}

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

Request      

POST api/v1/artisan/artisan-projects

Headers

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

Body Parameters

description   string   

Example: Dolores dolorum amet iste laborum eius est dolor.

attachment   file  optional  

Must be a file. Example: /tmp/phpoQaFZl

artisan_id   integer   

The id of an existing record in the estate_artisans table. Example: 17

Artisan Project: Create a new artisan project

Example request:
curl --request POST \
    "https://admin.smartgate.africa/api/v1/artisan/artisan-projects/artisan-projects" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "description=Dolores dolorum amet iste laborum eius est dolor."\
    --form "artisan_id=17"\
    --form "attachment=@/tmp/phpmAa46T" 
const url = new URL(
    "https://admin.smartgate.africa/api/v1/artisan/artisan-projects/artisan-projects"
);

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

const body = new FormData();
body.append('description', 'Dolores dolorum amet iste laborum eius est dolor.');
body.append('artisan_id', '17');
body.append('attachment', document.querySelector('input[name="attachment"]').files[0]);

fetch(url, {
    method: "POST",
    headers,
    body,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/artisan/artisan-projects/artisan-projects';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'multipart/form-data',
            'Accept' => 'application/json',
        ],
        'multipart' => [
            [
                'name' => 'description',
                'contents' => 'Dolores dolorum amet iste laborum eius est dolor.'
            ],
            [
                'name' => 'artisan_id',
                'contents' => '17'
            ],
            [
                'name' => 'attachment',
                'contents' => fopen('/tmp/phpmAa46T', 'r')
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/artisan/artisan-projects/artisan-projects'
files = {
  'description': (None, 'Dolores dolorum amet iste laborum eius est dolor.'),
  'artisan_id': (None, '17'),
  'attachment': open('/tmp/phpmAa46T', 'rb')}
payload = {
    "description": "Dolores dolorum amet iste laborum eius est dolor.",
    "artisan_id": 17
}
headers = {
  'Content-Type': 'multipart/form-data',
  'Accept': 'application/json'
}

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

Request      

POST api/v1/artisan/artisan-projects/artisan-projects

Headers

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

Body Parameters

description   string   

Example: Dolores dolorum amet iste laborum eius est dolor.

attachment   file  optional  

Must be a file. Example: /tmp/phpmAa46T

artisan_id   integer   

The id of an existing record in the estate_artisans table. Example: 17

Artisan Project: Get all artisan projects

Example request:
curl --request GET \
    --get "https://admin.smartgate.africa/api/v1/artisan/artisan-projects/artisan-projects" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/artisan/artisan-projects/artisan-projects"
);

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

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/artisan/artisan-projects/artisan-projects';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/artisan/artisan-projects/artisan-projects'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Example response (404):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "The route api/v1/artisan/artisan-projects/artisan-projects could not be found."
}
 

Request      

GET api/v1/artisan/artisan-projects/artisan-projects

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Artisan Project: Update an artisan project

Example request:
curl --request PUT \
    "https://admin.smartgate.africa/api/v1/artisan/artisan-projects/artisan-projects/consequatur" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "description=Dolores dolorum amet iste laborum eius est dolor."\
    --form "artisan_id=17"\
    --form "attachment=@/tmp/phpqnIdjx" 
const url = new URL(
    "https://admin.smartgate.africa/api/v1/artisan/artisan-projects/artisan-projects/consequatur"
);

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

const body = new FormData();
body.append('description', 'Dolores dolorum amet iste laborum eius est dolor.');
body.append('artisan_id', '17');
body.append('attachment', document.querySelector('input[name="attachment"]').files[0]);

fetch(url, {
    method: "PUT",
    headers,
    body,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/artisan/artisan-projects/artisan-projects/consequatur';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Content-Type' => 'multipart/form-data',
            'Accept' => 'application/json',
        ],
        'multipart' => [
            [
                'name' => 'description',
                'contents' => 'Dolores dolorum amet iste laborum eius est dolor.'
            ],
            [
                'name' => 'artisan_id',
                'contents' => '17'
            ],
            [
                'name' => 'attachment',
                'contents' => fopen('/tmp/phpqnIdjx', 'r')
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/artisan/artisan-projects/artisan-projects/consequatur'
files = {
  'description': (None, 'Dolores dolorum amet iste laborum eius est dolor.'),
  'artisan_id': (None, '17'),
  'attachment': open('/tmp/phpqnIdjx', 'rb')}
payload = {
    "description": "Dolores dolorum amet iste laborum eius est dolor.",
    "artisan_id": 17
}
headers = {
  'Content-Type': 'multipart/form-data',
  'Accept': 'application/json'
}

response = requests.request('PUT', url, headers=headers, files=files)
response.json()

Request      

PUT api/v1/artisan/artisan-projects/artisan-projects/{id}

Headers

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the artisan project. Example: consequatur

Body Parameters

description   string  optional  

Example: Dolores dolorum amet iste laborum eius est dolor.

attachment   file  optional  

Must be a file. Example: /tmp/phpqnIdjx

artisan_id   integer  optional  

The id of an existing record in the artisans table. Example: 17

Artisan Project: Delete an artisan project

Example request:
curl --request DELETE \
    "https://admin.smartgate.africa/api/v1/artisan/artisan-projects/artisan-projects/consequatur" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/artisan/artisan-projects/artisan-projects/consequatur"
);

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

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/artisan/artisan-projects/artisan-projects/consequatur';
$response = $client->delete(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/artisan/artisan-projects/artisan-projects/consequatur'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Request      

DELETE api/v1/artisan/artisan-projects/artisan-projects/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the artisan project. Example: consequatur

Artisan Project: Get all projects by artisan ID

Example request:
curl --request GET \
    --get "https://admin.smartgate.africa/api/v1/artisan/artisan-projects/artisan-projects/by-artisan/consequatur" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/artisan/artisan-projects/artisan-projects/by-artisan/consequatur"
);

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

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/artisan/artisan-projects/artisan-projects/by-artisan/consequatur';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/artisan/artisan-projects/artisan-projects/by-artisan/consequatur'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Example response (404):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "The route api/v1/artisan/artisan-projects/artisan-projects/by-artisan/consequatur could not be found."
}
 

Request      

GET api/v1/artisan/artisan-projects/artisan-projects/by-artisan/{artisan_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

artisan_id   string   

The ID of the artisan. Example: consequatur

GET api/v1/artisan/artisan-jobs

Example request:
curl --request GET \
    --get "https://admin.smartgate.africa/api/v1/artisan/artisan-jobs" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/artisan/artisan-jobs"
);

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

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/artisan/artisan-jobs';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/artisan/artisan-jobs'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Example response (404):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "The route api/v1/artisan/artisan-jobs could not be found."
}
 

Request      

GET api/v1/artisan/artisan-jobs

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

GET api/v1/artisan/artisan-jobs/details/{jobId}

Example request:
curl --request GET \
    --get "https://admin.smartgate.africa/api/v1/artisan/artisan-jobs/details/consequatur" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/artisan/artisan-jobs/details/consequatur"
);

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

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/artisan/artisan-jobs/details/consequatur';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/artisan/artisan-jobs/details/consequatur'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Example response (404):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "The route api/v1/artisan/artisan-jobs/details/consequatur could not be found."
}
 

Request      

GET api/v1/artisan/artisan-jobs/details/{jobId}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

jobId   string   

Example: consequatur

POST api/v1/artisan/artisan-jobs/change-status/{jobId}

Example request:
curl --request POST \
    "https://admin.smartgate.africa/api/v1/artisan/artisan-jobs/change-status/consequatur" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"job_id\": 17,
    \"status\": \"accepted\"
}"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/artisan/artisan-jobs/change-status/consequatur"
);

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

let body = {
    "job_id": 17,
    "status": "accepted"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/artisan/artisan-jobs/change-status/consequatur';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'job_id' => 17,
            'status' => 'accepted',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/artisan/artisan-jobs/change-status/consequatur'
payload = {
    "job_id": 17,
    "status": "accepted"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Request      

POST api/v1/artisan/artisan-jobs/change-status/{jobId}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

jobId   string   

Example: consequatur

Body Parameters

job_id   integer   

The id of an existing record in the artisan_job_histories table. Example: 17

status   string   

Example: accepted

Must be one of:
  • accepted
  • rejected
  • completed

GET api/v1/artisan/artisan-reviews

Example request:
curl --request GET \
    --get "https://admin.smartgate.africa/api/v1/artisan/artisan-reviews" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/artisan/artisan-reviews"
);

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

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/artisan/artisan-reviews';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/artisan/artisan-reviews'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Example response (404):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "The route api/v1/artisan/artisan-reviews could not be found."
}
 

Request      

GET api/v1/artisan/artisan-reviews

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Artisan: get Artisan Profile

Example request:
curl --request GET \
    --get "https://admin.smartgate.africa/api/v1/artisan/profile" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/artisan/profile"
);

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

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/artisan/profile';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/artisan/profile'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Example response (404):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "The route api/v1/artisan/profile could not be found."
}
 

Request      

GET api/v1/artisan/profile

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Update Artisan Profile.

Example request:
curl --request POST \
    "https://admin.smartgate.africa/api/v1/artisan/update-profile" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "title=consequatur"\
    --form "name=consequatur"\
    --form "state_id=17"\
    --form "location_id=17"\
    --form "address=consequatur"\
    --form "password=[2UZ5ij-e/dl4"\
    --form "image=@/tmp/phpWDW89P" 
const url = new URL(
    "https://admin.smartgate.africa/api/v1/artisan/update-profile"
);

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

const body = new FormData();
body.append('title', 'consequatur');
body.append('name', 'consequatur');
body.append('state_id', '17');
body.append('location_id', '17');
body.append('address', 'consequatur');
body.append('password', '[2UZ5ij-e/dl4');
body.append('image', document.querySelector('input[name="image"]').files[0]);

fetch(url, {
    method: "POST",
    headers,
    body,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/artisan/update-profile';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'multipart/form-data',
            'Accept' => 'application/json',
        ],
        'multipart' => [
            [
                'name' => 'title',
                'contents' => 'consequatur'
            ],
            [
                'name' => 'name',
                'contents' => 'consequatur'
            ],
            [
                'name' => 'state_id',
                'contents' => '17'
            ],
            [
                'name' => 'location_id',
                'contents' => '17'
            ],
            [
                'name' => 'address',
                'contents' => 'consequatur'
            ],
            [
                'name' => 'password',
                'contents' => '[2UZ5ij-e/dl4'
            ],
            [
                'name' => 'image',
                'contents' => fopen('/tmp/phpWDW89P', 'r')
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/artisan/update-profile'
files = {
  'title': (None, 'consequatur'),
  'name': (None, 'consequatur'),
  'state_id': (None, '17'),
  'location_id': (None, '17'),
  'address': (None, 'consequatur'),
  'password': (None, '[2UZ5ij-e/dl4'),
  'image': open('/tmp/phpWDW89P', 'rb')}
payload = {
    "title": "consequatur",
    "name": "consequatur",
    "state_id": 17,
    "location_id": 17,
    "address": "consequatur",
    "password": "[2UZ5ij-e\/dl4"
}
headers = {
  'Content-Type': 'multipart/form-data',
  'Accept': 'application/json'
}

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

Request      

POST api/v1/artisan/update-profile

Headers

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

Body Parameters

title   string  optional  

Example: consequatur

name   string  optional  

Example: consequatur

email   string  optional  
phone_number   string  optional  
state_id   integer  optional  

Example: 17

location_id   integer  optional  

Example: 17

address   string  optional  

Example: consequatur

password   string  optional  

Must be at least 6 characters. Example: [2UZ5ij-e/dl4

image   file  optional  

Must be a file. Must be an image. Must not be greater than 2048 kilobytes. Example: /tmp/phpWDW89P

estate_id   object  optional  

The id of an existing record in the estates table.

job_id   object  optional  

PUT api/v1/artisan/update-availability

Example request:
curl --request PUT \
    "https://admin.smartgate.africa/api/v1/artisan/update-availability" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"availability\": \"available\"
}"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/artisan/update-availability"
);

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

let body = {
    "availability": "available"
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/artisan/update-availability';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'availability' => 'available',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/artisan/update-availability'
payload = {
    "availability": "available"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Request      

PUT api/v1/artisan/update-availability

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

availability   string   

Example: available

Must be one of:
  • available
  • not-available

Artisan: Request Resident Admin verification.

Example request:
curl --request POST \
    "https://admin.smartgate.africa/api/v1/artisan/request-verification" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"estate_id\": \"consequatur\"
}"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/artisan/request-verification"
);

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

let body = {
    "estate_id": "consequatur"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/artisan/request-verification';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'estate_id' => 'consequatur',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/artisan/request-verification'
payload = {
    "estate_id": "consequatur"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Request      

POST api/v1/artisan/request-verification

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

estate_id   string   

Example: consequatur

Artisan: Accept or Reject Job.

Example request:
curl --request POST \
    "https://admin.smartgate.africa/api/v1/artisan/job-approval" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"job_id\": \"consequatur\",
    \"status\": \"accept\"
}"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/artisan/job-approval"
);

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

let body = {
    "job_id": "consequatur",
    "status": "accept"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/artisan/job-approval';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'job_id' => 'consequatur',
            'status' => 'accept',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/artisan/job-approval'
payload = {
    "job_id": "consequatur",
    "status": "accept"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Request      

POST api/v1/artisan/job-approval

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

job_id   string   

Example: consequatur

status   string   

Example: accept

Must be one of:
  • accept
  • decline
comment   string  optional  

Get access code detail by ID.

Example request:
curl --request GET \
    --get "https://admin.smartgate.africa/api/v1/artisan/get-access-code-by-id/consequatur" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/artisan/get-access-code-by-id/consequatur"
);

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

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/artisan/get-access-code-by-id/consequatur';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/artisan/get-access-code-by-id/consequatur'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Example response (404):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "The route api/v1/artisan/get-access-code-by-id/consequatur could not be found."
}
 

Request      

GET api/v1/artisan/get-access-code-by-id/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the get access code by id. Example: consequatur

Item Category: List all item categories

Example request:
curl --request GET \
    --get "https://admin.smartgate.africa/api/v1/item-categories" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/item-categories"
);

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

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/item-categories';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/item-categories'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Example response (404):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "The route api/v1/item-categories could not be found."
}
 

Request      

GET api/v1/item-categories

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Item Category: Create a new item category

Example request:
curl --request POST \
    "https://admin.smartgate.africa/api/v1/item-categories" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"description\": \"Dolores dolorum amet iste laborum eius est dolor.\"
}"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/item-categories"
);

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

let body = {
    "description": "Dolores dolorum amet iste laborum eius est dolor."
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/item-categories';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'description' => 'Dolores dolorum amet iste laborum eius est dolor.',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/item-categories'
payload = {
    "description": "Dolores dolorum amet iste laborum eius est dolor."
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Request      

POST api/v1/item-categories

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

description   string   

Must not be greater than 255 characters. Example: Dolores dolorum amet iste laborum eius est dolor.

Item Category: Get a single item category by ID

Example request:
curl --request GET \
    --get "https://admin.smartgate.africa/api/v1/item-categories/consequatur" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/item-categories/consequatur"
);

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

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/item-categories/consequatur';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/item-categories/consequatur'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Example response (404):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "The route api/v1/item-categories/consequatur could not be found."
}
 

Request      

GET api/v1/item-categories/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the item category. Example: consequatur

Item Category: Update an item category

Example request:
curl --request PUT \
    "https://admin.smartgate.africa/api/v1/item-categories/consequatur" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"description\": \"Dolores dolorum amet iste laborum eius est dolor.\"
}"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/item-categories/consequatur"
);

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

let body = {
    "description": "Dolores dolorum amet iste laborum eius est dolor."
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/item-categories/consequatur';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'description' => 'Dolores dolorum amet iste laborum eius est dolor.',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/item-categories/consequatur'
payload = {
    "description": "Dolores dolorum amet iste laborum eius est dolor."
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Request      

PUT api/v1/item-categories/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the item category. Example: consequatur

Body Parameters

description   string  optional  

Must not be greater than 255 characters. Example: Dolores dolorum amet iste laborum eius est dolor.

Item Category: Delete an item category

Example request:
curl --request DELETE \
    "https://admin.smartgate.africa/api/v1/item-categories/consequatur" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/item-categories/consequatur"
);

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

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/item-categories/consequatur';
$response = $client->delete(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/item-categories/consequatur'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Request      

DELETE api/v1/item-categories/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the item category. Example: consequatur

Declutter: Get list of declutters by estate, status and category

Example request:
curl --request GET \
    --get "https://admin.smartgate.africa/api/v1/declutter/list" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"estate_id\": 11613.31890586000008624978363513946533203125,
    \"search_value\": \"consequatur\",
    \"status\": \"available\",
    \"category_id\": [
        11613.31890586000008624978363513946533203125
    ]
}"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/declutter/list"
);

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

let body = {
    "estate_id": 11613.31890586000008624978363513946533203125,
    "search_value": "consequatur",
    "status": "available",
    "category_id": [
        11613.31890586000008624978363513946533203125
    ]
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/declutter/list';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'estate_id' => 11613.31890586000008624978363513946533203125,
            'search_value' => 'consequatur',
            'status' => 'available',
            'category_id' => [
                11613.31890586000008624978363513946533203125,
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/declutter/list'
payload = {
    "estate_id": 11613.31890586000008624978363513946533203125,
    "search_value": "consequatur",
    "status": "available",
    "category_id": [
        11613.31890586000008624978363513946533203125
    ]
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Example response (404):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "The route api/v1/declutter/list could not be found."
}
 

Request      

GET api/v1/declutter/list

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

estate_id   number   

Example: 11613.31890586

search_value   string  optional  

Example: consequatur

status   string   

Example: available

Must be one of:
  • all
  • draft
  • available
  • sold
category_id   number[]  optional  

expects array of category IDs.

Declutter: Get individual list for user resident

Example request:
curl --request GET \
    --get "https://admin.smartgate.africa/api/v1/declutter/my-list" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"status\": \"sold\",
    \"category_id\": \"consequatur\",
    \"search_value\": \"consequatur\"
}"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/declutter/my-list"
);

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

let body = {
    "status": "sold",
    "category_id": "consequatur",
    "search_value": "consequatur"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/declutter/my-list';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'status' => 'sold',
            'category_id' => 'consequatur',
            'search_value' => 'consequatur',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/declutter/my-list'
payload = {
    "status": "sold",
    "category_id": "consequatur",
    "search_value": "consequatur"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Example response (404):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "The route api/v1/declutter/my-list could not be found."
}
 

Request      

GET api/v1/declutter/my-list

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

status   string   

Example: sold

Must be one of:
  • all
  • draft
  • available
  • sold
category_id   string  optional  

Example: consequatur

search_value   string  optional  

e.g. "1,2,3". Example: consequatur

Declutter: Get declutter by id

Example request:
curl --request GET \
    --get "https://admin.smartgate.africa/api/v1/declutter/get-by-id" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"id\": \"consequatur\"
}"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/declutter/get-by-id"
);

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

let body = {
    "id": "consequatur"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/declutter/get-by-id';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'id' => 'consequatur',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/declutter/get-by-id'
payload = {
    "id": "consequatur"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Example response (404):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "The route api/v1/declutter/get-by-id could not be found."
}
 

Request      

GET api/v1/declutter/get-by-id

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

id   string   

Example: consequatur

Declutter: Create Item

Example request:
curl --request POST \
    "https://admin.smartgate.africa/api/v1/declutter/create" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "name=consequatur"\
    --form "category_id=consequatur"\
    --form "estate_id=consequatur"\
    --form "description=consequatur"\
    --form "condition=Very-Good"\
    --form "currency=consequatur"\
    --form "price=11613.31890586"\
    --form "pictures[]=@/tmp/phpWT1mT9" 
const url = new URL(
    "https://admin.smartgate.africa/api/v1/declutter/create"
);

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

const body = new FormData();
body.append('name', 'consequatur');
body.append('category_id', 'consequatur');
body.append('estate_id', 'consequatur');
body.append('description', 'consequatur');
body.append('condition', 'Very-Good');
body.append('currency', 'consequatur');
body.append('price', '11613.31890586');
body.append('pictures[]', document.querySelector('input[name="pictures[]"]').files[0]);

fetch(url, {
    method: "POST",
    headers,
    body,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/declutter/create';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'multipart/form-data',
            'Accept' => 'application/json',
        ],
        'multipart' => [
            [
                'name' => 'name',
                'contents' => 'consequatur'
            ],
            [
                'name' => 'category_id',
                'contents' => 'consequatur'
            ],
            [
                'name' => 'estate_id',
                'contents' => 'consequatur'
            ],
            [
                'name' => 'description',
                'contents' => 'consequatur'
            ],
            [
                'name' => 'condition',
                'contents' => 'Very-Good'
            ],
            [
                'name' => 'currency',
                'contents' => 'consequatur'
            ],
            [
                'name' => 'price',
                'contents' => '11613.31890586'
            ],
            [
                'name' => 'pictures[]',
                'contents' => fopen('/tmp/phpWT1mT9', 'r')
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/declutter/create'
files = {
  'name': (None, 'consequatur'),
  'category_id': (None, 'consequatur'),
  'estate_id': (None, 'consequatur'),
  'description': (None, 'consequatur'),
  'condition': (None, 'Very-Good'),
  'currency': (None, 'consequatur'),
  'price': (None, '11613.31890586'),
  'pictures[]': open('/tmp/phpWT1mT9', 'rb')}
payload = {
    "name": "consequatur",
    "category_id": "consequatur",
    "estate_id": "consequatur",
    "description": "consequatur",
    "condition": "Very-Good",
    "currency": "consequatur",
    "price": 11613.31890586000008624978363513946533203125
}
headers = {
  'Content-Type': 'multipart/form-data',
  'Accept': 'application/json'
}

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

Request      

POST api/v1/declutter/create

Headers

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

Body Parameters

name   string   

Example: consequatur

category_id   string   

Example: consequatur

status   string  optional  

comma-separated or array.

estate_id   string   

The id of an existing record in the estates table. Example: consequatur

description   string   

Example: consequatur

condition   string   

Example: Very-Good

Must be one of:
  • Good
  • Very-Good
  • Excellent
  • Brand-New
currency   string   

Example: consequatur

price   number   

Example: 11613.31890586

pictures   file[]  optional  

Must be a file. Must not be greater than 5048 kilobytes.

Declutter: Update Item, publish, mark as sold etc

Example request:
curl --request PUT \
    "https://admin.smartgate.africa/api/v1/declutter/update/consequatur" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "condition=Good"\
    --form "price=11613.31890586"\
    --form "pictures[]=@/tmp/phpBLYYU1" 
const url = new URL(
    "https://admin.smartgate.africa/api/v1/declutter/update/consequatur"
);

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

const body = new FormData();
body.append('condition', 'Good');
body.append('price', '11613.31890586');
body.append('pictures[]', document.querySelector('input[name="pictures[]"]').files[0]);

fetch(url, {
    method: "PUT",
    headers,
    body,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/declutter/update/consequatur';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Content-Type' => 'multipart/form-data',
            'Accept' => 'application/json',
        ],
        'multipart' => [
            [
                'name' => 'condition',
                'contents' => 'Good'
            ],
            [
                'name' => 'price',
                'contents' => '11613.31890586'
            ],
            [
                'name' => 'pictures[]',
                'contents' => fopen('/tmp/phpBLYYU1', 'r')
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/declutter/update/consequatur'
files = {
  'condition': (None, 'Good'),
  'price': (None, '11613.31890586'),
  'pictures[]': open('/tmp/phpBLYYU1', 'rb')}
payload = {
    "condition": "Good",
    "price": 11613.31890586000008624978363513946533203125
}
headers = {
  'Content-Type': 'multipart/form-data',
  'Accept': 'application/json'
}

response = requests.request('PUT', url, headers=headers, files=files)
response.json()

Request      

PUT api/v1/declutter/update/{id}

Headers

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the update. Example: consequatur

Body Parameters

name   string  optional  
category_id   string  optional  
estate_id   string  optional  
description   string  optional  
condition   string  optional  

Example: Good

Must be one of:
  • Good
  • Very-Good
  • Excellent
  • Brand-New
currency   string  optional  
price   number  optional  

Example: 11613.31890586

pictures   file[]  optional  

Must be a file. Must not be greater than 10048 kilobytes.

Declutter: Delete Item

Example request:
curl --request DELETE \
    "https://admin.smartgate.africa/api/v1/declutter/delete" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"id\": \"consequatur\"
}"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/declutter/delete"
);

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

let body = {
    "id": "consequatur"
};

fetch(url, {
    method: "DELETE",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/declutter/delete';
$response = $client->delete(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'id' => 'consequatur',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/declutter/delete'
payload = {
    "id": "consequatur"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Request      

DELETE api/v1/declutter/delete

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

id   string   

Example: consequatur

Resident: Job request lists.

Example request:
curl --request GET \
    --get "https://admin.smartgate.africa/api/v1/job/job-request-list" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/job/job-request-list"
);

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

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/job/job-request-list';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/job/job-request-list'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Example response (404):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "The route api/v1/job/job-request-list could not be found."
}
 

Request      

GET api/v1/job/job-request-list

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Job: Get Job By ID.

Example request:
curl --request GET \
    --get "https://admin.smartgate.africa/api/v1/job/get-job-by-id/consequatur" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/job/get-job-by-id/consequatur"
);

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

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/job/get-job-by-id/consequatur';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/job/get-job-by-id/consequatur'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Example response (404):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "The route api/v1/job/get-job-by-id/consequatur could not be found."
}
 

Request      

GET api/v1/job/get-job-by-id/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the get job by id. Example: consequatur

POST api/v1/job/mark-job-completed/{id}

Example request:
curl --request POST \
    "https://admin.smartgate.africa/api/v1/job/mark-job-completed/consequatur" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/job/mark-job-completed/consequatur"
);

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

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/job/mark-job-completed/consequatur';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/job/mark-job-completed/consequatur'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Request      

POST api/v1/job/mark-job-completed/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the mark job completed. Example: consequatur

Resident Admin: approve an Artisan.

Example request:
curl --request POST \
    "https://admin.smartgate.africa/api/v1/job/artisan-ra-approval" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"id\": \"consequatur\"
}"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/job/artisan-ra-approval"
);

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

let body = {
    "id": "consequatur"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/job/artisan-ra-approval';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'id' => 'consequatur',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/job/artisan-ra-approval'
payload = {
    "id": "consequatur"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Request      

POST api/v1/job/artisan-ra-approval

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

id   string   

Example: consequatur

comment   string  optional  
approval_type   string  optional  

Artisan Jobs.

Example request:
curl --request GET \
    --get "https://admin.smartgate.africa/api/v1/job/jobs" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/job/jobs"
);

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

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/job/jobs';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/job/jobs'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Example response (404):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "The route api/v1/job/jobs could not be found."
}
 

Request      

GET api/v1/job/jobs

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Artisan Job categories.

Example request:
curl --request GET \
    --get "https://admin.smartgate.africa/api/v1/job/categories" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/job/categories"
);

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

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/job/categories';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/job/categories'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Example response (404):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "The route api/v1/job/categories could not be found."
}
 

Request      

GET api/v1/job/categories

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Admin -> Artisan: Create or Update artisan Job.

Example request:
curl --request POST \
    "https://admin.smartgate.africa/api/v1/job/upsert-job" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"description\": \"consequatur\",
    \"category_id\": 17
}"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/job/upsert-job"
);

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

let body = {
    "description": "consequatur",
    "category_id": 17
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/job/upsert-job';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'description' => 'consequatur',
            'category_id' => 17,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/job/upsert-job'
payload = {
    "description": "consequatur",
    "category_id": 17
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Request      

POST api/v1/job/upsert-job

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

description   string   

Example: consequatur

category_id   integer  optional  

The id of an existing record in the job_categories table. Example: 17

Admin -> Artisan: Create or Update artisan Job category.

Example request:
curl --request POST \
    "https://admin.smartgate.africa/api/v1/job/upsert-job-category" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"description\": \"consequatur\"
}"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/job/upsert-job-category"
);

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

let body = {
    "description": "consequatur"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/job/upsert-job-category';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'description' => 'consequatur',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/job/upsert-job-category'
payload = {
    "description": "consequatur"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Request      

POST api/v1/job/upsert-job-category

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

description   string   

Example: consequatur

Admin -> Artisan: delete job.

Example request:
curl --request DELETE \
    "https://admin.smartgate.africa/api/v1/job/delete-job" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"job_id\": \"consequatur\"
}"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/job/delete-job"
);

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

let body = {
    "job_id": "consequatur"
};

fetch(url, {
    method: "DELETE",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/job/delete-job';
$response = $client->delete(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'job_id' => 'consequatur',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/job/delete-job'
payload = {
    "job_id": "consequatur"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Request      

DELETE api/v1/job/delete-job

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

job_id   string   

Example: consequatur

Admin -> Artisan: delete job category.

Example request:
curl --request DELETE \
    "https://admin.smartgate.africa/api/v1/job/delete-job-category" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"category_id\": \"consequatur\"
}"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/job/delete-job-category"
);

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

let body = {
    "category_id": "consequatur"
};

fetch(url, {
    method: "DELETE",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/job/delete-job-category';
$response = $client->delete(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'category_id' => 'consequatur',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/job/delete-job-category'
payload = {
    "category_id": "consequatur"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Request      

DELETE api/v1/job/delete-job-category

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

category_id   string   

Example: consequatur

Notice Board: Create a new notice

Example request:
curl --request POST \
    "https://admin.smartgate.africa/api/v1/notice-boards" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"information\": \"consequatur\",
    \"title\": \"consequatur\",
    \"estate_id\": 17,
    \"status\": \"important\"
}"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/notice-boards"
);

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

let body = {
    "information": "consequatur",
    "title": "consequatur",
    "estate_id": 17,
    "status": "important"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/notice-boards';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'information' => 'consequatur',
            'title' => 'consequatur',
            'estate_id' => 17,
            'status' => 'important',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/notice-boards'
payload = {
    "information": "consequatur",
    "title": "consequatur",
    "estate_id": 17,
    "status": "important"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Request      

POST api/v1/notice-boards

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

information   string   

Example: consequatur

title   string   

Example: consequatur

estate_id   integer   

The id of an existing record in the estates table. Example: 17

status   string   

Example: important

Must be one of:
  • active
  • important
  • inactive

Notice Board: Update a notice

Example request:
curl --request PUT \
    "https://admin.smartgate.africa/api/v1/notice-boards/consequatur" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"title\": \"consequatur\",
    \"information\": \"consequatur\",
    \"status\": \"consequatur\"
}"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/notice-boards/consequatur"
);

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

let body = {
    "title": "consequatur",
    "information": "consequatur",
    "status": "consequatur"
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/notice-boards/consequatur';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'title' => 'consequatur',
            'information' => 'consequatur',
            'status' => 'consequatur',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/notice-boards/consequatur'
payload = {
    "title": "consequatur",
    "information": "consequatur",
    "status": "consequatur"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Request      

PUT api/v1/notice-boards/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the notice board. Example: consequatur

Body Parameters

title   string   

Example: consequatur

information   string   

Example: consequatur

status   string   

'estate_id' => 'required|integer|exists:estates,id',. Example: consequatur

Notice Board: Delete a notice

Example request:
curl --request DELETE \
    "https://admin.smartgate.africa/api/v1/notice-boards/consequatur" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/notice-boards/consequatur"
);

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

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/notice-boards/consequatur';
$response = $client->delete(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/notice-boards/consequatur'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Request      

DELETE api/v1/notice-boards/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the notice board. Example: consequatur

Notice Board: Get list of all notices

Example request:
curl --request GET \
    --get "https://admin.smartgate.africa/api/v1/notice-boards/list" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"estate_id\": 11613.31890586000008624978363513946533203125,
    \"status\": \"inactive\"
}"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/notice-boards/list"
);

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

let body = {
    "estate_id": 11613.31890586000008624978363513946533203125,
    "status": "inactive"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/notice-boards/list';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'estate_id' => 11613.31890586000008624978363513946533203125,
            'status' => 'inactive',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/notice-boards/list'
payload = {
    "estate_id": 11613.31890586000008624978363513946533203125,
    "status": "inactive"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Example response (404):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "The route api/v1/notice-boards/list could not be found."
}
 

Request      

GET api/v1/notice-boards/list

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

estate_id   number   

The id of an existing record in the estates table. Example: 11613.31890586

status   string   

Example: inactive

Must be one of:
  • all
  • active
  • important
  • inactive

GET api/v1/activity-log

Example request:
curl --request GET \
    --get "https://admin.smartgate.africa/api/v1/activity-log" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"estate_id\": 11613.31890586000008624978363513946533203125
}"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/activity-log"
);

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

let body = {
    "estate_id": 11613.31890586000008624978363513946533203125
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/activity-log';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'estate_id' => 11613.31890586000008624978363513946533203125,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/activity-log'
payload = {
    "estate_id": 11613.31890586000008624978363513946533203125
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Example response (404):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "The route api/v1/activity-log could not be found."
}
 

Request      

GET api/v1/activity-log

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

estate_id   number  optional  

The id of an existing record in the estates table. Example: 11613.31890586

Key Spot: Create a new key spot category

Example request:
curl --request POST \
    "https://admin.smartgate.africa/api/v1/key-spot-categories" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"description\": \"Dolores dolorum amet iste laborum eius est dolor.\"
}"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/key-spot-categories"
);

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

let body = {
    "description": "Dolores dolorum amet iste laborum eius est dolor."
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/key-spot-categories';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'description' => 'Dolores dolorum amet iste laborum eius est dolor.',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/key-spot-categories'
payload = {
    "description": "Dolores dolorum amet iste laborum eius est dolor."
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Request      

POST api/v1/key-spot-categories

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

description   string   

Must not be greater than 255 characters. Example: Dolores dolorum amet iste laborum eius est dolor.

Key Spot: Update a key spot category

Example request:
curl --request PUT \
    "https://admin.smartgate.africa/api/v1/key-spot-categories/consequatur" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"description\": \"Dolores dolorum amet iste laborum eius est dolor.\"
}"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/key-spot-categories/consequatur"
);

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

let body = {
    "description": "Dolores dolorum amet iste laborum eius est dolor."
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/key-spot-categories/consequatur';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'description' => 'Dolores dolorum amet iste laborum eius est dolor.',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/key-spot-categories/consequatur'
payload = {
    "description": "Dolores dolorum amet iste laborum eius est dolor."
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Request      

PUT api/v1/key-spot-categories/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the key spot category. Example: consequatur

Body Parameters

description   string   

Must not be greater than 255 characters. Example: Dolores dolorum amet iste laborum eius est dolor.

Key Spot: Delete a key spot category

Example request:
curl --request DELETE \
    "https://admin.smartgate.africa/api/v1/key-spot-categories/consequatur" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/key-spot-categories/consequatur"
);

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

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/key-spot-categories/consequatur';
$response = $client->delete(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/key-spot-categories/consequatur'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Request      

DELETE api/v1/key-spot-categories/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the key spot category. Example: consequatur

Key Spot: Get list of all key spot categories

Example request:
curl --request GET \
    --get "https://admin.smartgate.africa/api/v1/key-spot-categories" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/key-spot-categories"
);

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

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/key-spot-categories';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/key-spot-categories'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Example response (404):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "The route api/v1/key-spot-categories could not be found."
}
 

Request      

GET api/v1/key-spot-categories

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Key Spot: Create a new key spot

Example request:
curl --request POST \
    "https://admin.smartgate.africa/api/v1/key-spots" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "name=consequatur"\
    --form "address=consequatur"\
    --form "description=Dolores dolorum amet iste laborum eius est dolor."\
    --form "opening_hours=consequatur"\
    --form "estate_id=17"\
    --form "latitude=consequatur"\
    --form "longitude=consequatur"\
    --form "category_id=17"\
    --form "images[]=@/tmp/phpdmCcNg" 
const url = new URL(
    "https://admin.smartgate.africa/api/v1/key-spots"
);

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

const body = new FormData();
body.append('name', 'consequatur');
body.append('address', 'consequatur');
body.append('description', 'Dolores dolorum amet iste laborum eius est dolor.');
body.append('opening_hours', 'consequatur');
body.append('estate_id', '17');
body.append('latitude', 'consequatur');
body.append('longitude', 'consequatur');
body.append('category_id', '17');
body.append('images[]', document.querySelector('input[name="images[]"]').files[0]);

fetch(url, {
    method: "POST",
    headers,
    body,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/key-spots';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'multipart/form-data',
            'Accept' => 'application/json',
        ],
        'multipart' => [
            [
                'name' => 'name',
                'contents' => 'consequatur'
            ],
            [
                'name' => 'address',
                'contents' => 'consequatur'
            ],
            [
                'name' => 'description',
                'contents' => 'Dolores dolorum amet iste laborum eius est dolor.'
            ],
            [
                'name' => 'opening_hours',
                'contents' => 'consequatur'
            ],
            [
                'name' => 'estate_id',
                'contents' => '17'
            ],
            [
                'name' => 'latitude',
                'contents' => 'consequatur'
            ],
            [
                'name' => 'longitude',
                'contents' => 'consequatur'
            ],
            [
                'name' => 'category_id',
                'contents' => '17'
            ],
            [
                'name' => 'images[]',
                'contents' => fopen('/tmp/phpdmCcNg', 'r')
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/key-spots'
files = {
  'name': (None, 'consequatur'),
  'address': (None, 'consequatur'),
  'description': (None, 'Dolores dolorum amet iste laborum eius est dolor.'),
  'opening_hours': (None, 'consequatur'),
  'estate_id': (None, '17'),
  'latitude': (None, 'consequatur'),
  'longitude': (None, 'consequatur'),
  'category_id': (None, '17'),
  'images[]': open('/tmp/phpdmCcNg', 'rb')}
payload = {
    "name": "consequatur",
    "address": "consequatur",
    "description": "Dolores dolorum amet iste laborum eius est dolor.",
    "opening_hours": "consequatur",
    "estate_id": 17,
    "latitude": "consequatur",
    "longitude": "consequatur",
    "category_id": 17
}
headers = {
  'Content-Type': 'multipart/form-data',
  'Accept': 'application/json'
}

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

Request      

POST api/v1/key-spots

Headers

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

Body Parameters

name   string   

Example: consequatur

address   string   

Example: consequatur

description   string   

Example: Dolores dolorum amet iste laborum eius est dolor.

opening_hours   string   

Example: consequatur

estate_id   integer   

The id of an existing record in the estates table. Example: 17

latitude   string  optional  

Example: consequatur

longitude   string  optional  

Example: consequatur

images   file[]  optional  

Must be a file. Must not be greater than 5048 kilobytes.

category_id   integer   

The id of an existing record in the key_spot_categories table. Example: 17

Key Spot: Update a key spot

Example request:
curl --request PUT \
    "https://admin.smartgate.africa/api/v1/key-spots/consequatur" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "id=17"\
    --form "name=consequatur"\
    --form "address=consequatur"\
    --form "description=Dolores dolorum amet iste laborum eius est dolor."\
    --form "opening_hours=consequatur"\
    --form "estate_id=17"\
    --form "latitude=consequatur"\
    --form "longitude=consequatur"\
    --form "category_id=17"\
    --form "images[]=@/tmp/phpAlQepR" 
const url = new URL(
    "https://admin.smartgate.africa/api/v1/key-spots/consequatur"
);

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

const body = new FormData();
body.append('id', '17');
body.append('name', 'consequatur');
body.append('address', 'consequatur');
body.append('description', 'Dolores dolorum amet iste laborum eius est dolor.');
body.append('opening_hours', 'consequatur');
body.append('estate_id', '17');
body.append('latitude', 'consequatur');
body.append('longitude', 'consequatur');
body.append('category_id', '17');
body.append('images[]', document.querySelector('input[name="images[]"]').files[0]);

fetch(url, {
    method: "PUT",
    headers,
    body,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/key-spots/consequatur';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Content-Type' => 'multipart/form-data',
            'Accept' => 'application/json',
        ],
        'multipart' => [
            [
                'name' => 'id',
                'contents' => '17'
            ],
            [
                'name' => 'name',
                'contents' => 'consequatur'
            ],
            [
                'name' => 'address',
                'contents' => 'consequatur'
            ],
            [
                'name' => 'description',
                'contents' => 'Dolores dolorum amet iste laborum eius est dolor.'
            ],
            [
                'name' => 'opening_hours',
                'contents' => 'consequatur'
            ],
            [
                'name' => 'estate_id',
                'contents' => '17'
            ],
            [
                'name' => 'latitude',
                'contents' => 'consequatur'
            ],
            [
                'name' => 'longitude',
                'contents' => 'consequatur'
            ],
            [
                'name' => 'category_id',
                'contents' => '17'
            ],
            [
                'name' => 'images[]',
                'contents' => fopen('/tmp/phpAlQepR', 'r')
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/key-spots/consequatur'
files = {
  'id': (None, '17'),
  'name': (None, 'consequatur'),
  'address': (None, 'consequatur'),
  'description': (None, 'Dolores dolorum amet iste laborum eius est dolor.'),
  'opening_hours': (None, 'consequatur'),
  'estate_id': (None, '17'),
  'latitude': (None, 'consequatur'),
  'longitude': (None, 'consequatur'),
  'category_id': (None, '17'),
  'images[]': open('/tmp/phpAlQepR', 'rb')}
payload = {
    "id": 17,
    "name": "consequatur",
    "address": "consequatur",
    "description": "Dolores dolorum amet iste laborum eius est dolor.",
    "opening_hours": "consequatur",
    "estate_id": 17,
    "latitude": "consequatur",
    "longitude": "consequatur",
    "category_id": 17
}
headers = {
  'Content-Type': 'multipart/form-data',
  'Accept': 'application/json'
}

response = requests.request('PUT', url, headers=headers, files=files)
response.json()

Request      

PUT api/v1/key-spots/{id}

Headers

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the key spot. Example: consequatur

Body Parameters

id   integer   

The id of an existing record in the key_spots table. Example: 17

name   string   

Example: consequatur

address   string   

Example: consequatur

description   string   

Example: Dolores dolorum amet iste laborum eius est dolor.

opening_hours   string   

Example: consequatur

estate_id   integer   

The id of an existing record in the estates table. Example: 17

latitude   string  optional  

Example: consequatur

longitude   string  optional  

Example: consequatur

images   file[]  optional  

Must be a file. Must not be greater than 5048 kilobytes.

category_id   integer   

The id of an existing record in the key_spot_categories table. Example: 17

Key Spot: Delete a key spot

Example request:
curl --request DELETE \
    "https://admin.smartgate.africa/api/v1/key-spots/consequatur" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/key-spots/consequatur"
);

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

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/key-spots/consequatur';
$response = $client->delete(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/key-spots/consequatur'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Request      

DELETE api/v1/key-spots/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the key spot. Example: consequatur

Key Spot: Get list of all key spots

Example request:
curl --request GET \
    --get "https://admin.smartgate.africa/api/v1/key-spots" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"estate_id\": 17,
    \"search_value\": \"consequatur\"
}"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/key-spots"
);

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

let body = {
    "estate_id": 17,
    "search_value": "consequatur"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/key-spots';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'estate_id' => 17,
            'search_value' => 'consequatur',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/key-spots'
payload = {
    "estate_id": 17,
    "search_value": "consequatur"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Example response (404):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "The route api/v1/key-spots could not be found."
}
 

Request      

GET api/v1/key-spots

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

estate_id   integer   

The id of an existing record in the estates table. Example: 17

search_value   string  optional  

Example: consequatur

category_id   string  optional  

Resident Alert: Create a new resident alert

Example request:
curl --request POST \
    "https://admin.smartgate.africa/api/v1/estate-alerts/create" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "description=Dolores dolorum amet iste laborum eius est dolor."\
    --form "type=17"\
    --form "directed_to=security"\
    --form "rank=consequatur"\
    --form "estate_id=17"\
    --form "attachment[]=@/tmp/phpkLb1rA" 
const url = new URL(
    "https://admin.smartgate.africa/api/v1/estate-alerts/create"
);

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

const body = new FormData();
body.append('description', 'Dolores dolorum amet iste laborum eius est dolor.');
body.append('type', '17');
body.append('directed_to', 'security');
body.append('rank', 'consequatur');
body.append('estate_id', '17');
body.append('attachment[]', document.querySelector('input[name="attachment[]"]').files[0]);

fetch(url, {
    method: "POST",
    headers,
    body,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/estate-alerts/create';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'multipart/form-data',
            'Accept' => 'application/json',
        ],
        'multipart' => [
            [
                'name' => 'description',
                'contents' => 'Dolores dolorum amet iste laborum eius est dolor.'
            ],
            [
                'name' => 'type',
                'contents' => '17'
            ],
            [
                'name' => 'directed_to',
                'contents' => 'security'
            ],
            [
                'name' => 'rank',
                'contents' => 'consequatur'
            ],
            [
                'name' => 'estate_id',
                'contents' => '17'
            ],
            [
                'name' => 'attachment[]',
                'contents' => fopen('/tmp/phpkLb1rA', 'r')
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/estate-alerts/create'
files = {
  'description': (None, 'Dolores dolorum amet iste laborum eius est dolor.'),
  'type': (None, '17'),
  'directed_to': (None, 'security'),
  'rank': (None, 'consequatur'),
  'estate_id': (None, '17'),
  'attachment[]': open('/tmp/phpkLb1rA', 'rb')}
payload = {
    "description": "Dolores dolorum amet iste laborum eius est dolor.",
    "type": 17,
    "directed_to": "security",
    "rank": "consequatur",
    "estate_id": 17
}
headers = {
  'Content-Type': 'multipart/form-data',
  'Accept': 'application/json'
}

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

Request      

POST api/v1/estate-alerts/create

Headers

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

Body Parameters

description   string   

Example: Dolores dolorum amet iste laborum eius est dolor.

type   integer   

The id of an existing record in the resident_alert_types table. Example: 17

directed_to   string   

Example: security

Must be one of:
  • security
  • estate_admin
rank   string   

estate_admin, security. Example: consequatur

attachment   file[]  optional  

Must be a file.

estate_id   integer   

The id of an existing record in the estates table. Example: 17

Resident Alert: Update a resident alert

Example request:
curl --request PUT \
    "https://admin.smartgate.africa/api/v1/estate-alerts/consequatur" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "message=consequatur"\
    --form "type=11613.31890586"\
    --form "status=broadcasted"\
    --form "estate_id=11613.31890586"\
    --form "attachment=@/tmp/phpmW8q7l" 
const url = new URL(
    "https://admin.smartgate.africa/api/v1/estate-alerts/consequatur"
);

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

const body = new FormData();
body.append('message', 'consequatur');
body.append('type', '11613.31890586');
body.append('status', 'broadcasted');
body.append('estate_id', '11613.31890586');
body.append('attachment', document.querySelector('input[name="attachment"]').files[0]);

fetch(url, {
    method: "PUT",
    headers,
    body,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/estate-alerts/consequatur';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Content-Type' => 'multipart/form-data',
            'Accept' => 'application/json',
        ],
        'multipart' => [
            [
                'name' => 'message',
                'contents' => 'consequatur'
            ],
            [
                'name' => 'type',
                'contents' => '11613.31890586'
            ],
            [
                'name' => 'status',
                'contents' => 'broadcasted'
            ],
            [
                'name' => 'estate_id',
                'contents' => '11613.31890586'
            ],
            [
                'name' => 'attachment',
                'contents' => fopen('/tmp/phpmW8q7l', 'r')
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/estate-alerts/consequatur'
files = {
  'message': (None, 'consequatur'),
  'type': (None, '11613.31890586'),
  'status': (None, 'broadcasted'),
  'estate_id': (None, '11613.31890586'),
  'attachment': open('/tmp/phpmW8q7l', 'rb')}
payload = {
    "message": "consequatur",
    "type": 11613.31890586000008624978363513946533203125,
    "status": "broadcasted",
    "estate_id": 11613.31890586000008624978363513946533203125
}
headers = {
  'Content-Type': 'multipart/form-data',
  'Accept': 'application/json'
}

response = requests.request('PUT', url, headers=headers, files=files)
response.json()

Request      

PUT api/v1/estate-alerts/{id}

Headers

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the estate alert. Example: consequatur

Body Parameters

message   string  optional  

Example: consequatur

attachment   file  optional  

Must be a file. Example: /tmp/phpmW8q7l

type   number  optional  

Now accepting files. The id of an existing record in the resident_alert_types table. Example: 11613.31890586

status   string  optional  

Example: broadcasted

Must be one of:
  • pending
  • resolved
  • broadcasted
resolution_note   string  optional  
estate_id   number  optional  

The id of an existing record in the estates table. Example: 11613.31890586

Resident Alert: View Resident Alert By Id

Example request:
curl --request GET \
    --get "https://admin.smartgate.africa/api/v1/estate-alerts/view-detail/consequatur" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/estate-alerts/view-detail/consequatur"
);

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

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/estate-alerts/view-detail/consequatur';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/estate-alerts/view-detail/consequatur'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Example response (404):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "The route api/v1/estate-alerts/view-detail/consequatur could not be found."
}
 

Request      

GET api/v1/estate-alerts/view-detail/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the view detail. Example: consequatur

Resident Alert: Delete a resident alert

Example request:
curl --request DELETE \
    "https://admin.smartgate.africa/api/v1/estate-alerts/consequatur" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/estate-alerts/consequatur"
);

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

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/estate-alerts/consequatur';
$response = $client->delete(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/estate-alerts/consequatur'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Request      

DELETE api/v1/estate-alerts/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the estate alert. Example: consequatur

GET api/v1/estate-alerts

Example request:
curl --request GET \
    --get "https://admin.smartgate.africa/api/v1/estate-alerts" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"estate_id\": 11613.31890586000008624978363513946533203125
}"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/estate-alerts"
);

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

let body = {
    "estate_id": 11613.31890586000008624978363513946533203125
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/estate-alerts';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'estate_id' => 11613.31890586000008624978363513946533203125,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/estate-alerts'
payload = {
    "estate_id": 11613.31890586000008624978363513946533203125
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Example response (404):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "The route api/v1/estate-alerts could not be found."
}
 

Request      

GET api/v1/estate-alerts

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

estate_id   number   

The id of an existing record in the estates table. Example: 11613.31890586

GET api/v1/estate-alerts/by-status

Example request:
curl --request GET \
    --get "https://admin.smartgate.africa/api/v1/estate-alerts/by-status" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/estate-alerts/by-status"
);

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

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/estate-alerts/by-status';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/estate-alerts/by-status'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Example response (404):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "The route api/v1/estate-alerts/by-status could not be found."
}
 

Request      

GET api/v1/estate-alerts/by-status

POST api/v1/estate-alerts/by-status

PUT api/v1/estate-alerts/by-status

PATCH api/v1/estate-alerts/by-status

DELETE api/v1/estate-alerts/by-status

OPTIONS api/v1/estate-alerts/by-status

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Resident Alert: Create a new resident alert type

Example request:
curl --request POST \
    "https://admin.smartgate.africa/api/v1/resident-alert-types" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"description\": \"Dolores dolorum amet iste laborum eius est dolor.\"
}"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/resident-alert-types"
);

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

let body = {
    "description": "Dolores dolorum amet iste laborum eius est dolor."
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/resident-alert-types';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'description' => 'Dolores dolorum amet iste laborum eius est dolor.',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/resident-alert-types'
payload = {
    "description": "Dolores dolorum amet iste laborum eius est dolor."
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Request      

POST api/v1/resident-alert-types

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

description   string   

Example: Dolores dolorum amet iste laborum eius est dolor.

Resident Alert: Update a resident alert type

Example request:
curl --request PUT \
    "https://admin.smartgate.africa/api/v1/resident-alert-types/consequatur" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
const url = new URL(
    "https://admin.smartgate.africa/api/v1/resident-alert-types/consequatur"
);

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

fetch(url, {
    method: "PUT",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/resident-alert-types/consequatur';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/resident-alert-types/consequatur'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Request      

PUT api/v1/resident-alert-types/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the resident alert type. Example: consequatur

Body Parameters

description   string  optional  

Resident Alert: Delete a resident alert type

Example request:
curl --request DELETE \
    "https://admin.smartgate.africa/api/v1/resident-alert-types/consequatur" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/resident-alert-types/consequatur"
);

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

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/resident-alert-types/consequatur';
$response = $client->delete(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/resident-alert-types/consequatur'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Request      

DELETE api/v1/resident-alert-types/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the resident alert type. Example: consequatur

Resident Alert type: Get all alert type

Example request:
curl --request GET \
    --get "https://admin.smartgate.africa/api/v1/resident-alert-types" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/resident-alert-types"
);

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

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/resident-alert-types';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/resident-alert-types'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Example response (404):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "The route api/v1/resident-alert-types could not be found."
}
 

Request      

GET api/v1/resident-alert-types

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Estate: Get LGA by state

Example request:
curl --request GET \
    --get "https://admin.smartgate.africa/api/v1/get_lga" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"id\": \"consequatur\"
}"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/get_lga"
);

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

let body = {
    "id": "consequatur"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/get_lga';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'id' => 'consequatur',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/get_lga'
payload = {
    "id": "consequatur"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Example response (404):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "The route api/v1/get_lga could not be found."
}
 

Request      

GET api/v1/get_lga

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

id   string   

Example: consequatur

Estate: Get All the state

Example request:
curl --request GET \
    --get "https://admin.smartgate.africa/api/v1/get-states" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/get-states"
);

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

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/get-states';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/get-states'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Example response (404):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "The route api/v1/get-states could not be found."
}
 

Request      

GET api/v1/get-states

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Estate: Get All the countries

Example request:
curl --request GET \
    --get "https://admin.smartgate.africa/api/v1/get-countries" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/get-countries"
);

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

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/get-countries';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/get-countries'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Example response (404):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "The route api/v1/get-countries could not be found."
}
 

Request      

GET api/v1/get-countries

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

logout user.

Example request:
curl --request POST \
    "https://admin.smartgate.africa/api/v1/logout" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/logout"
);

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

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/logout';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/logout'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Request      

POST api/v1/logout

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Client Request: Store Client Request

Example request:
curl --request POST \
    "https://admin.smartgate.africa/api/v1/client-requests/create" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"estate_name\": \"consequatur\",
    \"estate_location\": \"consequatur\",
    \"estate_size\": 17,
    \"estate_type\": \"Mixed\",
    \"contact_person_name\": \"consequatur\",
    \"contact_person_phonenumber\": \"mqeopfuudtdsu\",
    \"contact_person_email\": \"schultz.robyn@example.com\"
}"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/client-requests/create"
);

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

let body = {
    "estate_name": "consequatur",
    "estate_location": "consequatur",
    "estate_size": 17,
    "estate_type": "Mixed",
    "contact_person_name": "consequatur",
    "contact_person_phonenumber": "mqeopfuudtdsu",
    "contact_person_email": "schultz.robyn@example.com"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/client-requests/create';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'estate_name' => 'consequatur',
            'estate_location' => 'consequatur',
            'estate_size' => 17,
            'estate_type' => 'Mixed',
            'contact_person_name' => 'consequatur',
            'contact_person_phonenumber' => 'mqeopfuudtdsu',
            'contact_person_email' => 'schultz.robyn@example.com',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/client-requests/create'
payload = {
    "estate_name": "consequatur",
    "estate_location": "consequatur",
    "estate_size": 17,
    "estate_type": "Mixed",
    "contact_person_name": "consequatur",
    "contact_person_phonenumber": "mqeopfuudtdsu",
    "contact_person_email": "schultz.robyn@example.com"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Request      

POST api/v1/client-requests/create

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

estate_name   string   

Example: consequatur

estate_location   string   

Example: consequatur

estate_size   integer   

Example: 17

estate_type   string   

Example: Mixed

Must be one of:
  • Residential
  • Commercial
  • Mixed
contact_person_name   string   

Example: consequatur

contact_person_phonenumber   string   

Must not be greater than 15 characters. Example: mqeopfuudtdsu

contact_person_email   string   

Must be a valid email address. Example: schultz.robyn@example.com

GET api/v1/client-requests

Example request:
curl --request GET \
    --get "https://admin.smartgate.africa/api/v1/client-requests" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/client-requests"
);

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

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/client-requests';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/client-requests'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Example response (404):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "The route api/v1/client-requests could not be found."
}
 

Request      

GET api/v1/client-requests

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

GET api/v1/client-requests/{id}

Example request:
curl --request GET \
    --get "https://admin.smartgate.africa/api/v1/client-requests/consequatur" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/client-requests/consequatur"
);

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

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/client-requests/consequatur';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/client-requests/consequatur'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Example response (404):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "The route api/v1/client-requests/consequatur could not be found."
}
 

Request      

GET api/v1/client-requests/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the client request. Example: consequatur

PUT api/v1/client-requests/{id}

Example request:
curl --request PUT \
    "https://admin.smartgate.africa/api/v1/client-requests/consequatur" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/client-requests/consequatur"
);

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

fetch(url, {
    method: "PUT",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/client-requests/consequatur';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/client-requests/consequatur'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Request      

PUT api/v1/client-requests/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the client request. Example: consequatur

DELETE api/v1/client-requests/{id}

Example request:
curl --request DELETE \
    "https://admin.smartgate.africa/api/v1/client-requests/consequatur" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/client-requests/consequatur"
);

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

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/client-requests/consequatur';
$response = $client->delete(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/client-requests/consequatur'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Request      

DELETE api/v1/client-requests/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the client request. Example: consequatur

Client Request: Store Client Request

Example request:
curl --request POST \
    "https://admin.smartgate.africa/api/v1/contact-us/create" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"full_name\": \"consequatur\",
    \"email\": \"carolyne.luettgen@example.org\",
    \"subject\": \"consequatur\",
    \"message\": \"consequatur\"
}"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/contact-us/create"
);

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

let body = {
    "full_name": "consequatur",
    "email": "carolyne.luettgen@example.org",
    "subject": "consequatur",
    "message": "consequatur"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/contact-us/create';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'full_name' => 'consequatur',
            'email' => 'carolyne.luettgen@example.org',
            'subject' => 'consequatur',
            'message' => 'consequatur',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/contact-us/create'
payload = {
    "full_name": "consequatur",
    "email": "carolyne.luettgen@example.org",
    "subject": "consequatur",
    "message": "consequatur"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Request      

POST api/v1/contact-us/create

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

full_name   string   

Example: consequatur

email   string   

Must be a valid email address. Example: carolyne.luettgen@example.org

subject   string   

Example: consequatur

message   string   

Example: consequatur

GET api/v1/contact-us

Example request:
curl --request GET \
    --get "https://admin.smartgate.africa/api/v1/contact-us" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/contact-us"
);

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

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/contact-us';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/contact-us'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Example response (404):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "The route api/v1/contact-us could not be found."
}
 

Request      

GET api/v1/contact-us

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

GET api/v1/contact-us/{id}

Example request:
curl --request GET \
    --get "https://admin.smartgate.africa/api/v1/contact-us/consequatur" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/contact-us/consequatur"
);

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

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/contact-us/consequatur';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/contact-us/consequatur'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Example response (404):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "The route api/v1/contact-us/consequatur could not be found."
}
 

Request      

GET api/v1/contact-us/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the contact u. Example: consequatur

PUT api/v1/contact-us/{id}

Example request:
curl --request PUT \
    "https://admin.smartgate.africa/api/v1/contact-us/consequatur" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/contact-us/consequatur"
);

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

fetch(url, {
    method: "PUT",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/contact-us/consequatur';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/contact-us/consequatur'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Request      

PUT api/v1/contact-us/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the contact u. Example: consequatur

DELETE api/v1/contact-us/{id}

Example request:
curl --request DELETE \
    "https://admin.smartgate.africa/api/v1/contact-us/consequatur" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/contact-us/consequatur"
);

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

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/contact-us/consequatur';
$response = $client->delete(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/contact-us/consequatur'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Request      

DELETE api/v1/contact-us/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the contact u. Example: consequatur

Estate size: List all Estate size

Example request:
curl --request GET \
    --get "https://admin.smartgate.africa/api/v1/size/list" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/size/list"
);

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

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/size/list';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/size/list'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Example response (404):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "The route api/v1/size/list could not be found."
}
 

Request      

GET api/v1/size/list

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Send Reset Code

Example request:
curl --request POST \
    "https://admin.smartgate.africa/api/v1/auth/send-reset-code" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"email\": \"qkunze@example.com\"
}"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/auth/send-reset-code"
);

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

let body = {
    "email": "qkunze@example.com"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/auth/send-reset-code';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'email' => 'qkunze@example.com',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/auth/send-reset-code'
payload = {
    "email": "qkunze@example.com"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Request      

POST api/v1/auth/send-reset-code

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

email   string   

Must be a valid email address. The email of an existing record in the users table. Example: qkunze@example.com

Verify Reset Code

Example request:
curl --request POST \
    "https://admin.smartgate.africa/api/v1/auth/verify-reset-code" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"email\": \"qkunze@example.com\",
    \"code\": \"810798\"
}"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/auth/verify-reset-code"
);

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

let body = {
    "email": "qkunze@example.com",
    "code": "810798"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/auth/verify-reset-code';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'email' => 'qkunze@example.com',
            'code' => '810798',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/auth/verify-reset-code'
payload = {
    "email": "qkunze@example.com",
    "code": "810798"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Request      

POST api/v1/auth/verify-reset-code

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

email   string   

Must be a valid email address. Example: qkunze@example.com

code   string   

Must be 6 digits. Example: 810798

Reset Reset User Password

Example request:
curl --request POST \
    "https://admin.smartgate.africa/api/v1/auth/reset-password" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"email\": \"qkunze@example.com\",
    \"code\": \"810798\",
    \"password\": \"[2UZ5ij-e\\/dl4\"
}"
const url = new URL(
    "https://admin.smartgate.africa/api/v1/auth/reset-password"
);

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

let body = {
    "email": "qkunze@example.com",
    "code": "810798",
    "password": "[2UZ5ij-e\/dl4"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://admin.smartgate.africa/api/v1/auth/reset-password';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'email' => 'qkunze@example.com',
            'code' => '810798',
            'password' => '[2UZ5ij-e/dl4',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://admin.smartgate.africa/api/v1/auth/reset-password'
payload = {
    "email": "qkunze@example.com",
    "code": "810798",
    "password": "[2UZ5ij-e\/dl4"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

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

Request      

POST api/v1/auth/reset-password

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

email   string   

Must be a valid email address. Example: qkunze@example.com

code   string   

Must be 6 digits. Example: 810798

password   string   

Must be at least 6 characters. Example: [2UZ5ij-e/dl4