Get Onboarding by Company ID
curl --request GET \
--url https://api-staging.luladelivery.store/stores/company/{company_id}/onboardingimport requests
url = "https://api-staging.luladelivery.store/stores/company/{company_id}/onboarding"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api-staging.luladelivery.store/stores/company/{company_id}/onboarding', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api-staging.luladelivery.store/stores/company/{company_id}/onboarding",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api-staging.luladelivery.store/stores/company/{company_id}/onboarding"
req, _ := http.NewRequest("GET", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api-staging.luladelivery.store/stores/company/{company_id}/onboarding")
.asString();require 'uri'
require 'net/http'
url = URI("https://api-staging.luladelivery.store/stores/company/{company_id}/onboarding")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body{
"company_id": "<string>",
"total_stores": 123,
"onboarded_stores": 123,
"pending_onboarding": 123,
"stores": [
{
"store_id": "<string>",
"store_name": "<string>",
"onboarding_status": "<string>",
"created_at": "<string>",
"onboarded_at": "<string>",
"current_status": {
"is_operational": true,
"platforms_online": 123,
"platforms_total": 123,
"last_status_check": "<string>"
},
"platform_details": {
"UberEats": {
"is_active": true,
"status": "<string>",
"partner_store_id": "<string>",
"last_updated": "<string>"
},
"DoorDash": {},
"GrubHub": {}
}
}
]
}Onboarding
Get Onboarding by Company ID
This endpoint retrieves onboarding status information for all stores belonging to a specific company. This provides a company-wide view of store onboarding progress and operational status across all delivery platforms.
GET
/
stores
/
company
/
{company_id}
/
onboarding
Get Onboarding by Company ID
curl --request GET \
--url https://api-staging.luladelivery.store/stores/company/{company_id}/onboardingimport requests
url = "https://api-staging.luladelivery.store/stores/company/{company_id}/onboarding"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api-staging.luladelivery.store/stores/company/{company_id}/onboarding', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api-staging.luladelivery.store/stores/company/{company_id}/onboarding",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api-staging.luladelivery.store/stores/company/{company_id}/onboarding"
req, _ := http.NewRequest("GET", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api-staging.luladelivery.store/stores/company/{company_id}/onboarding")
.asString();require 'uri'
require 'net/http'
url = URI("https://api-staging.luladelivery.store/stores/company/{company_id}/onboarding")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body{
"company_id": "<string>",
"total_stores": 123,
"onboarded_stores": 123,
"pending_onboarding": 123,
"stores": [
{
"store_id": "<string>",
"store_name": "<string>",
"onboarding_status": "<string>",
"created_at": "<string>",
"onboarded_at": "<string>",
"current_status": {
"is_operational": true,
"platforms_online": 123,
"platforms_total": 123,
"last_status_check": "<string>"
},
"platform_details": {
"UberEats": {
"is_active": true,
"status": "<string>",
"partner_store_id": "<string>",
"last_updated": "<string>"
},
"DoorDash": {},
"GrubHub": {}
}
}
]
}This endpoint provides a comprehensive overview of onboarding status for all stores under a company. It’s useful for company-level monitoring and management of store operations across multiple locations.
Path Parameters
string
required
The unique identifier of the company to retrieve onboarding information for all its stores
Response
string
The company ID for which onboarding information was retrieved
number
Total number of stores belonging to this company
number
Number of stores that have completed onboarding
number
Number of stores with onboarding in progress or pending
array
Array of store onboarding information
Show Store Onboarding Object
Show Store Onboarding Object
string
Unique identifier for the store
string
Name of the store
string
Overall onboarding status for this store
Values: “completed”, “in_progress”, “pending”, “failed”
string
When the store was created
string
When onboarding was completed (null if not completed)
object
object
Detailed status for each delivery platform
Show Platform Details Object
Show Platform Details Object
object
object
DoorDash status information with similar structure
object
GrubHub status information with similar structure
Response Example
{
"company_id": "1000022",
"total_stores": 5,
"onboarded_stores": 3,
"pending_onboarding": 2,
"stores": [
{
"store_id": "7669f473-6c40-45ee-8737-43c667407b3a",
"store_name": "Lula Convenience Store - Main",
"onboarding_status": "completed",
"created_at": "2023-09-20T13:27:11.318Z",
"onboarded_at": "2023-09-20T14:15:22.456Z",
"current_status": {
"is_operational": true,
"platforms_online": 2,
"platforms_total": 3,
"last_status_check": "2024-11-15T03:46:34.000Z"
},
"platform_details": {
"UberEats": {
"is_active": true,
"status": "ONLINE",
"partner_store_id": "15be0357-9b4d-4f05-9a5a-9485b5f783e5",
"last_updated": "2024-11-15T03:30:00.000Z"
},
"DoorDash": {
"is_active": true,
"status": "ONLINE",
"partner_store_id": "b1015bdb-e831-42ef-b6f8-720fab19321f",
"last_updated": "2024-11-15T03:30:00.000Z"
},
"GrubHub": {
"is_active": false,
"status": "OFFLINE",
"partner_store_id": "1240569280",
"last_updated": "2024-11-15T02:15:00.000Z"
}
}
},
{
"store_id": "8669f473-6c40-45ee-8737-43c667407b3b",
"store_name": "Lula Convenience Store - Branch",
"onboarding_status": "in_progress",
"created_at": "2023-09-21T10:15:30.123Z",
"onboarded_at": null,
"current_status": {
"is_operational": false,
"platforms_online": 0,
"platforms_total": 3,
"last_status_check": "2024-11-15T03:46:34.000Z"
},
"platform_details": {
"UberEats": {
"is_active": false,
"status": "SETUP_PENDING",
"partner_store_id": null,
"last_updated": "2023-09-21T10:15:30.123Z"
},
"DoorDash": {
"is_active": false,
"status": "SETUP_PENDING",
"partner_store_id": null,
"last_updated": "2023-09-21T10:15:30.123Z"
},
"GrubHub": {
"is_active": false,
"status": "SETUP_PENDING",
"partner_store_id": null,
"last_updated": "2023-09-21T10:15:30.123Z"
}
}
}
]
}
Company-Level Insights
Understanding Company Onboarding Metrics
Understanding Company Onboarding Metrics
insight
Track overall onboarding completion rate across all company stores
Helps identify if onboarding processes are working efficiently
insight
Monitor how many stores are currently operational and accepting orders
Low operational rates may indicate systemic issues
insight
Identify which delivery platforms have the highest success rates
Focus troubleshooting efforts on problematic platforms
insight
Assess company readiness for opening additional store locations
High success rates indicate good operational processes
Use Cases
When to Use This Endpoint
When to Use This Endpoint
use-case
Provide company leadership with overview of store operations
Useful for board meetings and operational reviews
use-case
Monitor onboarding progress across all company locations
Identify stores that need additional support or attention
use-case
Analyze patterns in onboarding success and operational efficiency
Data can inform process improvements and training needs
use-case
Identify which stores need immediate attention or support
Failed or stuck onboarding processes should be prioritized
Filtering and Analysis
Data Analysis Tips
Data Analysis Tips
tip
Filter stores by onboarding_status to focus on specific groups
Common filters: “pending”, “in_progress”, “failed”
tip
Calculate success rates and average onboarding times
Track improvements over time to measure process efficiency
tip
Compare platform activation success rates across stores
Identify if certain platforms consistently cause issues
Data Freshness: Company-level onboarding data is updated in real-time as individual store statuses change, providing current operational insights.
Scalability: This endpoint efficiently handles companies with large numbers of stores, making it suitable for enterprise-level operations monitoring.

