diff --git a/package.json b/package.json index 965557bb..84e77655 100644 --- a/package.json +++ b/package.json @@ -9,7 +9,8 @@ "prebuild": "node scripts/generate-api-docs.mjs", "start": "next start", "lint": "next lint", - "test": "node --experimental-strip-types --test \"src/**/*.test.ts\"", + "test": "node --experimental-strip-types --test \"src/**/*.test.ts\" && node --test scripts/sdk-emitters.test.mjs", + "test:sdk-emitters": "node --test scripts/sdk-emitters.test.mjs", "postinstall": "fumadocs-mdx && node scripts/generate-api-docs.mjs", "content-agent:prepare": "node scripts/content-agent/prepare.mjs", "content-agent:generate-artifacts": "node scripts/content-agent/generate-artifacts.mjs", diff --git a/scripts/README.md b/scripts/README.md index b5797d31..18e92a39 100644 --- a/scripts/README.md +++ b/scripts/README.md @@ -195,6 +195,7 @@ Examples (`*.example.yaml` files under `.resources/`) are picked up automaticall Only for **new kinds** of behavior, not new instances: - New SDK with a new call signature → add a sample emitter to `sdk-emitters.mjs` +- PHP SDK endpoint mappings come from `php-sdk-examples.generated.json`, generated by `fleetbase/fleetbase-php`. Refresh that catalog when the SDK contract changes; ordinary CRUD examples remain intentionally concise while custom endpoints use the exact SDK method. - New rendering pattern (different layout for some endpoint type) → add a template variant in `generate-api-docs.mjs` - Postman invents a new YAML shape → adapt the parser in `loadRequests` / `loadExamples` diff --git a/scripts/api-docs.config.mjs b/scripts/api-docs.config.mjs index 4d94811c..12d5a21c 100644 --- a/scripts/api-docs.config.mjs +++ b/scripts/api-docs.config.mjs @@ -74,10 +74,14 @@ const storefrontStores = { }; /** - * Core API resources. Most are not yet wrapped by the public SDK; folders not - * in this map fall back to raw HTTP for JS/PHP samples. + * Core API resources exposed by the main Fleetbase SDK clients. JavaScript + * remains limited to its implemented stores; PHP mappings are enforced by the + * generated SDK example catalog. */ const coreStores = { + 'Chat Channels': 'chatChannels', + Comments: 'comments', + Files: 'files', Organizations: 'organizations', }; @@ -108,14 +112,18 @@ export const apis = { sidebarGroup: 'Core API', type: 'api', sdk: { - // Core resources currently fall back to raw HTTP — no first-class SDK - // wrappers for Files / Comments / Chat Channels yet. Organizations is - // mapped through the main `@fleetbase/sdk`. + // JavaScript currently maps organizations through the main SDK. PHP has + // first-class services for every Core collection listed below. js: { pkg: '@fleetbase/sdk', client: 'fleetbase', stores: coreStores, }, + php: { + pkg: 'fleetbase/fleetbase-php', + client: 'fleetbase', + stores: coreStores, + }, }, }, diff --git a/scripts/generate-api-docs.mjs b/scripts/generate-api-docs.mjs index 6962a4d1..79ae0317 100644 --- a/scripts/generate-api-docs.mjs +++ b/scripts/generate-api-docs.mjs @@ -87,12 +87,23 @@ const COLLECTIONS_DIR = process.env.POSTMAN_COLLECTIONS_DIR const OUT_BASE = path.join(ROOT, 'content/docs/api'); const NAV_OUT = path.join(ROOT, 'src/lib/api-nav.generated.ts'); +const PHP_SDK_EXAMPLES_PATH = path.join( + ROOT, + 'scripts/php-sdk-examples.generated.json', +); +let phpSdkExamples = {}; +const usedPhpSdkExampleIds = new Set(); // --------------------------------------------------------------------------- // Entry // --------------------------------------------------------------------------- async function main() { + const phpSdkCatalog = JSON.parse( + await fs.readFile(PHP_SDK_EXAMPLES_PATH, 'utf8'), + ); + phpSdkExamples = phpSdkCatalog.examples ?? {}; + if (!(await collectionsAvailable())) { console.warn( `\n⚠️ Postman collections not found at ${path.relative(ROOT, COLLECTIONS_DIR)}.\n` + @@ -138,6 +149,14 @@ async function main() { await writeNavConfig(navGroups); + const catalogIds = Object.keys(phpSdkExamples); + if (usedPhpSdkExampleIds.size !== catalogIds.length) { + const unused = catalogIds.filter((id) => !usedPhpSdkExampleIds.has(id)); + throw new Error( + `PHP SDK catalog coverage is ${usedPhpSdkExampleIds.size}/${catalogIds.length}; unused IDs: ${unused.join(', ')}`, + ); + } + console.log('\n✅ API docs generated.'); } @@ -272,6 +291,14 @@ async function buildEndpointSection( method: req.method, pathSegments, }); + const sdkExampleId = slugify(`${folder}-${resourceFolder}-${req.name}`); + const sdkExample = phpSdkExamples[sdkExampleId]; + if (sdkConfig?.php) { + if (!sdkExample) { + throw new Error(`No PHP SDK example is mapped for ${sdkExampleId}.`); + } + usedPhpSdkExampleIds.add(sdkExampleId); + } const rawSamples = { curl: emitCurl({ @@ -297,8 +324,11 @@ async function buildEndpointSection( queryParams: req.structuredQueryParams, endpointKind: kind, endpointAction: action, + endpointName: req.name, + rawUrl: req.url, resourceFolder, sdkConfig, + sdkExample, }), python: emitPython({ method: req.method, @@ -337,8 +367,11 @@ async function buildEndpointSection( queryParams: req.structuredQueryParams, endpointKind: kind, endpointAction: action, + endpointName: req.name, + rawUrl: req.url, resourceFolder, sdkConfig, + sdkExample, }), python: emitPython({ method: req.method, diff --git a/scripts/php-sdk-examples.generated.json b/scripts/php-sdk-examples.generated.json new file mode 100644 index 00000000..a810cb08 --- /dev/null +++ b/scripts/php-sdk-examples.generated.json @@ -0,0 +1,2247 @@ +{ + "schema_version": 1, + "generated_from": { + "repository": "https://github.com/fleetbase/postman", + "ref": "9a7d4d898b4e74d735d93c78d67d4d5013c1a28b", + "collections": [ + "Fleetbase API", + "Fleetbase Core API" + ] + }, + "package": "fleetbase/fleetbase-php", + "examples": { + "fleetbase-api-contacts-create-a-contact": { + "collection": "Fleetbase API", + "group": "Contacts", + "name": "Create a Contact", + "implementation": "Fleetbase\\Sdk\\Services\\ContactService::createContact", + "variables": [], + "call": "$result = $fleetbase->contacts->createContact(\n [\n 'name' => 'John Doe',\n 'type' => 'customer',\n 'title' => 'Mr',\n 'email' => 'john@exampleco.com',\n 'phone' => '+1 563-920-4264',\n ]\n);", + "code": "contacts->createContact(\n [\n 'name' => 'John Doe',\n 'type' => 'customer',\n 'title' => 'Mr',\n 'email' => 'john@exampleco.com',\n 'phone' => '+1 563-920-4264',\n ]\n);" + }, + "fleetbase-api-contacts-delete-a-contact": { + "collection": "Fleetbase API", + "group": "Contacts", + "name": "Delete a Contact", + "implementation": "Fleetbase\\Sdk\\Services\\ContactService::deleteContact", + "variables": { + "contactId": "contact_id-fixture" + }, + "call": "$result = $fleetbase->contacts->deleteContact($contactId);", + "code": "contacts->deleteContact($contactId);" + }, + "fleetbase-api-contacts-query-contacts": { + "collection": "Fleetbase API", + "group": "Contacts", + "name": "Query Contacts", + "implementation": "Fleetbase\\Sdk\\Services\\ContactService::queryContacts", + "variables": [], + "call": "$result = $fleetbase->contacts->queryContacts(\n [\n 'query' => 'contact_name-fixture',\n 'limit' => '25',\n 'offset' => '0',\n 'sort' => 'created_at',\n ]\n);", + "code": "contacts->queryContacts(\n [\n 'query' => 'contact_name-fixture',\n 'limit' => '25',\n 'offset' => '0',\n 'sort' => 'created_at',\n ]\n);" + }, + "fleetbase-api-contacts-retrieve-a-contact": { + "collection": "Fleetbase API", + "group": "Contacts", + "name": "Retrieve a Contact", + "implementation": "Fleetbase\\Sdk\\Services\\ContactService::retrieveContact", + "variables": { + "contactId": "contact_id-fixture" + }, + "call": "$result = $fleetbase->contacts->retrieveContact($contactId);", + "code": "contacts->retrieveContact($contactId);" + }, + "fleetbase-api-contacts-update-a-contact": { + "collection": "Fleetbase API", + "group": "Contacts", + "name": "Update a Contact", + "implementation": "Fleetbase\\Sdk\\Services\\ContactService::updateContact", + "variables": { + "contactId": "contact_id-fixture" + }, + "call": "$result = $fleetbase->contacts->updateContact(\n $contactId,\n [\n 'name' => 'John Doe',\n 'title' => 'Mr',\n 'email' => 'john@exampleco.com',\n 'phone' => '563-920-4264',\n 'meta' => [\n 'external_ref' => 'john-doe',\n ],\n ]\n);", + "code": "contacts->updateContact(\n $contactId,\n [\n 'name' => 'John Doe',\n 'title' => 'Mr',\n 'email' => 'john@exampleco.com',\n 'phone' => '563-920-4264',\n 'meta' => [\n 'external_ref' => 'john-doe',\n ],\n ]\n);" + }, + "fleetbase-api-customers-create-a-customer": { + "collection": "Fleetbase API", + "group": "Customers", + "name": "Create a Customer", + "implementation": "Fleetbase\\Sdk\\Services\\CustomerService::createCustomer", + "variables": [], + "call": "$result = $fleetbase->customers->createCustomer(\n [\n 'identity' => 'customer_identity-fixture',\n 'code' => 'verification_code-fixture',\n 'name' => 'Jane Customer',\n 'password' => 'customer_password-fixture',\n 'phone' => 'randomPhoneNumber-fixture',\n 'place' => [\n 'name' => 'Home',\n 'street1' => '123 Main Street',\n 'city' => 'Kingston',\n 'province' => 'Kingston',\n 'postal_code' => '00000',\n 'country' => 'JM',\n ],\n ]\n);", + "code": "customers->createCustomer(\n [\n 'identity' => 'customer_identity-fixture',\n 'code' => 'verification_code-fixture',\n 'name' => 'Jane Customer',\n 'password' => 'customer_password-fixture',\n 'phone' => 'randomPhoneNumber-fixture',\n 'place' => [\n 'name' => 'Home',\n 'street1' => '123 Main Street',\n 'city' => 'Kingston',\n 'province' => 'Kingston',\n 'postal_code' => '00000',\n 'country' => 'JM',\n ],\n ]\n);" + }, + "fleetbase-api-customers-create-a-customer-order": { + "collection": "Fleetbase API", + "group": "Customers", + "name": "Create a Customer Order", + "implementation": "Fleetbase\\Sdk\\Services\\CustomerService::createCustomerOrder", + "variables": [], + "call": "$result = $fleetbase->customers->createCustomerOrder(\n [\n 'type' => 'transport',\n 'scheduled_at' => '2026-05-25T10:00:00Z',\n 'notes' => 'Handle with care.',\n 'pickup' => [\n 'name' => 'Pickup',\n 'street1' => '4169 N State RD 7',\n 'city' => 'Lauderdale Lakes',\n 'province' => 'FL',\n 'postal_code' => '33319',\n 'country' => 'US',\n ],\n 'dropoff' => [\n 'name' => 'Dropoff',\n 'city' => 'Kingston',\n 'country' => 'JM',\n ],\n 'entities' => [\n [\n 'name' => 'Wireless Headphones',\n 'description' => 'Electronics',\n 'weight' => 2.5,\n 'weight_unit' => 'lb',\n 'declared_value' => 150,\n 'currency' => 'USD',\n ],\n ],\n ]\n);", + "code": "customers->createCustomerOrder(\n [\n 'type' => 'transport',\n 'scheduled_at' => '2026-05-25T10:00:00Z',\n 'notes' => 'Handle with care.',\n 'pickup' => [\n 'name' => 'Pickup',\n 'street1' => '4169 N State RD 7',\n 'city' => 'Lauderdale Lakes',\n 'province' => 'FL',\n 'postal_code' => '33319',\n 'country' => 'US',\n ],\n 'dropoff' => [\n 'name' => 'Dropoff',\n 'city' => 'Kingston',\n 'country' => 'JM',\n ],\n 'entities' => [\n [\n 'name' => 'Wireless Headphones',\n 'description' => 'Electronics',\n 'weight' => 2.5,\n 'weight_unit' => 'lb',\n 'declared_value' => 150,\n 'currency' => 'USD',\n ],\n ],\n ]\n);" + }, + "fleetbase-api-customers-forgot-customer-password": { + "collection": "Fleetbase API", + "group": "Customers", + "name": "Forgot Customer Password", + "implementation": "Fleetbase\\Sdk\\Services\\CustomerService::forgotCustomerPassword", + "variables": [], + "call": "$result = $fleetbase->customers->forgotCustomerPassword(\n [\n 'identity' => 'customer_identity-fixture',\n ]\n);", + "code": "customers->forgotCustomerPassword(\n [\n 'identity' => 'customer_identity-fixture',\n ]\n);" + }, + "fleetbase-api-customers-list-customer-orders": { + "collection": "Fleetbase API", + "group": "Customers", + "name": "List Customer Orders", + "implementation": "Fleetbase\\Sdk\\Services\\CustomerService::listCustomerOrders", + "variables": [], + "call": "$result = $fleetbase->customers->listCustomerOrders();", + "code": "customers->listCustomerOrders();" + }, + "fleetbase-api-customers-list-customer-places": { + "collection": "Fleetbase API", + "group": "Customers", + "name": "List Customer Places", + "implementation": "Fleetbase\\Sdk\\Services\\CustomerService::listCustomerPlaces", + "variables": [], + "call": "$result = $fleetbase->customers->listCustomerPlaces();", + "code": "customers->listCustomerPlaces();" + }, + "fleetbase-api-customers-login-customer": { + "collection": "Fleetbase API", + "group": "Customers", + "name": "Login Customer", + "implementation": "Fleetbase\\Sdk\\Services\\CustomerService::loginCustomer", + "variables": [], + "call": "$result = $fleetbase->customers->loginCustomer(\n [\n 'identity' => 'customer_identity-fixture',\n 'password' => 'customer_password-fixture',\n ]\n);", + "code": "customers->loginCustomer(\n [\n 'identity' => 'customer_identity-fixture',\n 'password' => 'customer_password-fixture',\n ]\n);" + }, + "fleetbase-api-customers-logout-all-customer-sessions": { + "collection": "Fleetbase API", + "group": "Customers", + "name": "Logout All Customer Sessions", + "implementation": "Fleetbase\\Sdk\\Services\\CustomerService::logoutAllCustomerSessions", + "variables": [], + "call": "$result = $fleetbase->customers->logoutAllCustomerSessions();", + "code": "customers->logoutAllCustomerSessions();" + }, + "fleetbase-api-customers-logout-customer": { + "collection": "Fleetbase API", + "group": "Customers", + "name": "Logout Customer", + "implementation": "Fleetbase\\Sdk\\Services\\CustomerService::logoutCustomer", + "variables": [], + "call": "$result = $fleetbase->customers->logoutCustomer();", + "code": "customers->logoutCustomer();" + }, + "fleetbase-api-customers-register-customer-device": { + "collection": "Fleetbase API", + "group": "Customers", + "name": "Register Customer Device", + "implementation": "Fleetbase\\Sdk\\Services\\CustomerService::registerCustomerDevice", + "variables": [], + "call": "$result = $fleetbase->customers->registerCustomerDevice(\n [\n 'token' => 'push_token-fixture',\n 'platform' => 'ios',\n ]\n);", + "code": "customers->registerCustomerDevice(\n [\n 'token' => 'push_token-fixture',\n 'platform' => 'ios',\n ]\n);" + }, + "fleetbase-api-customers-request-customer-creation-code": { + "collection": "Fleetbase API", + "group": "Customers", + "name": "Request Customer Creation Code", + "implementation": "Fleetbase\\Sdk\\Services\\CustomerService::requestCustomerCreationCode", + "variables": [], + "call": "$result = $fleetbase->customers->requestCustomerCreationCode(\n [\n 'identity' => 'customer_identity-fixture',\n 'mode' => 'email',\n 'name' => 'customer_name-fixture',\n 'phone' => 'customer_phone-fixture',\n ]\n);", + "code": "customers->requestCustomerCreationCode(\n [\n 'identity' => 'customer_identity-fixture',\n 'mode' => 'email',\n 'name' => 'customer_name-fixture',\n 'phone' => 'customer_phone-fixture',\n ]\n);" + }, + "fleetbase-api-customers-request-customer-login-sms": { + "collection": "Fleetbase API", + "group": "Customers", + "name": "Request Customer Login SMS", + "implementation": "Fleetbase\\Sdk\\Services\\CustomerService::requestCustomerLoginSms", + "variables": [], + "call": "$result = $fleetbase->customers->requestCustomerLoginSms(\n [\n 'phone' => 'customer_phone-fixture',\n ]\n);", + "code": "customers->requestCustomerLoginSms(\n [\n 'phone' => 'customer_phone-fixture',\n ]\n);" + }, + "fleetbase-api-customers-reset-customer-password": { + "collection": "Fleetbase API", + "group": "Customers", + "name": "Reset Customer Password", + "implementation": "Fleetbase\\Sdk\\Services\\CustomerService::resetCustomerPassword", + "variables": [], + "call": "$result = $fleetbase->customers->resetCustomerPassword(\n [\n 'identity' => 'customer_identity-fixture',\n 'code' => 'verification_code-fixture',\n 'password' => 'customer_password-fixture',\n ]\n);", + "code": "customers->resetCustomerPassword(\n [\n 'identity' => 'customer_identity-fixture',\n 'code' => 'verification_code-fixture',\n 'password' => 'customer_password-fixture',\n ]\n);" + }, + "fleetbase-api-customers-retrieve-authenticated-customer": { + "collection": "Fleetbase API", + "group": "Customers", + "name": "Retrieve Authenticated Customer", + "implementation": "Fleetbase\\Sdk\\Services\\CustomerService::retrieveAuthenticatedCustomer", + "variables": [], + "call": "$result = $fleetbase->customers->retrieveAuthenticatedCustomer();", + "code": "customers->retrieveAuthenticatedCustomer();" + }, + "fleetbase-api-customers-retrieve-a-customer-order": { + "collection": "Fleetbase API", + "group": "Customers", + "name": "Retrieve a Customer Order", + "implementation": "Fleetbase\\Sdk\\Services\\CustomerService::retrieveCustomerOrder", + "variables": { + "customerOrderId": "customer_order_id-fixture" + }, + "call": "$result = $fleetbase->customers->retrieveCustomerOrder($customerOrderId);", + "code": "customers->retrieveCustomerOrder($customerOrderId);" + }, + "fleetbase-api-customers-update-authenticated-customer": { + "collection": "Fleetbase API", + "group": "Customers", + "name": "Update Authenticated Customer", + "implementation": "Fleetbase\\Sdk\\Services\\CustomerService::updateAuthenticatedCustomer", + "variables": [], + "call": "$result = $fleetbase->customers->updateAuthenticatedCustomer(\n [\n 'name' => 'customer_name-fixture',\n 'phone' => 'customer_phone-fixture',\n 'email' => 'customer_email-fixture',\n ]\n);", + "code": "customers->updateAuthenticatedCustomer(\n [\n 'name' => 'customer_name-fixture',\n 'phone' => 'customer_phone-fixture',\n 'email' => 'customer_email-fixture',\n ]\n);" + }, + "fleetbase-api-customers-verify-customer-login-code": { + "collection": "Fleetbase API", + "group": "Customers", + "name": "Verify Customer Login Code", + "implementation": "Fleetbase\\Sdk\\Services\\CustomerService::verifyCustomerLoginCode", + "variables": [], + "call": "$result = $fleetbase->customers->verifyCustomerLoginCode(\n [\n 'identity' => 'customer_identity-fixture',\n 'code' => 'verification_code-fixture',\n 'for' => 'fleetops_customer_login',\n ]\n);", + "code": "customers->verifyCustomerLoginCode(\n [\n 'identity' => 'customer_identity-fixture',\n 'code' => 'verification_code-fixture',\n 'for' => 'fleetops_customer_login',\n ]\n);" + }, + "fleetbase-api-devices-attach-device": { + "collection": "Fleetbase API", + "group": "Devices", + "name": "Attach Device", + "implementation": "Fleetbase\\Sdk\\Services\\DeviceService::attachDevice", + "variables": { + "deviceId": "device_id-fixture" + }, + "call": "$result = $fleetbase->devices->attachDevice(\n $deviceId,\n [\n 'vehicle' => 'vehicle_id-fixture',\n ]\n);", + "code": "devices->attachDevice(\n $deviceId,\n [\n 'vehicle' => 'vehicle_id-fixture',\n ]\n);" + }, + "fleetbase-api-devices-create-a-device": { + "collection": "Fleetbase API", + "group": "Devices", + "name": "Create a Device", + "implementation": "Fleetbase\\Sdk\\Services\\DeviceService::createDevice", + "variables": [], + "call": "$result = $fleetbase->devices->createDevice(\n [\n 'name' => 'OBD Tracker 12',\n 'type' => 'obd',\n 'device_id' => 'OBD-12',\n 'serial_number' => 'SN-10001',\n 'status' => 'active',\n ]\n);", + "code": "devices->createDevice(\n [\n 'name' => 'OBD Tracker 12',\n 'type' => 'obd',\n 'device_id' => 'OBD-12',\n 'serial_number' => 'SN-10001',\n 'status' => 'active',\n ]\n);" + }, + "fleetbase-api-devices-delete-a-device": { + "collection": "Fleetbase API", + "group": "Devices", + "name": "Delete a Device", + "implementation": "Fleetbase\\Sdk\\Services\\DeviceService::deleteDevice", + "variables": { + "deviceId": "device_id-fixture" + }, + "call": "$result = $fleetbase->devices->deleteDevice($deviceId);", + "code": "devices->deleteDevice($deviceId);" + }, + "fleetbase-api-devices-detach-device": { + "collection": "Fleetbase API", + "group": "Devices", + "name": "Detach Device", + "implementation": "Fleetbase\\Sdk\\Services\\DeviceService::detachDevice", + "variables": { + "deviceId": "device_id-fixture" + }, + "call": "$result = $fleetbase->devices->detachDevice($deviceId);", + "code": "devices->detachDevice($deviceId);" + }, + "fleetbase-api-devices-query-devices": { + "collection": "Fleetbase API", + "group": "Devices", + "name": "Query Devices", + "implementation": "Fleetbase\\Sdk\\Services\\DeviceService::queryDevices", + "variables": [], + "call": "$result = $fleetbase->devices->queryDevices();", + "code": "devices->queryDevices();" + }, + "fleetbase-api-devices-retrieve-a-device": { + "collection": "Fleetbase API", + "group": "Devices", + "name": "Retrieve a Device", + "implementation": "Fleetbase\\Sdk\\Services\\DeviceService::retrieveDevice", + "variables": { + "deviceId": "device_id-fixture" + }, + "call": "$result = $fleetbase->devices->retrieveDevice($deviceId);", + "code": "devices->retrieveDevice($deviceId);" + }, + "fleetbase-api-devices-update-a-device": { + "collection": "Fleetbase API", + "group": "Devices", + "name": "Update a Device", + "implementation": "Fleetbase\\Sdk\\Services\\DeviceService::updateDevice", + "variables": { + "deviceId": "device_id-fixture" + }, + "call": "$result = $fleetbase->devices->updateDevice(\n $deviceId,\n [\n 'status' => 'maintenance',\n ]\n);", + "code": "devices->updateDevice(\n $deviceId,\n [\n 'status' => 'maintenance',\n ]\n);" + }, + "fleetbase-api-drivers-change-driver-password": { + "collection": "Fleetbase API", + "group": "Drivers", + "name": "Change Driver Password", + "implementation": "Fleetbase\\Sdk\\Services\\DriverService::changeDriverPassword", + "variables": { + "driverId": "driver_id-fixture" + }, + "call": "$result = $fleetbase->drivers->changeDriverPassword(\n $driverId,\n [\n 'current_password' => 'created_driver_password-fixture',\n 'password' => 'driver_new_password-fixture',\n 'password_confirmation' => 'driver_new_password-fixture',\n 'device_name' => 'navigator',\n ]\n);", + "code": "drivers->changeDriverPassword(\n $driverId,\n [\n 'current_password' => 'created_driver_password-fixture',\n 'password' => 'driver_new_password-fixture',\n 'password_confirmation' => 'driver_new_password-fixture',\n 'device_name' => 'navigator',\n ]\n);" + }, + "fleetbase-api-drivers-create-a-driver": { + "collection": "Fleetbase API", + "group": "Drivers", + "name": "Create a Driver", + "implementation": "Fleetbase\\Sdk\\Services\\DriverService::createDriver", + "variables": [], + "call": "$result = $fleetbase->drivers->createDriver(\n [\n 'name' => 'John Doe',\n 'email' => 'randomEmail-fixture',\n 'phone' => 'randomPhoneNumber-fixture',\n 'password' => 'driver_seed_password-fixture',\n ]\n);", + "code": "drivers->createDriver(\n [\n 'name' => 'John Doe',\n 'email' => 'randomEmail-fixture',\n 'phone' => 'randomPhoneNumber-fixture',\n 'password' => 'driver_seed_password-fixture',\n ]\n);" + }, + "fleetbase-api-drivers-delete-a-driver": { + "collection": "Fleetbase API", + "group": "Drivers", + "name": "Delete a Driver", + "implementation": "Fleetbase\\Sdk\\Services\\DriverService::deleteDriver", + "variables": { + "driverId": "driver_id-fixture" + }, + "call": "$result = $fleetbase->drivers->deleteDriver($driverId);", + "code": "drivers->deleteDriver($driverId);" + }, + "fleetbase-api-drivers-get-driver-current-organization": { + "collection": "Fleetbase API", + "group": "Drivers", + "name": "Get Driver Current Organization", + "implementation": "Fleetbase\\Sdk\\Services\\DriverService::getDriverCurrentOrganization", + "variables": { + "driverId": "driver_id-fixture" + }, + "call": "$result = $fleetbase->drivers->getDriverCurrentOrganization($driverId);", + "code": "drivers->getDriverCurrentOrganization($driverId);" + }, + "fleetbase-api-drivers-list-driver-manifests": { + "collection": "Fleetbase API", + "group": "Drivers", + "name": "List Driver Manifests", + "implementation": "Fleetbase\\Sdk\\Services\\DriverService::listDriverManifests", + "variables": { + "driverId": "driver_id-fixture" + }, + "call": "$result = $fleetbase->drivers->listDriverManifests($driverId);", + "code": "drivers->listDriverManifests($driverId);" + }, + "fleetbase-api-drivers-list-driver-organizations": { + "collection": "Fleetbase API", + "group": "Drivers", + "name": "List Driver Organizations", + "implementation": "Fleetbase\\Sdk\\Services\\DriverService::listDriverOrganizations", + "variables": { + "driverId": "driver_id-fixture" + }, + "call": "$result = $fleetbase->drivers->listDriverOrganizations($driverId);", + "code": "drivers->listDriverOrganizations($driverId);" + }, + "fleetbase-api-drivers-login-driver": { + "collection": "Fleetbase API", + "group": "Drivers", + "name": "Login Driver", + "implementation": "Fleetbase\\Sdk\\Services\\DriverService::loginDriver", + "variables": [], + "call": "$result = $fleetbase->drivers->loginDriver(\n [\n 'identity' => 'driver_identity-fixture',\n 'password' => 'driver_password-fixture',\n ]\n);", + "code": "drivers->loginDriver(\n [\n 'identity' => 'driver_identity-fixture',\n 'password' => 'driver_password-fixture',\n ]\n);" + }, + "fleetbase-api-drivers-query-drivers": { + "collection": "Fleetbase API", + "group": "Drivers", + "name": "Query Drivers", + "implementation": "Fleetbase\\Sdk\\Services\\DriverService::queryDrivers", + "variables": [], + "call": "$result = $fleetbase->drivers->queryDrivers(\n [\n 'id' => 'driver_id-fixture',\n ]\n);", + "code": "drivers->queryDrivers(\n [\n 'id' => 'driver_id-fixture',\n ]\n);" + }, + "fleetbase-api-drivers-register-device": { + "collection": "Fleetbase API", + "group": "Drivers", + "name": "Register Device", + "implementation": "Fleetbase\\Sdk\\Services\\DriverService::registerDevice", + "variables": [], + "call": "$result = $fleetbase->drivers->registerDevice(\n [\n 'token' => 'device_token-fixture',\n 'platform' => 'ios',\n ]\n);", + "code": "drivers->registerDevice(\n [\n 'token' => 'device_token-fixture',\n 'platform' => 'ios',\n ]\n);" + }, + "fleetbase-api-drivers-register-driver-device": { + "collection": "Fleetbase API", + "group": "Drivers", + "name": "Register Driver Device", + "implementation": "Fleetbase\\Sdk\\Services\\DriverService::registerDriverDevice", + "variables": { + "driverId": "driver_id-fixture" + }, + "call": "$result = $fleetbase->drivers->registerDriverDevice(\n $driverId,\n [\n 'token' => 'device_token-fixture',\n 'platform' => 'ios',\n ]\n);", + "code": "drivers->registerDriverDevice(\n $driverId,\n [\n 'token' => 'device_token-fixture',\n 'platform' => 'ios',\n ]\n);" + }, + "fleetbase-api-drivers-request-driver-login-sms": { + "collection": "Fleetbase API", + "group": "Drivers", + "name": "Request Driver Login SMS", + "implementation": "Fleetbase\\Sdk\\Services\\DriverService::requestDriverLoginSms", + "variables": [], + "call": "$result = $fleetbase->drivers->requestDriverLoginSms(\n [\n 'phone' => 'driver_phone-fixture',\n ]\n);", + "code": "drivers->requestDriverLoginSms(\n [\n 'phone' => 'driver_phone-fixture',\n ]\n);" + }, + "fleetbase-api-drivers-request-driver-password-reset": { + "collection": "Fleetbase API", + "group": "Drivers", + "name": "Request Driver Password Reset", + "implementation": "Fleetbase\\Sdk\\Services\\DriverService::requestDriverPasswordReset", + "variables": [], + "call": "$result = $fleetbase->drivers->requestDriverPasswordReset(\n [\n 'identity' => 'driver_reset_identity-fixture',\n ]\n);", + "code": "drivers->requestDriverPasswordReset(\n [\n 'identity' => 'driver_reset_identity-fixture',\n ]\n);" + }, + "fleetbase-api-drivers-reset-driver-password": { + "collection": "Fleetbase API", + "group": "Drivers", + "name": "Reset Driver Password", + "implementation": "Fleetbase\\Sdk\\Services\\DriverService::resetDriverPassword", + "variables": [], + "call": "$result = $fleetbase->drivers->resetDriverPassword(\n [\n 'identity' => 'driver_identity-fixture',\n 'code' => 'driver_password_reset_code-fixture',\n 'password' => 'driver_password-fixture',\n ]\n);", + "code": "drivers->resetDriverPassword(\n [\n 'identity' => 'driver_identity-fixture',\n 'code' => 'driver_password_reset_code-fixture',\n 'password' => 'driver_password-fixture',\n ]\n);" + }, + "fleetbase-api-drivers-retrieve-a-driver": { + "collection": "Fleetbase API", + "group": "Drivers", + "name": "Retrieve a Driver", + "implementation": "Fleetbase\\Sdk\\Services\\DriverService::retrieveDriver", + "variables": { + "driverId": "driver_id-fixture" + }, + "call": "$result = $fleetbase->drivers->retrieveDriver($driverId);", + "code": "drivers->retrieveDriver($driverId);" + }, + "fleetbase-api-drivers-simulate-driver-route": { + "collection": "Fleetbase API", + "group": "Drivers", + "name": "Simulate Driver Route", + "implementation": "Fleetbase\\Sdk\\Services\\DriverService::simulateDriverRoute", + "variables": { + "driverId": "driver_id-fixture" + }, + "call": "$result = $fleetbase->drivers->simulateDriverRoute(\n $driverId,\n [\n 'start' => [\n 'latitude' => 1.3521,\n 'longitude' => 103.8198,\n ],\n 'end' => [\n 'latitude' => 1.2903,\n 'longitude' => 103.8519,\n ],\n ]\n);", + "code": "drivers->simulateDriverRoute(\n $driverId,\n [\n 'start' => [\n 'latitude' => 1.3521,\n 'longitude' => 103.8198,\n ],\n 'end' => [\n 'latitude' => 1.2903,\n 'longitude' => 103.8519,\n ],\n ]\n);" + }, + "fleetbase-api-drivers-switch-driver-organization": { + "collection": "Fleetbase API", + "group": "Drivers", + "name": "Switch Driver Organization", + "implementation": "Fleetbase\\Sdk\\Services\\DriverService::switchDriverOrganization", + "variables": { + "driverId": "multi_org_driver_id-fixture" + }, + "call": "$result = $fleetbase->drivers->switchDriverOrganization(\n $driverId,\n [\n 'next' => 'secondary_organization_id-fixture',\n ]\n);", + "code": "drivers->switchDriverOrganization(\n $driverId,\n [\n 'next' => 'secondary_organization_id-fixture',\n ]\n);" + }, + "fleetbase-api-drivers-toggle-driver-online": { + "collection": "Fleetbase API", + "group": "Drivers", + "name": "Toggle Driver Online", + "implementation": "Fleetbase\\Sdk\\Services\\DriverService::toggleDriverOnline", + "variables": { + "driverId": "driver_id-fixture" + }, + "call": "$result = $fleetbase->drivers->toggleDriverOnline(\n $driverId,\n [\n 'online' => true,\n ]\n);", + "code": "drivers->toggleDriverOnline(\n $driverId,\n [\n 'online' => true,\n ]\n);" + }, + "fleetbase-api-drivers-track-driver": { + "collection": "Fleetbase API", + "group": "Drivers", + "name": "Track Driver", + "implementation": "Fleetbase\\Sdk\\Services\\DriverService::trackDriver", + "variables": { + "driverId": "driver_id-fixture" + }, + "call": "$result = $fleetbase->drivers->trackDriver(\n $driverId,\n [\n 'latitude' => -19.288195,\n 'longitude' => 146.795965,\n 'speed' => 100,\n ]\n);", + "code": "drivers->trackDriver(\n $driverId,\n [\n 'latitude' => -19.288195,\n 'longitude' => 146.795965,\n 'speed' => 100,\n ]\n);" + }, + "fleetbase-api-drivers-update-a-driver": { + "collection": "Fleetbase API", + "group": "Drivers", + "name": "Update a Driver", + "implementation": "Fleetbase\\Sdk\\Services\\DriverService::updateDriver", + "variables": { + "driverId": "driver_id-fixture" + }, + "call": "$result = $fleetbase->drivers->updateDriver(\n $driverId,\n [\n 'name' => 'John Doe',\n 'email' => 'randomEmail-fixture',\n 'phone' => 'randomPhoneNumber-fixture',\n ]\n);", + "code": "drivers->updateDriver(\n $driverId,\n [\n 'name' => 'John Doe',\n 'email' => 'randomEmail-fixture',\n 'phone' => 'randomPhoneNumber-fixture',\n ]\n);" + }, + "fleetbase-api-drivers-verify-driver-login-code": { + "collection": "Fleetbase API", + "group": "Drivers", + "name": "Verify Driver Login Code", + "implementation": "Fleetbase\\Sdk\\Services\\DriverService::verifyDriverLoginCode", + "variables": [], + "call": "$result = $fleetbase->drivers->verifyDriverLoginCode(\n [\n 'identity' => 'driver_identity-fixture',\n 'code' => 'verification_code-fixture',\n ]\n);", + "code": "drivers->verifyDriverLoginCode(\n [\n 'identity' => 'driver_identity-fixture',\n 'code' => 'verification_code-fixture',\n ]\n);" + }, + "fleetbase-api-entities-create-an-entity": { + "collection": "Fleetbase API", + "group": "Entities", + "name": "Create an Entity", + "implementation": "Fleetbase\\Sdk\\Services\\EntityService::createEntity", + "variables": [], + "call": "$result = $fleetbase->entities->createEntity(\n [\n 'name' => 'SampleEntity',\n 'type' => 'parcel',\n 'payload' => 'payload_id-fixture',\n 'customer' => 'ACustomer',\n 'internal_id' => 'ENTITY001',\n 'description' => 'Sample description',\n 'meta' => [\n 'warehouse_bin' => '1',\n 'warehouse_rack' => '3',\n 'warehouse_section' => '4',\n ],\n 'weight' => 2.5,\n 'weight_unit' => 'kg',\n 'length' => 10,\n 'width' => 5,\n 'height' => 8,\n 'dimensions_unit' => 'mm',\n 'declared_value' => 1500,\n 'price' => 1200,\n 'sale_price' => 900,\n 'sku' => 'SKU123',\n 'currency' => 'USD',\n ]\n);", + "code": "entities->createEntity(\n [\n 'name' => 'SampleEntity',\n 'type' => 'parcel',\n 'payload' => 'payload_id-fixture',\n 'customer' => 'ACustomer',\n 'internal_id' => 'ENTITY001',\n 'description' => 'Sample description',\n 'meta' => [\n 'warehouse_bin' => '1',\n 'warehouse_rack' => '3',\n 'warehouse_section' => '4',\n ],\n 'weight' => 2.5,\n 'weight_unit' => 'kg',\n 'length' => 10,\n 'width' => 5,\n 'height' => 8,\n 'dimensions_unit' => 'mm',\n 'declared_value' => 1500,\n 'price' => 1200,\n 'sale_price' => 900,\n 'sku' => 'SKU123',\n 'currency' => 'USD',\n ]\n);" + }, + "fleetbase-api-entities-delete-a-entity": { + "collection": "Fleetbase API", + "group": "Entities", + "name": "Delete a Entity", + "implementation": "Fleetbase\\Sdk\\Services\\EntityService::deleteEntity", + "variables": { + "entityId": "entity_id-fixture" + }, + "call": "$result = $fleetbase->entities->deleteEntity($entityId);", + "code": "entities->deleteEntity($entityId);" + }, + "fleetbase-api-entities-query-entities": { + "collection": "Fleetbase API", + "group": "Entities", + "name": "Query Entities", + "implementation": "Fleetbase\\Sdk\\Services\\EntityService::queryEntities", + "variables": [], + "call": "$result = $fleetbase->entities->queryEntities(\n [\n 'limit' => '25',\n 'offset' => '0',\n 'sort' => 'created_at',\n 'type' => 'parcel',\n ]\n);", + "code": "entities->queryEntities(\n [\n 'limit' => '25',\n 'offset' => '0',\n 'sort' => 'created_at',\n 'type' => 'parcel',\n ]\n);" + }, + "fleetbase-api-entities-retrieve-an-entity": { + "collection": "Fleetbase API", + "group": "Entities", + "name": "Retrieve an Entity", + "implementation": "Fleetbase\\Sdk\\Services\\EntityService::retrieveEntity", + "variables": { + "entityId": "entity_id-fixture" + }, + "call": "$result = $fleetbase->entities->retrieveEntity($entityId);", + "code": "entities->retrieveEntity($entityId);" + }, + "fleetbase-api-entities-update-a-entity": { + "collection": "Fleetbase API", + "group": "Entities", + "name": "Update a Entity", + "implementation": "Fleetbase\\Sdk\\Services\\EntityService::updateEntity", + "variables": { + "entityId": "entity_id-fixture" + }, + "call": "$result = $fleetbase->entities->updateEntity(\n $entityId,\n [\n 'internal_id' => 'ENTITY001-1',\n 'description' => 'New entity description',\n 'destination' => '',\n 'sku' => 'SKUABC123',\n 'currency' => 'SGD',\n ]\n);", + "code": "entities->updateEntity(\n $entityId,\n [\n 'internal_id' => 'ENTITY001-1',\n 'description' => 'New entity description',\n 'destination' => '',\n 'sku' => 'SKUABC123',\n 'currency' => 'SGD',\n ]\n);" + }, + "fleetbase-api-equipment-create-equipment": { + "collection": "Fleetbase API", + "group": "Equipment", + "name": "Create Equipment", + "implementation": "Fleetbase\\Sdk\\Services\\EquipmentService::createEquipment", + "variables": [], + "call": "$result = $fleetbase->equipment->createEquipment(\n [\n 'name' => 'Liftgate LG-12',\n 'code' => 'LG-12',\n 'type' => 'liftgate',\n 'status' => 'available',\n 'serial_number' => 'LG120045',\n 'manufacturer' => 'Maxon',\n 'model' => 'BMR',\n 'currency' => 'USD',\n ]\n);", + "code": "equipment->createEquipment(\n [\n 'name' => 'Liftgate LG-12',\n 'code' => 'LG-12',\n 'type' => 'liftgate',\n 'status' => 'available',\n 'serial_number' => 'LG120045',\n 'manufacturer' => 'Maxon',\n 'model' => 'BMR',\n 'currency' => 'USD',\n ]\n);" + }, + "fleetbase-api-equipment-delete-equipment": { + "collection": "Fleetbase API", + "group": "Equipment", + "name": "Delete Equipment", + "implementation": "Fleetbase\\Sdk\\Services\\EquipmentService::deleteEquipment", + "variables": { + "equipmentId": "equipment_id-fixture" + }, + "call": "$result = $fleetbase->equipment->deleteEquipment($equipmentId);", + "code": "equipment->deleteEquipment($equipmentId);" + }, + "fleetbase-api-equipment-query-equipment": { + "collection": "Fleetbase API", + "group": "Equipment", + "name": "Query Equipment", + "implementation": "Fleetbase\\Sdk\\Services\\EquipmentService::queryEquipment", + "variables": [], + "call": "$result = $fleetbase->equipment->queryEquipment();", + "code": "equipment->queryEquipment();" + }, + "fleetbase-api-equipment-retrieve-equipment": { + "collection": "Fleetbase API", + "group": "Equipment", + "name": "Retrieve Equipment", + "implementation": "Fleetbase\\Sdk\\Services\\EquipmentService::retrieveEquipment", + "variables": { + "equipmentId": "equipment_id-fixture" + }, + "call": "$result = $fleetbase->equipment->retrieveEquipment($equipmentId);", + "code": "equipment->retrieveEquipment($equipmentId);" + }, + "fleetbase-api-equipment-update-equipment": { + "collection": "Fleetbase API", + "group": "Equipment", + "name": "Update Equipment", + "implementation": "Fleetbase\\Sdk\\Services\\EquipmentService::updateEquipment", + "variables": { + "equipmentId": "equipment_id-fixture" + }, + "call": "$result = $fleetbase->equipment->updateEquipment(\n $equipmentId,\n [\n 'status' => 'maintenance',\n ]\n);", + "code": "equipment->updateEquipment(\n $equipmentId,\n [\n 'status' => 'maintenance',\n ]\n);" + }, + "fleetbase-api-fleets-create-a-fleet": { + "collection": "Fleetbase API", + "group": "Fleets", + "name": "Create a Fleet", + "implementation": "Fleetbase\\Sdk\\Services\\FleetService::createFleet", + "variables": [], + "call": "$result = $fleetbase->fleets->createFleet(\n [\n 'name' => 'Haulers',\n 'service_area' => 'service_area_id-fixture',\n ]\n);", + "code": "fleets->createFleet(\n [\n 'name' => 'Haulers',\n 'service_area' => 'service_area_id-fixture',\n ]\n);" + }, + "fleetbase-api-fleets-delete-a-fleet": { + "collection": "Fleetbase API", + "group": "Fleets", + "name": "Delete a Fleet", + "implementation": "Fleetbase\\Sdk\\Services\\FleetService::deleteFleet", + "variables": { + "fleetId": "fleet_id-fixture" + }, + "call": "$result = $fleetbase->fleets->deleteFleet($fleetId);", + "code": "fleets->deleteFleet($fleetId);" + }, + "fleetbase-api-fleets-query-fleets": { + "collection": "Fleetbase API", + "group": "Fleets", + "name": "Query Fleets", + "implementation": "Fleetbase\\Sdk\\Services\\FleetService::queryFleets", + "variables": [], + "call": "$result = $fleetbase->fleets->queryFleets(\n [\n 'limit' => '25',\n 'offset' => '0',\n 'sort' => 'created_at',\n ]\n);", + "code": "fleets->queryFleets(\n [\n 'limit' => '25',\n 'offset' => '0',\n 'sort' => 'created_at',\n ]\n);" + }, + "fleetbase-api-fleets-retrieve-a-fleet": { + "collection": "Fleetbase API", + "group": "Fleets", + "name": "Retrieve a Fleet", + "implementation": "Fleetbase\\Sdk\\Services\\FleetService::retrieveFleet", + "variables": { + "fleetId": "fleet_id-fixture" + }, + "call": "$result = $fleetbase->fleets->retrieveFleet($fleetId);", + "code": "fleets->retrieveFleet($fleetId);" + }, + "fleetbase-api-fleets-update-a-fleet": { + "collection": "Fleetbase API", + "group": "Fleets", + "name": "Update a Fleet", + "implementation": "Fleetbase\\Sdk\\Services\\FleetService::updateFleet", + "variables": { + "fleetId": "fleet_id-fixture" + }, + "call": "$result = $fleetbase->fleets->updateFleet(\n $fleetId,\n [\n 'name' => 'Haulers',\n 'service_area' => 'service_area_id-fixture',\n ]\n);", + "code": "fleets->updateFleet(\n $fleetId,\n [\n 'name' => 'Haulers',\n 'service_area' => 'service_area_id-fixture',\n ]\n);" + }, + "fleetbase-api-fuel-reports-create-a-fuel-report": { + "collection": "Fleetbase API", + "group": "Fuel Reports", + "name": "Create a Fuel Report", + "implementation": "Fleetbase\\Sdk\\Services\\FuelReportService::createFuelReport", + "variables": [], + "call": "$result = $fleetbase->fuelReports->createFuelReport(\n [\n 'driver' => 'driver_id-fixture',\n 'odometer' => 12042,\n 'volume' => 42.5,\n 'metric_unit' => 'liter',\n 'location' => [\n 'latitude' => 1.3521,\n 'longitude' => 103.8198,\n ],\n 'amount' => 120.5,\n 'currency' => 'USD',\n 'status' => 'submitted',\n ]\n);", + "code": "fuelReports->createFuelReport(\n [\n 'driver' => 'driver_id-fixture',\n 'odometer' => 12042,\n 'volume' => 42.5,\n 'metric_unit' => 'liter',\n 'location' => [\n 'latitude' => 1.3521,\n 'longitude' => 103.8198,\n ],\n 'amount' => 120.5,\n 'currency' => 'USD',\n 'status' => 'submitted',\n ]\n);" + }, + "fleetbase-api-fuel-reports-delete-a-fuel-report": { + "collection": "Fleetbase API", + "group": "Fuel Reports", + "name": "Delete a Fuel Report", + "implementation": "Fleetbase\\Sdk\\Services\\FuelReportService::deleteFuelReport", + "variables": { + "fuelReportId": "fuel_report_id-fixture" + }, + "call": "$result = $fleetbase->fuelReports->deleteFuelReport($fuelReportId);", + "code": "fuelReports->deleteFuelReport($fuelReportId);" + }, + "fleetbase-api-fuel-reports-query-fuel-reports": { + "collection": "Fleetbase API", + "group": "Fuel Reports", + "name": "Query Fuel Reports", + "implementation": "Fleetbase\\Sdk\\Services\\FuelReportService::queryFuelReports", + "variables": [], + "call": "$result = $fleetbase->fuelReports->queryFuelReports(\n [\n 'limit' => '25',\n 'offset' => '0',\n 'sort' => 'created_at',\n ]\n);", + "code": "fuelReports->queryFuelReports(\n [\n 'limit' => '25',\n 'offset' => '0',\n 'sort' => 'created_at',\n ]\n);" + }, + "fleetbase-api-fuel-reports-retrieve-a-fuel-report": { + "collection": "Fleetbase API", + "group": "Fuel Reports", + "name": "Retrieve a Fuel Report", + "implementation": "Fleetbase\\Sdk\\Services\\FuelReportService::retrieveFuelReport", + "variables": { + "fuelReportId": "fuel_report_id-fixture" + }, + "call": "$result = $fleetbase->fuelReports->retrieveFuelReport($fuelReportId);", + "code": "fuelReports->retrieveFuelReport($fuelReportId);" + }, + "fleetbase-api-fuel-reports-update-a-fuel-report": { + "collection": "Fleetbase API", + "group": "Fuel Reports", + "name": "Update a Fuel Report", + "implementation": "Fleetbase\\Sdk\\Services\\FuelReportService::updateFuelReport", + "variables": { + "fuelReportId": "fuel_report_id-fixture" + }, + "call": "$result = $fleetbase->fuelReports->updateFuelReport(\n $fuelReportId,\n [\n 'odometer' => 12050,\n 'volume' => 43.1,\n 'metric_unit' => 'liter',\n 'amount' => 122.75,\n 'currency' => 'USD',\n 'status' => 'approved',\n ]\n);", + "code": "fuelReports->updateFuelReport(\n $fuelReportId,\n [\n 'odometer' => 12050,\n 'volume' => 43.1,\n 'metric_unit' => 'liter',\n 'amount' => 122.75,\n 'currency' => 'USD',\n 'status' => 'approved',\n ]\n);" + }, + "fleetbase-api-fuel-transactions-create-a-fuel-transaction": { + "collection": "Fleetbase API", + "group": "Fuel Transactions", + "name": "Create a Fuel Transaction", + "implementation": "Fleetbase\\Sdk\\Services\\FuelTransactionService::createFuelTransaction", + "variables": [], + "call": "$result = $fleetbase->fuelTransactions->createFuelTransaction(\n [\n 'provider' => 'petroapp',\n 'provider_transaction_id' => 'TX-timestamp-fixture',\n 'vehicle' => 'vehicle_id-fixture',\n 'station_name' => 'North Depot Fuel',\n 'transaction_at' => '2026-05-07T08:30:00Z',\n 'volume' => 42.5,\n 'metric_unit' => 'liter',\n 'amount' => 6500,\n 'currency' => 'USD',\n ]\n);", + "code": "fuelTransactions->createFuelTransaction(\n [\n 'provider' => 'petroapp',\n 'provider_transaction_id' => 'TX-timestamp-fixture',\n 'vehicle' => 'vehicle_id-fixture',\n 'station_name' => 'North Depot Fuel',\n 'transaction_at' => '2026-05-07T08:30:00Z',\n 'volume' => 42.5,\n 'metric_unit' => 'liter',\n 'amount' => 6500,\n 'currency' => 'USD',\n ]\n);" + }, + "fleetbase-api-fuel-transactions-delete-a-fuel-transaction": { + "collection": "Fleetbase API", + "group": "Fuel Transactions", + "name": "Delete a Fuel Transaction", + "implementation": "Fleetbase\\Sdk\\Services\\FuelTransactionService::deleteFuelTransaction", + "variables": { + "fuelTransactionId": "fuel_transaction_id-fixture" + }, + "call": "$result = $fleetbase->fuelTransactions->deleteFuelTransaction($fuelTransactionId);", + "code": "fuelTransactions->deleteFuelTransaction($fuelTransactionId);" + }, + "fleetbase-api-fuel-transactions-match-fuel-transaction-order": { + "collection": "Fleetbase API", + "group": "Fuel Transactions", + "name": "Match Fuel Transaction Order", + "implementation": "Fleetbase\\Sdk\\Services\\FuelTransactionService::matchFuelTransactionOrder", + "variables": { + "fuelTransactionId": "fuel_transaction_id-fixture" + }, + "call": "$result = $fleetbase->fuelTransactions->matchFuelTransactionOrder(\n $fuelTransactionId,\n [\n 'order' => 'order_id-fixture',\n ]\n);", + "code": "fuelTransactions->matchFuelTransactionOrder(\n $fuelTransactionId,\n [\n 'order' => 'order_id-fixture',\n ]\n);" + }, + "fleetbase-api-fuel-transactions-match-fuel-transaction-vehicle": { + "collection": "Fleetbase API", + "group": "Fuel Transactions", + "name": "Match Fuel Transaction Vehicle", + "implementation": "Fleetbase\\Sdk\\Services\\FuelTransactionService::matchFuelTransactionVehicle", + "variables": { + "fuelTransactionId": "fuel_transaction_id-fixture" + }, + "call": "$result = $fleetbase->fuelTransactions->matchFuelTransactionVehicle(\n $fuelTransactionId,\n [\n 'vehicle' => 'vehicle_id-fixture',\n ]\n);", + "code": "fuelTransactions->matchFuelTransactionVehicle(\n $fuelTransactionId,\n [\n 'vehicle' => 'vehicle_id-fixture',\n ]\n);" + }, + "fleetbase-api-fuel-transactions-query-fuel-transactions": { + "collection": "Fleetbase API", + "group": "Fuel Transactions", + "name": "Query Fuel Transactions", + "implementation": "Fleetbase\\Sdk\\Services\\FuelTransactionService::queryFuelTransactions", + "variables": [], + "call": "$result = $fleetbase->fuelTransactions->queryFuelTransactions();", + "code": "fuelTransactions->queryFuelTransactions();" + }, + "fleetbase-api-fuel-transactions-reprocess-fuel-transaction": { + "collection": "Fleetbase API", + "group": "Fuel Transactions", + "name": "Reprocess Fuel Transaction", + "implementation": "Fleetbase\\Sdk\\Services\\FuelTransactionService::reprocessFuelTransaction", + "variables": { + "fuelTransactionId": "fuel_transaction_id-fixture" + }, + "call": "$result = $fleetbase->fuelTransactions->reprocessFuelTransaction($fuelTransactionId);", + "code": "fuelTransactions->reprocessFuelTransaction($fuelTransactionId);" + }, + "fleetbase-api-fuel-transactions-retrieve-a-fuel-transaction": { + "collection": "Fleetbase API", + "group": "Fuel Transactions", + "name": "Retrieve a Fuel Transaction", + "implementation": "Fleetbase\\Sdk\\Services\\FuelTransactionService::retrieveFuelTransaction", + "variables": { + "fuelTransactionId": "fuel_transaction_id-fixture" + }, + "call": "$result = $fleetbase->fuelTransactions->retrieveFuelTransaction($fuelTransactionId);", + "code": "fuelTransactions->retrieveFuelTransaction($fuelTransactionId);" + }, + "fleetbase-api-fuel-transactions-review-fuel-transaction": { + "collection": "Fleetbase API", + "group": "Fuel Transactions", + "name": "Review Fuel Transaction", + "implementation": "Fleetbase\\Sdk\\Services\\FuelTransactionService::reviewFuelTransaction", + "variables": { + "fuelTransactionId": "fuel_transaction_id-fixture" + }, + "call": "$result = $fleetbase->fuelTransactions->reviewFuelTransaction(\n $fuelTransactionId,\n [\n 'status' => 'reviewed',\n ]\n);", + "code": "fuelTransactions->reviewFuelTransaction(\n $fuelTransactionId,\n [\n 'status' => 'reviewed',\n ]\n);" + }, + "fleetbase-api-fuel-transactions-update-a-fuel-transaction": { + "collection": "Fleetbase API", + "group": "Fuel Transactions", + "name": "Update a Fuel Transaction", + "implementation": "Fleetbase\\Sdk\\Services\\FuelTransactionService::updateFuelTransaction", + "variables": { + "fuelTransactionId": "fuel_transaction_id-fixture" + }, + "call": "$result = $fleetbase->fuelTransactions->updateFuelTransaction(\n $fuelTransactionId,\n [\n 'sync_status' => 'reviewed',\n ]\n);", + "code": "fuelTransactions->updateFuelTransaction(\n $fuelTransactionId,\n [\n 'sync_status' => 'reviewed',\n ]\n);" + }, + "fleetbase-api-geofences-get-driver-geofence-history": { + "collection": "Fleetbase API", + "group": "Geofences", + "name": "Get Driver Geofence History", + "implementation": "Fleetbase\\Sdk\\Services\\GeofenceService::getDriverGeofenceHistory", + "variables": { + "driverId": "driver_id-fixture" + }, + "call": "$result = $fleetbase->geofences->getDriverGeofenceHistory(\n $driverId,\n [\n 'per_page' => '50',\n ]\n);", + "code": "geofences->getDriverGeofenceHistory(\n $driverId,\n [\n 'per_page' => '50',\n ]\n);" + }, + "fleetbase-api-geofences-get-geofence-dwell-report": { + "collection": "Fleetbase API", + "group": "Geofences", + "name": "Get Geofence Dwell Report", + "implementation": "Fleetbase\\Sdk\\Services\\GeofenceService::getGeofenceDwellReport", + "variables": [], + "call": "$result = $fleetbase->geofences->getGeofenceDwellReport(\n [\n 'from' => 'from_datetime-fixture',\n 'to' => 'to_datetime-fixture',\n ]\n);", + "code": "geofences->getGeofenceDwellReport(\n [\n 'from' => 'from_datetime-fixture',\n 'to' => 'to_datetime-fixture',\n ]\n);" + }, + "fleetbase-api-geofences-get-geofence-inventory": { + "collection": "Fleetbase API", + "group": "Geofences", + "name": "Get Geofence Inventory", + "implementation": "Fleetbase\\Sdk\\Services\\GeofenceService::getGeofenceInventory", + "variables": [], + "call": "$result = $fleetbase->geofences->getGeofenceInventory();", + "code": "geofences->getGeofenceInventory();" + }, + "fleetbase-api-geofences-list-geofence-events": { + "collection": "Fleetbase API", + "group": "Geofences", + "name": "List Geofence Events", + "implementation": "Fleetbase\\Sdk\\Services\\GeofenceService::listGeofenceEvents", + "variables": [], + "call": "$result = $fleetbase->geofences->listGeofenceEvents(\n [\n 'per_page' => '50',\n 'event_type' => 'entered',\n ]\n);", + "code": "geofences->listGeofenceEvents(\n [\n 'per_page' => '50',\n 'event_type' => 'entered',\n ]\n);" + }, + "fleetbase-api-issues-create-an-issue": { + "collection": "Fleetbase API", + "group": "Issues", + "name": "Create an Issue", + "implementation": "Fleetbase\\Sdk\\Services\\IssueService::createIssue", + "variables": [], + "call": "$result = $fleetbase->issues->createIssue(\n [\n 'driver' => 'driver_id-fixture',\n 'location' => [\n 'latitude' => 1.3521,\n 'longitude' => 103.8198,\n ],\n 'report' => 'Vehicle tire pressure warning',\n 'category' => 'vehicle',\n 'type' => 'maintenance',\n 'priority' => 'medium',\n 'status' => 'open',\n ]\n);", + "code": "issues->createIssue(\n [\n 'driver' => 'driver_id-fixture',\n 'location' => [\n 'latitude' => 1.3521,\n 'longitude' => 103.8198,\n ],\n 'report' => 'Vehicle tire pressure warning',\n 'category' => 'vehicle',\n 'type' => 'maintenance',\n 'priority' => 'medium',\n 'status' => 'open',\n ]\n);" + }, + "fleetbase-api-issues-delete-an-issue": { + "collection": "Fleetbase API", + "group": "Issues", + "name": "Delete an Issue", + "implementation": "Fleetbase\\Sdk\\Services\\IssueService::deleteIssue", + "variables": { + "issueId": "issue_id-fixture" + }, + "call": "$result = $fleetbase->issues->deleteIssue($issueId);", + "code": "issues->deleteIssue($issueId);" + }, + "fleetbase-api-issues-query-issues": { + "collection": "Fleetbase API", + "group": "Issues", + "name": "Query Issues", + "implementation": "Fleetbase\\Sdk\\Services\\IssueService::queryIssues", + "variables": [], + "call": "$result = $fleetbase->issues->queryIssues(\n [\n 'limit' => '25',\n 'offset' => '0',\n 'sort' => 'created_at',\n ]\n);", + "code": "issues->queryIssues(\n [\n 'limit' => '25',\n 'offset' => '0',\n 'sort' => 'created_at',\n ]\n);" + }, + "fleetbase-api-issues-retrieve-an-issue": { + "collection": "Fleetbase API", + "group": "Issues", + "name": "Retrieve an Issue", + "implementation": "Fleetbase\\Sdk\\Services\\IssueService::retrieveIssue", + "variables": { + "issueId": "issue_id-fixture" + }, + "call": "$result = $fleetbase->issues->retrieveIssue($issueId);", + "code": "issues->retrieveIssue($issueId);" + }, + "fleetbase-api-issues-update-an-issue": { + "collection": "Fleetbase API", + "group": "Issues", + "name": "Update an Issue", + "implementation": "Fleetbase\\Sdk\\Services\\IssueService::updateIssue", + "variables": { + "issueId": "issue_id-fixture" + }, + "call": "$result = $fleetbase->issues->updateIssue(\n $issueId,\n [\n 'report' => 'Updated issue report',\n 'category' => 'vehicle',\n 'type' => 'maintenance',\n 'priority' => 'high',\n 'status' => 'resolved',\n ]\n);", + "code": "issues->updateIssue(\n $issueId,\n [\n 'report' => 'Updated issue report',\n 'category' => 'vehicle',\n 'type' => 'maintenance',\n 'priority' => 'high',\n 'status' => 'resolved',\n ]\n);" + }, + "fleetbase-api-labels-render-label": { + "collection": "Fleetbase API", + "group": "Labels", + "name": "Render Label", + "implementation": "Fleetbase\\Sdk\\Services\\LabelService::renderLabel", + "variables": { + "labelId": "order_id-fixture" + }, + "call": "$result = $fleetbase->labels->renderLabel(\n $labelId,\n [\n 'format' => 'stream',\n 'type' => 'order',\n ]\n);", + "code": "labels->renderLabel(\n $labelId,\n [\n 'format' => 'stream',\n 'type' => 'order',\n ]\n);" + }, + "fleetbase-api-manifests-optimize-a-manifest": { + "collection": "Fleetbase API", + "group": "Manifests", + "name": "Optimize a Manifest", + "implementation": "Fleetbase\\Sdk\\Services\\ManifestService::optimizeManifest", + "variables": { + "manifestId": "manifest_id-fixture" + }, + "call": "$result = $fleetbase->manifests->optimizeManifest(\n $manifestId,\n [\n 'latitude' => 1.3521,\n 'longitude' => 103.8198,\n ]\n);", + "code": "manifests->optimizeManifest(\n $manifestId,\n [\n 'latitude' => 1.3521,\n 'longitude' => 103.8198,\n ]\n);" + }, + "fleetbase-api-manifests-retrieve-a-manifest": { + "collection": "Fleetbase API", + "group": "Manifests", + "name": "Retrieve a Manifest", + "implementation": "Fleetbase\\Sdk\\Services\\ManifestService::retrieveManifest", + "variables": { + "manifestId": "manifest_id-fixture" + }, + "call": "$result = $fleetbase->manifests->retrieveManifest($manifestId);", + "code": "manifests->retrieveManifest($manifestId);" + }, + "fleetbase-api-manifests-update-a-manifest-stop": { + "collection": "Fleetbase API", + "group": "Manifests", + "name": "Update a Manifest Stop", + "implementation": "Fleetbase\\Sdk\\Services\\ManifestService::updateManifestStop", + "variables": { + "manifestId": "manifest_stop_id-fixture" + }, + "call": "$result = $fleetbase->manifests->updateManifestStop(\n $manifestId,\n [\n 'status' => 'arrived',\n ]\n);", + "code": "manifests->updateManifestStop(\n $manifestId,\n [\n 'status' => 'arrived',\n ]\n);" + }, + "fleetbase-api-onboard-get-driver-onboard-settings": { + "collection": "Fleetbase API", + "group": "Onboard", + "name": "Get Driver Onboard Settings", + "implementation": "Fleetbase\\Sdk\\Services\\OnboardService::getDriverOnboardSettings", + "variables": { + "companyId": "organization_id-fixture" + }, + "call": "$result = $fleetbase->onboard->getDriverOnboardSettings($companyId);", + "code": "onboard->getDriverOnboardSettings($companyId);" + }, + "fleetbase-api-orchestrator-commit-orchestrator-plan": { + "collection": "Fleetbase API", + "group": "Orchestrator", + "name": "Commit Orchestrator Plan", + "implementation": "Fleetbase\\Sdk\\Services\\OrchestratorService::commitOrchestratorPlan", + "variables": [], + "call": "$result = $fleetbase->orchestrator->commitOrchestratorPlan(\n [\n 'scheduled_date' => '2026-05-16',\n 'assignments' => [\n [\n 'order_id' => 'order_id-fixture',\n 'vehicle_id' => 'vehicle_id-fixture',\n 'driver_id' => 'driver_id-fixture',\n 'sequence' => 1,\n 'arrival' => 1778918400,\n 'duration' => 900,\n 'distance' => 4200,\n ],\n ],\n ]\n);", + "code": "orchestrator->commitOrchestratorPlan(\n [\n 'scheduled_date' => '2026-05-16',\n 'assignments' => [\n [\n 'order_id' => 'order_id-fixture',\n 'vehicle_id' => 'vehicle_id-fixture',\n 'driver_id' => 'driver_id-fixture',\n 'sequence' => 1,\n 'arrival' => 1778918400,\n 'duration' => 900,\n 'distance' => 4200,\n ],\n ],\n ]\n);" + }, + "fleetbase-api-orchestrator-run-orchestrator": { + "collection": "Fleetbase API", + "group": "Orchestrator", + "name": "Run Orchestrator", + "implementation": "Fleetbase\\Sdk\\Services\\OrchestratorService::runOrchestrator", + "variables": [], + "call": "$result = $fleetbase->orchestrator->runOrchestrator(\n [\n 'mode' => 'assign_vehicles',\n 'order_ids' => [\n 'order_id-fixture',\n ],\n 'vehicle_ids' => [\n 'vehicle_id-fixture',\n ],\n 'driver_ids' => [],\n 'prior_assignments' => [],\n 'options' => [\n 'engine' => 'greedy',\n 'allocation_strategy' => 'route_aware',\n 'geometry' => false,\n 'respect_capacity' => true,\n 'respect_skills' => true,\n 'return_to_depot' => false,\n ],\n ]\n);", + "code": "orchestrator->runOrchestrator(\n [\n 'mode' => 'assign_vehicles',\n 'order_ids' => [\n 'order_id-fixture',\n ],\n 'vehicle_ids' => [\n 'vehicle_id-fixture',\n ],\n 'driver_ids' => [],\n 'prior_assignments' => [],\n 'options' => [\n 'engine' => 'greedy',\n 'allocation_strategy' => 'route_aware',\n 'geometry' => false,\n 'respect_capacity' => true,\n 'respect_skills' => true,\n 'return_to_depot' => false,\n ],\n ]\n);" + }, + "fleetbase-api-order-configs-query-order-configs": { + "collection": "Fleetbase API", + "group": "Order Configs", + "name": "Query Order Configs", + "implementation": "Fleetbase\\Sdk\\Services\\OrderConfigService::queryOrderConfigs", + "variables": [], + "call": "$result = $fleetbase->orderConfigs->queryOrderConfigs();", + "code": "orderConfigs->queryOrderConfigs();" + }, + "fleetbase-api-order-configs-retrieve-an-order-config": { + "collection": "Fleetbase API", + "group": "Order Configs", + "name": "Retrieve an Order Config", + "implementation": "Fleetbase\\Sdk\\Services\\OrderConfigService::retrieveOrderConfig", + "variables": { + "orderConfigId": "order_config_id-fixture" + }, + "call": "$result = $fleetbase->orderConfigs->retrieveOrderConfig($orderConfigId);", + "code": "orderConfigs->retrieveOrderConfig($orderConfigId);" + }, + "fleetbase-api-orders-cancel-an-order": { + "collection": "Fleetbase API", + "group": "Orders", + "name": "Cancel an Order", + "implementation": "Fleetbase\\Sdk\\Services\\OrderService::cancelOrder", + "variables": { + "orderId": "order_id-fixture" + }, + "call": "$result = $fleetbase->orders->cancelOrder($orderId);", + "code": "orders->cancelOrder($orderId);" + }, + "fleetbase-api-orders-capture-photo-for-order": { + "collection": "Fleetbase API", + "group": "Orders", + "name": "Capture Photo for Order", + "implementation": "Fleetbase\\Sdk\\Services\\OrderService::capturePhotoForOrder", + "variables": { + "orderId": "order_id-fixture", + "subjectId": "subject_id-fixture" + }, + "call": "$result = $fleetbase->orders->capturePhotoForOrder(\n $orderId,\n $subjectId,\n [\n 'photos' => [\n 'proof_photo_base64-fixture',\n ],\n 'remarks' => 'Verified by Photo',\n 'data' => [],\n ]\n);", + "code": "orders->capturePhotoForOrder(\n $orderId,\n $subjectId,\n [\n 'photos' => [\n 'proof_photo_base64-fixture',\n ],\n 'remarks' => 'Verified by Photo',\n 'data' => [],\n ]\n);" + }, + "fleetbase-api-orders-capture-qr-code-for-order": { + "collection": "Fleetbase API", + "group": "Orders", + "name": "Capture QR Code for Order", + "implementation": "Fleetbase\\Sdk\\Services\\OrderService::captureQrCodeForOrder", + "variables": { + "orderId": "order_id-fixture", + "subjectId": "subject-id-fixture" + }, + "call": "$result = $fleetbase->orders->captureQrCodeForOrder(\n $orderId,\n $subjectId,\n [\n 'code' => 'qr_code-fixture',\n 'data' => [],\n 'raw_data' => [],\n ]\n);", + "code": "orders->captureQrCodeForOrder(\n $orderId,\n $subjectId,\n [\n 'code' => 'qr_code-fixture',\n 'data' => [],\n 'raw_data' => [],\n ]\n);" + }, + "fleetbase-api-orders-capture-signature-for-order": { + "collection": "Fleetbase API", + "group": "Orders", + "name": "Capture Signature for Order", + "implementation": "Fleetbase\\Sdk\\Services\\OrderService::captureSignatureForOrder", + "variables": { + "orderId": "order_id-fixture", + "subjectId": "subject-id-fixture" + }, + "call": "$result = $fleetbase->orders->captureSignatureForOrder(\n $orderId,\n $subjectId,\n [\n 'signature' => 'proof_signature_base64-fixture',\n 'data' => [],\n ]\n);", + "code": "orders->captureSignatureForOrder(\n $orderId,\n $subjectId,\n [\n 'signature' => 'proof_signature_base64-fixture',\n 'data' => [],\n ]\n);" + }, + "fleetbase-api-orders-complete-an-order": { + "collection": "Fleetbase API", + "group": "Orders", + "name": "Complete an Order", + "implementation": "Fleetbase\\Sdk\\Services\\OrderService::completeOrder", + "variables": { + "orderId": "order_id-fixture" + }, + "call": "$result = $fleetbase->orders->completeOrder($orderId);", + "code": "orders->completeOrder($orderId);" + }, + "fleetbase-api-orders-create-an-order": { + "collection": "Fleetbase API", + "group": "Orders", + "name": "Create an Order", + "implementation": "Fleetbase\\Sdk\\Services\\OrderService::createOrder", + "variables": [], + "call": "$result = $fleetbase->orders->createOrder(\n [\n 'pickup' => 'Singapore 018971',\n 'dropoff' => '321 Orchard Rd, Singapore',\n 'waypoints' => [\n '10 Bayfront Avenue, Singapore 018956',\n '18 Marina Gardens Drive, Singapore 018953',\n '80 Mandai Lake Rd, Singapore 729826',\n '1 Beach Road, Singapore 189673',\n ],\n 'dispatch' => false,\n 'driver' => 'driver_id-fixture',\n 'facilitator' => 'vendor_id-fixture',\n 'customer' => 'contact_id-fixture',\n 'meta' => [\n 'Warehouse' => 'WAREHOUSE-123',\n ],\n 'notes' => 'Order notes',\n ]\n);", + "code": "orders->createOrder(\n [\n 'pickup' => 'Singapore 018971',\n 'dropoff' => '321 Orchard Rd, Singapore',\n 'waypoints' => [\n '10 Bayfront Avenue, Singapore 018956',\n '18 Marina Gardens Drive, Singapore 018953',\n '80 Mandai Lake Rd, Singapore 729826',\n '1 Beach Road, Singapore 189673',\n ],\n 'dispatch' => false,\n 'driver' => 'driver_id-fixture',\n 'facilitator' => 'vendor_id-fixture',\n 'customer' => 'contact_id-fixture',\n 'meta' => [\n 'Warehouse' => 'WAREHOUSE-123',\n ],\n 'notes' => 'Order notes',\n ]\n);" + }, + "fleetbase-api-orders-create-an-order-using-complete-payload": { + "collection": "Fleetbase API", + "group": "Orders", + "name": "Create an Order using Complete Payload", + "implementation": "Fleetbase\\Sdk\\Services\\OrderService::createOrderUsingCompletePayload", + "variables": [], + "call": "$result = $fleetbase->orders->createOrderUsingCompletePayload(\n [\n 'pickup' => 'Singapore 018971',\n 'dropoff' => '321 Orchard Rd, Singapore',\n 'dispatch' => false,\n 'driver' => 'driver_id-fixture',\n 'customer' => 'contact_id-fixture',\n 'notes' => 'Deliver through receiving bay.',\n ]\n);", + "code": "orders->createOrderUsingCompletePayload(\n [\n 'pickup' => 'Singapore 018971',\n 'dropoff' => '321 Orchard Rd, Singapore',\n 'dispatch' => false,\n 'driver' => 'driver_id-fixture',\n 'customer' => 'contact_id-fixture',\n 'notes' => 'Deliver through receiving bay.',\n ]\n);" + }, + "fleetbase-api-orders-create-an-order-using-coordinates": { + "collection": "Fleetbase API", + "group": "Orders", + "name": "Create an Order using Coordinates", + "implementation": "Fleetbase\\Sdk\\Services\\OrderService::createOrderUsingCoordinates", + "variables": [], + "call": "$result = $fleetbase->orders->createOrderUsingCoordinates(\n [\n 'pickup' => [\n 'latitude' => 1.2830632,\n 'longitude' => 103.8579965,\n ],\n 'dropoff' => [\n 'lat' => 1.4043,\n 'lng' => 103.793,\n ],\n ]\n);", + "code": "orders->createOrderUsingCoordinates(\n [\n 'pickup' => [\n 'latitude' => 1.2830632,\n 'longitude' => 103.8579965,\n ],\n 'dropoff' => [\n 'lat' => 1.4043,\n 'lng' => 103.793,\n ],\n ]\n);" + }, + "fleetbase-api-orders-create-an-order-using-geojson-points": { + "collection": "Fleetbase API", + "group": "Orders", + "name": "Create an Order using GeoJSON Points", + "implementation": "Fleetbase\\Sdk\\Services\\OrderService::createOrderUsingGeojsonPoints", + "variables": [], + "call": "$result = $fleetbase->orders->createOrderUsingGeojsonPoints(\n [\n 'pickup' => [\n 'type' => 'Point',\n 'coordinates' => [\n 103.8579965,\n 1.2830632,\n ],\n ],\n 'dropoff' => [\n 'type' => 'Point',\n 'coordinates' => [\n 103.793,\n 1.4043,\n ],\n ],\n ]\n);", + "code": "orders->createOrderUsingGeojsonPoints(\n [\n 'pickup' => [\n 'type' => 'Point',\n 'coordinates' => [\n 103.8579965,\n 1.2830632,\n ],\n ],\n 'dropoff' => [\n 'type' => 'Point',\n 'coordinates' => [\n 103.793,\n 1.4043,\n ],\n ],\n ]\n);" + }, + "fleetbase-api-orders-create-an-order-using-payload": { + "collection": "Fleetbase API", + "group": "Orders", + "name": "Create an Order using Payload", + "implementation": "Fleetbase\\Sdk\\Services\\OrderService::createOrderUsingPayload", + "variables": [], + "call": "$result = $fleetbase->orders->createOrderUsingPayload(\n [\n 'payload' => [\n 'pickup' => 'Singapore 018971',\n 'dropoff' => '321 Orchard Rd, Singapore',\n 'entities' => [\n [\n 'name' => 'UltraHD 4K Smart TV',\n 'description' => '65-inch high-definition smart TV with vibrant colors and a sleek design.',\n 'currency' => 'USD',\n 'price' => 1200,\n ],\n [\n 'name' => 'Bluetooth Wireless Headphones',\n 'description' => 'Noise-cancelling, over-ear headphones with long-lasting battery life.',\n 'currency' => 'USD',\n 'price' => 250,\n ],\n [\n 'name' => 'Smart Fitness Watch',\n 'description' => 'Water-resistant fitness watch with heart rate monitor and GPS tracking.',\n 'currency' => 'USD',\n 'price' => 199.99,\n ],\n ],\n ],\n 'meta' => [\n 'Warehouse' => 'WAREHOUSE-123',\n ],\n 'notes' => 'Order notes',\n ]\n);", + "code": "orders->createOrderUsingPayload(\n [\n 'payload' => [\n 'pickup' => 'Singapore 018971',\n 'dropoff' => '321 Orchard Rd, Singapore',\n 'entities' => [\n [\n 'name' => 'UltraHD 4K Smart TV',\n 'description' => '65-inch high-definition smart TV with vibrant colors and a sleek design.',\n 'currency' => 'USD',\n 'price' => 1200,\n ],\n [\n 'name' => 'Bluetooth Wireless Headphones',\n 'description' => 'Noise-cancelling, over-ear headphones with long-lasting battery life.',\n 'currency' => 'USD',\n 'price' => 250,\n ],\n [\n 'name' => 'Smart Fitness Watch',\n 'description' => 'Water-resistant fitness watch with heart rate monitor and GPS tracking.',\n 'currency' => 'USD',\n 'price' => 199.99,\n ],\n ],\n ],\n 'meta' => [\n 'Warehouse' => 'WAREHOUSE-123',\n ],\n 'notes' => 'Order notes',\n ]\n);" + }, + "fleetbase-api-orders-create-an-order-using-waypoints-and-entities-with-photos": { + "collection": "Fleetbase API", + "group": "Orders", + "name": "Create an Order using Waypoints and Entities with Photos", + "implementation": "Fleetbase\\Sdk\\Services\\OrderService::createOrderUsingWaypointsAndEntitiesWithPhotos", + "variables": [], + "call": "$result = $fleetbase->orders->createOrderUsingWaypointsAndEntitiesWithPhotos(\n [\n 'payload' => [\n 'waypoints' => [\n 'Singapore 018971',\n '321 Orchard Rd, Singapore',\n ],\n 'entities' => [\n [\n 'destination' => 0,\n 'name' => 'UltraHD 4K Smart TV',\n 'description' => '65-inch high-definition smart TV with vibrant colors and a sleek design.',\n 'currency' => 'USD',\n 'price' => 1200,\n 'photo' => 'https://cdn.thewirecutter.com/wp-content/media/2025/07/BEST-BUDGET-4K-TV-2048px-3185-2x1-1.jpg?width=1024&quality=75&crop=2:1&auto=webp',\n ],\n [\n 'destination' => 0,\n 'name' => 'Bluetooth Wireless Headphones',\n 'description' => 'Noise-cancelling, over-ear headphones with long-lasting battery life.',\n 'currency' => 'USD',\n 'price' => 250,\n 'photo' => 'https://cdn.thewirecutter.com/wp-content/media/2025/07/BEST-BUDGET-4K-TV-2048px-3185-2x1-1.jpg?width=1024&quality=75&crop=2:1&auto=webp',\n ],\n [\n 'destination' => 1,\n 'name' => 'Smart Fitness Watch',\n 'description' => 'Water-resistant fitness watch with heart rate monitor and GPS tracking.',\n 'currency' => 'USD',\n 'price' => 199.99,\n 'photo' => 'https://cdn.thewirecutter.com/wp-content/media/2025/07/BEST-BUDGET-4K-TV-2048px-3185-2x1-1.jpg?width=1024&quality=75&crop=2:1&auto=webp',\n ],\n ],\n ],\n 'meta' => [\n 'Warehouse' => 'WAREHOUSE-123',\n ],\n 'notes' => 'Order notes',\n ]\n);", + "code": "orders->createOrderUsingWaypointsAndEntitiesWithPhotos(\n [\n 'payload' => [\n 'waypoints' => [\n 'Singapore 018971',\n '321 Orchard Rd, Singapore',\n ],\n 'entities' => [\n [\n 'destination' => 0,\n 'name' => 'UltraHD 4K Smart TV',\n 'description' => '65-inch high-definition smart TV with vibrant colors and a sleek design.',\n 'currency' => 'USD',\n 'price' => 1200,\n 'photo' => 'https://cdn.thewirecutter.com/wp-content/media/2025/07/BEST-BUDGET-4K-TV-2048px-3185-2x1-1.jpg?width=1024&quality=75&crop=2:1&auto=webp',\n ],\n [\n 'destination' => 0,\n 'name' => 'Bluetooth Wireless Headphones',\n 'description' => 'Noise-cancelling, over-ear headphones with long-lasting battery life.',\n 'currency' => 'USD',\n 'price' => 250,\n 'photo' => 'https://cdn.thewirecutter.com/wp-content/media/2025/07/BEST-BUDGET-4K-TV-2048px-3185-2x1-1.jpg?width=1024&quality=75&crop=2:1&auto=webp',\n ],\n [\n 'destination' => 1,\n 'name' => 'Smart Fitness Watch',\n 'description' => 'Water-resistant fitness watch with heart rate monitor and GPS tracking.',\n 'currency' => 'USD',\n 'price' => 199.99,\n 'photo' => 'https://cdn.thewirecutter.com/wp-content/media/2025/07/BEST-BUDGET-4K-TV-2048px-3185-2x1-1.jpg?width=1024&quality=75&crop=2:1&auto=webp',\n ],\n ],\n ],\n 'meta' => [\n 'Warehouse' => 'WAREHOUSE-123',\n ],\n 'notes' => 'Order notes',\n ]\n);" + }, + "fleetbase-api-orders-create-an-order-using-waypoints-and-entity-destinations": { + "collection": "Fleetbase API", + "group": "Orders", + "name": "Create an Order using Waypoints and Entity Destinations", + "implementation": "Fleetbase\\Sdk\\Services\\OrderService::createOrderUsingWaypointsAndEntityDestinations", + "variables": [], + "call": "$result = $fleetbase->orders->createOrderUsingWaypointsAndEntityDestinations(\n [\n 'payload' => [\n 'waypoints' => [\n 'Singapore 018971',\n '321 Orchard Rd, Singapore',\n ],\n 'entities' => [\n [\n 'destination' => 0,\n 'name' => 'UltraHD 4K Smart TV',\n 'description' => '65-inch high-definition smart TV with vibrant colors and a sleek design.',\n 'currency' => 'USD',\n 'price' => 1200,\n ],\n [\n 'destination' => 0,\n 'name' => 'Bluetooth Wireless Headphones',\n 'description' => 'Noise-cancelling, over-ear headphones with long-lasting battery life.',\n 'currency' => 'USD',\n 'price' => 250,\n ],\n [\n 'destination' => 1,\n 'name' => 'Smart Fitness Watch',\n 'description' => 'Water-resistant fitness watch with heart rate monitor and GPS tracking.',\n 'currency' => 'USD',\n 'price' => 199.99,\n ],\n ],\n ],\n 'meta' => [\n 'Warehouse' => 'WAREHOUSE-123',\n ],\n 'notes' => 'Order notes',\n ]\n);", + "code": "orders->createOrderUsingWaypointsAndEntityDestinations(\n [\n 'payload' => [\n 'waypoints' => [\n 'Singapore 018971',\n '321 Orchard Rd, Singapore',\n ],\n 'entities' => [\n [\n 'destination' => 0,\n 'name' => 'UltraHD 4K Smart TV',\n 'description' => '65-inch high-definition smart TV with vibrant colors and a sleek design.',\n 'currency' => 'USD',\n 'price' => 1200,\n ],\n [\n 'destination' => 0,\n 'name' => 'Bluetooth Wireless Headphones',\n 'description' => 'Noise-cancelling, over-ear headphones with long-lasting battery life.',\n 'currency' => 'USD',\n 'price' => 250,\n ],\n [\n 'destination' => 1,\n 'name' => 'Smart Fitness Watch',\n 'description' => 'Water-resistant fitness watch with heart rate monitor and GPS tracking.',\n 'currency' => 'USD',\n 'price' => 199.99,\n ],\n ],\n ],\n 'meta' => [\n 'Warehouse' => 'WAREHOUSE-123',\n ],\n 'notes' => 'Order notes',\n ]\n);" + }, + "fleetbase-api-orders-create-an-order-using-only-pickup-dropoff": { + "collection": "Fleetbase API", + "group": "Orders", + "name": "Create an Order using only Pickup Dropoff", + "implementation": "Fleetbase\\Sdk\\Services\\OrderService::createOrderUsingOnlyPickupDropoff", + "variables": [], + "call": "$result = $fleetbase->orders->createOrderUsingOnlyPickupDropoff(\n [\n 'pickup' => 'Singapore 018971',\n 'dropoff' => '321 Orchard Rd, Singapore',\n ]\n);", + "code": "orders->createOrderUsingOnlyPickupDropoff(\n [\n 'pickup' => 'Singapore 018971',\n 'dropoff' => '321 Orchard Rd, Singapore',\n ]\n);" + }, + "fleetbase-api-orders-create-an-order-using-only-waypoints": { + "collection": "Fleetbase API", + "group": "Orders", + "name": "Create an Order using only Waypoints", + "implementation": "Fleetbase\\Sdk\\Services\\OrderService::createOrderUsingOnlyWaypoints", + "variables": [], + "call": "$result = $fleetbase->orders->createOrderUsingOnlyWaypoints(\n [\n 'waypoints' => [\n [\n 1.3521,\n 103.8198,\n ],\n '10 Bayfront Avenue, Singapore 018956',\n '18 Marina Gardens Drive, Singapore 018953',\n '80 Mandai Lake Rd, Singapore 729826',\n '1 Beach Road, Singapore 189673',\n 'Sentosa, Singapore',\n ],\n ]\n);", + "code": "orders->createOrderUsingOnlyWaypoints(\n [\n 'waypoints' => [\n [\n 1.3521,\n 103.8198,\n ],\n '10 Bayfront Avenue, Singapore 018956',\n '18 Marina Gardens Drive, Singapore 018953',\n '80 Mandai Lake Rd, Singapore 729826',\n '1 Beach Road, Singapore 189673',\n 'Sentosa, Singapore',\n ],\n ]\n);" + }, + "fleetbase-api-orders-delete-an-order": { + "collection": "Fleetbase API", + "group": "Orders", + "name": "Delete an Order", + "implementation": "Fleetbase\\Sdk\\Services\\OrderService::deleteOrder", + "variables": { + "orderId": "order_id-fixture" + }, + "call": "$result = $fleetbase->orders->deleteOrder($orderId);", + "code": "orders->deleteOrder($orderId);" + }, + "fleetbase-api-orders-dispatch-an-order": { + "collection": "Fleetbase API", + "group": "Orders", + "name": "Dispatch an Order", + "implementation": "Fleetbase\\Sdk\\Services\\OrderService::dispatchOrder", + "variables": { + "orderId": "order_id-fixture" + }, + "call": "$result = $fleetbase->orders->dispatchOrder($orderId);", + "code": "orders->dispatchOrder($orderId);" + }, + "fleetbase-api-orders-get-editable-entity-fields": { + "collection": "Fleetbase API", + "group": "Orders", + "name": "Get Editable Entity Fields", + "implementation": "Fleetbase\\Sdk\\Services\\OrderService::getEditableEntityFields", + "variables": { + "orderId": "order_id-fixture" + }, + "call": "$result = $fleetbase->orders->getEditableEntityFields($orderId);", + "code": "orders->getEditableEntityFields($orderId);" + }, + "fleetbase-api-orders-get-order-distance-and-time": { + "collection": "Fleetbase API", + "group": "Orders", + "name": "Get Order Distance and Time", + "implementation": "Fleetbase\\Sdk\\Services\\OrderService::getOrderDistanceAndTime", + "variables": { + "orderId": "order_id-fixture" + }, + "call": "$result = $fleetbase->orders->getOrderDistanceAndTime($orderId);", + "code": "orders->getOrderDistanceAndTime($orderId);" + }, + "fleetbase-api-orders-get-order-eta": { + "collection": "Fleetbase API", + "group": "Orders", + "name": "Get Order ETA", + "implementation": "Fleetbase\\Sdk\\Services\\OrderService::getOrderEta", + "variables": { + "orderId": "order_id-fixture" + }, + "call": "$result = $fleetbase->orders->getOrderEta($orderId);", + "code": "orders->getOrderEta($orderId);" + }, + "fleetbase-api-orders-get-order-next-activity": { + "collection": "Fleetbase API", + "group": "Orders", + "name": "Get Order Next Activity", + "implementation": "Fleetbase\\Sdk\\Services\\OrderService::getOrderNextActivity", + "variables": { + "orderId": "order_id-fixture" + }, + "call": "$result = $fleetbase->orders->getOrderNextActivity(\n $orderId,\n [\n 'waypoint' => 'current_waypoint_id-fixture',\n ]\n);", + "code": "orders->getOrderNextActivity(\n $orderId,\n [\n 'waypoint' => 'current_waypoint_id-fixture',\n ]\n);" + }, + "fleetbase-api-orders-get-order-tracker": { + "collection": "Fleetbase API", + "group": "Orders", + "name": "Get Order Tracker", + "implementation": "Fleetbase\\Sdk\\Services\\OrderService::getOrderTracker", + "variables": { + "orderId": "order_id-fixture" + }, + "call": "$result = $fleetbase->orders->getOrderTracker($orderId);", + "code": "orders->getOrderTracker($orderId);" + }, + "fleetbase-api-orders-list-order-comments": { + "collection": "Fleetbase API", + "group": "Orders", + "name": "List Order Comments", + "implementation": "Fleetbase\\Sdk\\Services\\OrderService::listOrderComments", + "variables": { + "orderId": "order_id-fixture" + }, + "call": "$result = $fleetbase->orders->listOrderComments($orderId);", + "code": "orders->listOrderComments($orderId);" + }, + "fleetbase-api-orders-list-order-proofs": { + "collection": "Fleetbase API", + "group": "Orders", + "name": "List Order Proofs", + "implementation": "Fleetbase\\Sdk\\Services\\OrderService::listOrderProofs", + "variables": { + "orderId": "order_id-fixture", + "subjectId": "subject_id-fixture" + }, + "call": "$result = $fleetbase->orders->listOrderProofs($orderId, $subjectId);", + "code": "orders->listOrderProofs($orderId, $subjectId);" + }, + "fleetbase-api-orders-query-orders": { + "collection": "Fleetbase API", + "group": "Orders", + "name": "Query Orders", + "implementation": "Fleetbase\\Sdk\\Services\\OrderService::queryOrders", + "variables": [], + "call": "$result = $fleetbase->orders->queryOrders(\n [\n 'limit' => '25',\n 'offset' => '0',\n 'sort' => 'created_at',\n 'status' => 'created',\n ]\n);", + "code": "orders->queryOrders(\n [\n 'limit' => '25',\n 'offset' => '0',\n 'sort' => 'created_at',\n 'status' => 'created',\n ]\n);" + }, + "fleetbase-api-orders-retrieve-an-order": { + "collection": "Fleetbase API", + "group": "Orders", + "name": "Retrieve an Order", + "implementation": "Fleetbase\\Sdk\\Services\\OrderService::retrieveOrder", + "variables": { + "orderId": "order_id-fixture" + }, + "call": "$result = $fleetbase->orders->retrieveOrder($orderId);", + "code": "orders->retrieveOrder($orderId);" + }, + "fleetbase-api-orders-schedule-an-order": { + "collection": "Fleetbase API", + "group": "Orders", + "name": "Schedule an Order", + "implementation": "Fleetbase\\Sdk\\Services\\OrderService::scheduleOrder", + "variables": { + "orderId": "order_id-fixture" + }, + "call": "$result = $fleetbase->orders->scheduleOrder(\n $orderId,\n [\n 'date' => '2024-02-11',\n 'time' => '8am',\n 'timezone' => 'Asia/Singapore',\n ]\n);", + "code": "orders->scheduleOrder(\n $orderId,\n [\n 'date' => '2024-02-11',\n 'time' => '8am',\n 'timezone' => 'Asia/Singapore',\n ]\n);" + }, + "fleetbase-api-orders-set-order-destination": { + "collection": "Fleetbase API", + "group": "Orders", + "name": "Set Order Destination", + "implementation": "Fleetbase\\Sdk\\Services\\OrderService::setOrderDestination", + "variables": { + "orderId": "order_id-fixture", + "placeId": "waypoint_id-fixture" + }, + "call": "$result = $fleetbase->orders->setOrderDestination($orderId, $placeId);", + "code": "orders->setOrderDestination($orderId, $placeId);" + }, + "fleetbase-api-orders-start-an-order": { + "collection": "Fleetbase API", + "group": "Orders", + "name": "Start an Order", + "implementation": "Fleetbase\\Sdk\\Services\\OrderService::startOrder", + "variables": { + "orderId": "order_id-fixture" + }, + "call": "$result = $fleetbase->orders->startOrder(\n $orderId,\n [\n 'skip_dispatch' => false,\n ]\n);", + "code": "orders->startOrder(\n $orderId,\n [\n 'skip_dispatch' => false,\n ]\n);" + }, + "fleetbase-api-orders-update-order-activity": { + "collection": "Fleetbase API", + "group": "Orders", + "name": "Update Order Activity", + "implementation": "Fleetbase\\Sdk\\Services\\OrderService::updateOrderActivity", + "variables": { + "orderId": "order_id-fixture" + }, + "call": "$result = $fleetbase->orders->updateOrderActivity(\n $orderId,\n [\n 'activity' => 'next_activity-fixture',\n 'skip_dispatch' => false,\n ]\n);", + "code": "orders->updateOrderActivity(\n $orderId,\n [\n 'activity' => 'next_activity-fixture',\n 'skip_dispatch' => false,\n ]\n);" + }, + "fleetbase-api-orders-update-an-order": { + "collection": "Fleetbase API", + "group": "Orders", + "name": "Update an Order", + "implementation": "Fleetbase\\Sdk\\Services\\OrderService::updateOrder", + "variables": { + "orderId": "order_id-fixture" + }, + "call": "$result = $fleetbase->orders->updateOrder(\n $orderId,\n [\n 'service_quote' => 'service_quote_id-fixture',\n ]\n);", + "code": "orders->updateOrder(\n $orderId,\n [\n 'service_quote' => 'service_quote_id-fixture',\n ]\n);" + }, + "fleetbase-api-organizations-get-current-organization": { + "collection": "Fleetbase API", + "group": "Organizations", + "name": "Get Current Organization", + "implementation": "Fleetbase\\Sdk\\Services\\OrganizationService::getCurrentOrganization", + "variables": [], + "call": "$result = $fleetbase->organizations->getCurrentOrganization();", + "code": "organizations->getCurrentOrganization();" + }, + "fleetbase-api-organizations-list-organizations": { + "collection": "Fleetbase API", + "group": "Organizations", + "name": "List Organizations", + "implementation": "Fleetbase\\Sdk\\Services\\OrganizationService::listOrganizations", + "variables": [], + "call": "$result = $fleetbase->organizations->listOrganizations(\n [\n 'limit' => '10',\n 'with_driver_onboard' => 'false',\n ]\n);", + "code": "organizations->listOrganizations(\n [\n 'limit' => '10',\n 'with_driver_onboard' => 'false',\n ]\n);" + }, + "fleetbase-api-parts-create-a-part": { + "collection": "Fleetbase API", + "group": "Parts", + "name": "Create a Part", + "implementation": "Fleetbase\\Sdk\\Services\\PartService::createPart", + "variables": [], + "call": "$result = $fleetbase->parts->createPart(\n [\n 'sku' => 'FLT-OIL-timestamp-fixture',\n 'name' => 'Oil Filter',\n 'quantity_on_hand' => 24,\n 'unit_cost' => 1200,\n 'currency' => 'USD',\n 'status' => 'in_stock',\n ]\n);", + "code": "parts->createPart(\n [\n 'sku' => 'FLT-OIL-timestamp-fixture',\n 'name' => 'Oil Filter',\n 'quantity_on_hand' => 24,\n 'unit_cost' => 1200,\n 'currency' => 'USD',\n 'status' => 'in_stock',\n ]\n);" + }, + "fleetbase-api-parts-delete-a-part": { + "collection": "Fleetbase API", + "group": "Parts", + "name": "Delete a Part", + "implementation": "Fleetbase\\Sdk\\Services\\PartService::deletePart", + "variables": { + "partId": "part_id-fixture" + }, + "call": "$result = $fleetbase->parts->deletePart($partId);", + "code": "parts->deletePart($partId);" + }, + "fleetbase-api-parts-query-parts": { + "collection": "Fleetbase API", + "group": "Parts", + "name": "Query Parts", + "implementation": "Fleetbase\\Sdk\\Services\\PartService::queryParts", + "variables": [], + "call": "$result = $fleetbase->parts->queryParts();", + "code": "parts->queryParts();" + }, + "fleetbase-api-parts-retrieve-a-part": { + "collection": "Fleetbase API", + "group": "Parts", + "name": "Retrieve a Part", + "implementation": "Fleetbase\\Sdk\\Services\\PartService::retrievePart", + "variables": { + "partId": "part_id-fixture" + }, + "call": "$result = $fleetbase->parts->retrievePart($partId);", + "code": "parts->retrievePart($partId);" + }, + "fleetbase-api-parts-update-a-part": { + "collection": "Fleetbase API", + "group": "Parts", + "name": "Update a Part", + "implementation": "Fleetbase\\Sdk\\Services\\PartService::updatePart", + "variables": { + "partId": "part_id-fixture" + }, + "call": "$result = $fleetbase->parts->updatePart(\n $partId,\n [\n 'quantity_on_hand' => 18,\n ]\n);", + "code": "parts->updatePart(\n $partId,\n [\n 'quantity_on_hand' => 18,\n ]\n);" + }, + "fleetbase-api-payloads-create-a-payload": { + "collection": "Fleetbase API", + "group": "Payloads", + "name": "Create a Payload", + "implementation": "Fleetbase\\Sdk\\Services\\PayloadService::createPayload", + "variables": [], + "call": "$result = $fleetbase->payloads->createPayload(\n [\n 'pickup' => [\n 'street1' => '10 Bayfront Avenue',\n 'city' => 'Singapore',\n 'postal_code' => '018956',\n 'country' => 'SG',\n ],\n 'dropoff' => [\n 'street1' => '80 Mandai Lake Rd',\n 'city' => 'Singapore',\n 'postal_code' => '729826',\n 'country' => 'SG',\n ],\n 'type' => 'food_delivery',\n ]\n);", + "code": "payloads->createPayload(\n [\n 'pickup' => [\n 'street1' => '10 Bayfront Avenue',\n 'city' => 'Singapore',\n 'postal_code' => '018956',\n 'country' => 'SG',\n ],\n 'dropoff' => [\n 'street1' => '80 Mandai Lake Rd',\n 'city' => 'Singapore',\n 'postal_code' => '729826',\n 'country' => 'SG',\n ],\n 'type' => 'food_delivery',\n ]\n);" + }, + "fleetbase-api-payloads-delete-a-payload": { + "collection": "Fleetbase API", + "group": "Payloads", + "name": "Delete a Payload", + "implementation": "Fleetbase\\Sdk\\Services\\PayloadService::deletePayload", + "variables": { + "payloadId": "payload_id-fixture" + }, + "call": "$result = $fleetbase->payloads->deletePayload($payloadId);", + "code": "payloads->deletePayload($payloadId);" + }, + "fleetbase-api-payloads-query-payloads": { + "collection": "Fleetbase API", + "group": "Payloads", + "name": "Query Payloads", + "implementation": "Fleetbase\\Sdk\\Services\\PayloadService::queryPayloads", + "variables": [], + "call": "$result = $fleetbase->payloads->queryPayloads(\n [\n 'limit' => '25',\n 'offset' => '0',\n 'sort' => 'created_at',\n ]\n);", + "code": "payloads->queryPayloads(\n [\n 'limit' => '25',\n 'offset' => '0',\n 'sort' => 'created_at',\n ]\n);" + }, + "fleetbase-api-payloads-retrieve-a-payload": { + "collection": "Fleetbase API", + "group": "Payloads", + "name": "Retrieve a Payload", + "implementation": "Fleetbase\\Sdk\\Services\\PayloadService::retrievePayload", + "variables": { + "payloadId": "payload_id-fixture" + }, + "call": "$result = $fleetbase->payloads->retrievePayload($payloadId);", + "code": "payloads->retrievePayload($payloadId);" + }, + "fleetbase-api-payloads-update-a-payload": { + "collection": "Fleetbase API", + "group": "Payloads", + "name": "Update a Payload", + "implementation": "Fleetbase\\Sdk\\Services\\PayloadService::updatePayload", + "variables": { + "payloadId": "payload_id-fixture" + }, + "call": "$result = $fleetbase->payloads->updatePayload(\n $payloadId,\n [\n 'pickup' => [\n 'street1' => '10 Bayfront Avenue',\n 'city' => 'Singapore',\n 'postal_code' => '018956',\n 'country' => 'SG',\n ],\n 'dropoff' => [\n 'street1' => '80 Mandai Lake Rd',\n 'city' => 'Singapore',\n 'postal_code' => '729826',\n 'country' => 'SG',\n ],\n 'entities' => [\n [\n 'name' => 'UltraHD 4K Smart TV',\n 'description' => '65-inch high-definition smart TV with vibrant colors and a sleek design.',\n 'currency' => 'USD',\n 'price' => 1200,\n ],\n [\n 'name' => 'Bluetooth Wireless Headphones',\n 'description' => 'Noise-cancelling, over-ear headphones with long-lasting battery life.',\n 'currency' => 'USD',\n 'price' => 250,\n ],\n [\n 'name' => 'Smart Fitness Watch',\n 'description' => 'Water-resistant fitness watch with heart rate monitor and GPS tracking.',\n 'currency' => 'USD',\n 'price' => 199.99,\n ],\n ],\n ]\n);", + "code": "payloads->updatePayload(\n $payloadId,\n [\n 'pickup' => [\n 'street1' => '10 Bayfront Avenue',\n 'city' => 'Singapore',\n 'postal_code' => '018956',\n 'country' => 'SG',\n ],\n 'dropoff' => [\n 'street1' => '80 Mandai Lake Rd',\n 'city' => 'Singapore',\n 'postal_code' => '729826',\n 'country' => 'SG',\n ],\n 'entities' => [\n [\n 'name' => 'UltraHD 4K Smart TV',\n 'description' => '65-inch high-definition smart TV with vibrant colors and a sleek design.',\n 'currency' => 'USD',\n 'price' => 1200,\n ],\n [\n 'name' => 'Bluetooth Wireless Headphones',\n 'description' => 'Noise-cancelling, over-ear headphones with long-lasting battery life.',\n 'currency' => 'USD',\n 'price' => 250,\n ],\n [\n 'name' => 'Smart Fitness Watch',\n 'description' => 'Water-resistant fitness watch with heart rate monitor and GPS tracking.',\n 'currency' => 'USD',\n 'price' => 199.99,\n ],\n ],\n ]\n);" + }, + "fleetbase-api-places-create-a-place": { + "collection": "Fleetbase API", + "group": "Places", + "name": "Create a Place", + "implementation": "Fleetbase\\Sdk\\Services\\PlaceService::createPlace", + "variables": [], + "call": "$result = $fleetbase->places->createPlace(\n [\n 'name' => 'Central Park',\n 'street1' => '830 5th Ave',\n 'city' => 'New York',\n 'province' => 'New York',\n 'postal_code' => '10065',\n 'neighborhood' => 'Manhattan',\n 'district' => 'Midtown',\n 'building' => 'Park Area',\n 'country' => 'US',\n 'phone' => '+12123106600',\n 'type' => 'Park',\n ]\n);", + "code": "places->createPlace(\n [\n 'name' => 'Central Park',\n 'street1' => '830 5th Ave',\n 'city' => 'New York',\n 'province' => 'New York',\n 'postal_code' => '10065',\n 'neighborhood' => 'Manhattan',\n 'district' => 'Midtown',\n 'building' => 'Park Area',\n 'country' => 'US',\n 'phone' => '+12123106600',\n 'type' => 'Park',\n ]\n);" + }, + "fleetbase-api-places-delete-a-place": { + "collection": "Fleetbase API", + "group": "Places", + "name": "Delete a Place", + "implementation": "Fleetbase\\Sdk\\Services\\PlaceService::deletePlace", + "variables": { + "placeId": "place_id-fixture" + }, + "call": "$result = $fleetbase->places->deletePlace($placeId);", + "code": "places->deletePlace($placeId);" + }, + "fleetbase-api-places-list-all-places": { + "collection": "Fleetbase API", + "group": "Places", + "name": "List all Places", + "implementation": "Fleetbase\\Sdk\\Services\\PlaceService::listAllPlaces", + "variables": [], + "call": "$result = $fleetbase->places->listAllPlaces(\n [\n 'limit' => '25',\n 'offset' => '0',\n 'sort' => 'created_at',\n ]\n);", + "code": "places->listAllPlaces(\n [\n 'limit' => '25',\n 'offset' => '0',\n 'sort' => 'created_at',\n ]\n);" + }, + "fleetbase-api-places-query-places": { + "collection": "Fleetbase API", + "group": "Places", + "name": "Query Places", + "implementation": "Fleetbase\\Sdk\\Services\\PlaceService::queryPlaces", + "variables": [], + "call": "$result = $fleetbase->places->queryPlaces(\n [\n 'query' => 'place_name-fixture',\n 'limit' => '25',\n 'offset' => '',\n 'sort' => 'created_at',\n ]\n);", + "code": "places->queryPlaces(\n [\n 'query' => 'place_name-fixture',\n 'limit' => '25',\n 'offset' => '',\n 'sort' => 'created_at',\n ]\n);" + }, + "fleetbase-api-places-retrieve-a-place": { + "collection": "Fleetbase API", + "group": "Places", + "name": "Retrieve a Place", + "implementation": "Fleetbase\\Sdk\\Services\\PlaceService::retrievePlace", + "variables": { + "placeId": "place_id-fixture" + }, + "call": "$result = $fleetbase->places->retrievePlace($placeId);", + "code": "places->retrievePlace($placeId);" + }, + "fleetbase-api-places-search-places": { + "collection": "Fleetbase API", + "group": "Places", + "name": "Search Places", + "implementation": "Fleetbase\\Sdk\\Services\\PlaceService::searchPlaces", + "variables": [], + "call": "$result = $fleetbase->places->searchPlaces(\n [\n 'query' => 'place_query-fixture',\n 'll' => 'place_ll-fixture',\n 'locale' => 'locale-fixture',\n ]\n);", + "code": "places->searchPlaces(\n [\n 'query' => 'place_query-fixture',\n 'll' => 'place_ll-fixture',\n 'locale' => 'locale-fixture',\n ]\n);" + }, + "fleetbase-api-places-update-a-place": { + "collection": "Fleetbase API", + "group": "Places", + "name": "Update a Place", + "implementation": "Fleetbase\\Sdk\\Services\\PlaceService::updatePlace", + "variables": { + "placeId": "place_id-fixture" + }, + "call": "$result = $fleetbase->places->updatePlace(\n $placeId,\n [\n 'name' => 'Central Park Edit',\n 'street1' => '830 5th Ave a ',\n 'city' => 'New York',\n 'province' => 'New York',\n 'postal_code' => '10065',\n 'neighborhood' => 'Manhattan',\n 'district' => 'Midtown',\n 'building' => 'Park Area',\n 'country' => 'US',\n 'phone' => '+12123106600',\n 'type' => 'Park',\n ]\n);", + "code": "places->updatePlace(\n $placeId,\n [\n 'name' => 'Central Park Edit',\n 'street1' => '830 5th Ave a ',\n 'city' => 'New York',\n 'province' => 'New York',\n 'postal_code' => '10065',\n 'neighborhood' => 'Manhattan',\n 'district' => 'Midtown',\n 'building' => 'Park Area',\n 'country' => 'US',\n 'phone' => '+12123106600',\n 'type' => 'Park',\n ]\n);" + }, + "fleetbase-api-purchase-rates-create-a-purchase-rate": { + "collection": "Fleetbase API", + "group": "Purchase Rates", + "name": "Create a Purchase Rate", + "implementation": "Fleetbase\\Sdk\\Services\\PurchaseRateService::createPurchaseRate", + "variables": [], + "call": "$result = $fleetbase->purchaseRates->createPurchaseRate(\n [\n 'service_quote' => 'service_quote_id-fixture',\n ]\n);", + "code": "purchaseRates->createPurchaseRate(\n [\n 'service_quote' => 'service_quote_id-fixture',\n ]\n);" + }, + "fleetbase-api-purchase-rates-query-purchase-rates": { + "collection": "Fleetbase API", + "group": "Purchase Rates", + "name": "Query Purchase Rates", + "implementation": "Fleetbase\\Sdk\\Services\\PurchaseRateService::queryPurchaseRates", + "variables": [], + "call": "$result = $fleetbase->purchaseRates->queryPurchaseRates(\n [\n 'limit' => '25',\n 'offset' => '0',\n 'sort' => 'created_at',\n ]\n);", + "code": "purchaseRates->queryPurchaseRates(\n [\n 'limit' => '25',\n 'offset' => '0',\n 'sort' => 'created_at',\n ]\n);" + }, + "fleetbase-api-purchase-rates-retrieve-a-purchase-rate": { + "collection": "Fleetbase API", + "group": "Purchase Rates", + "name": "Retrieve a Purchase Rate", + "implementation": "Fleetbase\\Sdk\\Services\\PurchaseRateService::retrievePurchaseRate", + "variables": { + "purchaseRateId": "purchase_rate_id-fixture" + }, + "call": "$result = $fleetbase->purchaseRates->retrievePurchaseRate($purchaseRateId);", + "code": "purchaseRates->retrievePurchaseRate($purchaseRateId);" + }, + "fleetbase-api-sensors-create-a-sensor": { + "collection": "Fleetbase API", + "group": "Sensors", + "name": "Create a Sensor", + "implementation": "Fleetbase\\Sdk\\Services\\SensorService::createSensor", + "variables": [], + "call": "$result = $fleetbase->sensors->createSensor(\n [\n 'name' => 'Cargo Temperature',\n 'type' => 'temperature',\n 'device' => 'device_id-fixture',\n 'unit' => 'celsius',\n 'status' => 'active',\n 'min_threshold' => 0,\n 'max_threshold' => 8,\n ]\n);", + "code": "sensors->createSensor(\n [\n 'name' => 'Cargo Temperature',\n 'type' => 'temperature',\n 'device' => 'device_id-fixture',\n 'unit' => 'celsius',\n 'status' => 'active',\n 'min_threshold' => 0,\n 'max_threshold' => 8,\n ]\n);" + }, + "fleetbase-api-sensors-delete-a-sensor": { + "collection": "Fleetbase API", + "group": "Sensors", + "name": "Delete a Sensor", + "implementation": "Fleetbase\\Sdk\\Services\\SensorService::deleteSensor", + "variables": { + "sensorId": "sensor_id-fixture" + }, + "call": "$result = $fleetbase->sensors->deleteSensor($sensorId);", + "code": "sensors->deleteSensor($sensorId);" + }, + "fleetbase-api-sensors-query-sensors": { + "collection": "Fleetbase API", + "group": "Sensors", + "name": "Query Sensors", + "implementation": "Fleetbase\\Sdk\\Services\\SensorService::querySensors", + "variables": [], + "call": "$result = $fleetbase->sensors->querySensors();", + "code": "sensors->querySensors();" + }, + "fleetbase-api-sensors-retrieve-a-sensor": { + "collection": "Fleetbase API", + "group": "Sensors", + "name": "Retrieve a Sensor", + "implementation": "Fleetbase\\Sdk\\Services\\SensorService::retrieveSensor", + "variables": { + "sensorId": "sensor_id-fixture" + }, + "call": "$result = $fleetbase->sensors->retrieveSensor($sensorId);", + "code": "sensors->retrieveSensor($sensorId);" + }, + "fleetbase-api-sensors-update-a-sensor": { + "collection": "Fleetbase API", + "group": "Sensors", + "name": "Update a Sensor", + "implementation": "Fleetbase\\Sdk\\Services\\SensorService::updateSensor", + "variables": { + "sensorId": "sensor_id-fixture" + }, + "call": "$result = $fleetbase->sensors->updateSensor(\n $sensorId,\n [\n 'last_value' => '4.2',\n 'last_reading_at' => '2026-05-07T08:30:00Z',\n ]\n);", + "code": "sensors->updateSensor(\n $sensorId,\n [\n 'last_value' => '4.2',\n 'last_reading_at' => '2026-05-07T08:30:00Z',\n ]\n);" + }, + "fleetbase-api-service-areas-create-a-service-area": { + "collection": "Fleetbase API", + "group": "Service Areas", + "name": "Create a Service Area", + "implementation": "Fleetbase\\Sdk\\Services\\ServiceAreaService::createServiceArea", + "variables": [], + "call": "$result = $fleetbase->serviceAreas->createServiceArea(\n [\n 'name' => 'Singapore',\n 'type' => 'city',\n 'latitude' => '1.3521',\n 'longitude' => '103.8198',\n 'radius' => '30000',\n 'country' => 'SG',\n 'status' => 'active',\n ]\n);", + "code": "serviceAreas->createServiceArea(\n [\n 'name' => 'Singapore',\n 'type' => 'city',\n 'latitude' => '1.3521',\n 'longitude' => '103.8198',\n 'radius' => '30000',\n 'country' => 'SG',\n 'status' => 'active',\n ]\n);" + }, + "fleetbase-api-service-areas-delete-a-service-area": { + "collection": "Fleetbase API", + "group": "Service Areas", + "name": "Delete a Service Area", + "implementation": "Fleetbase\\Sdk\\Services\\ServiceAreaService::deleteServiceArea", + "variables": { + "serviceAreaId": "service_area_id-fixture" + }, + "call": "$result = $fleetbase->serviceAreas->deleteServiceArea($serviceAreaId);", + "code": "serviceAreas->deleteServiceArea($serviceAreaId);" + }, + "fleetbase-api-service-areas-query-service-areas": { + "collection": "Fleetbase API", + "group": "Service Areas", + "name": "Query Service Areas", + "implementation": "Fleetbase\\Sdk\\Services\\ServiceAreaService::queryServiceAreas", + "variables": [], + "call": "$result = $fleetbase->serviceAreas->queryServiceAreas(\n [\n 'name' => 'service_area_name-fixture',\n ]\n);", + "code": "serviceAreas->queryServiceAreas(\n [\n 'name' => 'service_area_name-fixture',\n ]\n);" + }, + "fleetbase-api-service-areas-retrieve-a-service-area": { + "collection": "Fleetbase API", + "group": "Service Areas", + "name": "Retrieve a Service Area", + "implementation": "Fleetbase\\Sdk\\Services\\ServiceAreaService::retrieveServiceArea", + "variables": { + "serviceAreaId": "service_area_id-fixture" + }, + "call": "$result = $fleetbase->serviceAreas->retrieveServiceArea($serviceAreaId);", + "code": "serviceAreas->retrieveServiceArea($serviceAreaId);" + }, + "fleetbase-api-service-areas-update-a-service-area": { + "collection": "Fleetbase API", + "group": "Service Areas", + "name": "Update a Service Area", + "implementation": "Fleetbase\\Sdk\\Services\\ServiceAreaService::updateServiceArea", + "variables": { + "serviceAreaId": "service_area_id-fixture" + }, + "call": "$result = $fleetbase->serviceAreas->updateServiceArea(\n $serviceAreaId,\n [\n 'status' => 'active',\n ]\n);", + "code": "serviceAreas->updateServiceArea(\n $serviceAreaId,\n [\n 'status' => 'active',\n ]\n);" + }, + "fleetbase-api-service-quotes-query-service-quotes": { + "collection": "Fleetbase API", + "group": "Service Quotes", + "name": "Query Service Quotes", + "implementation": "Fleetbase\\Sdk\\Services\\ServiceQuoteService::queryServiceQuotes", + "variables": [], + "call": "$result = $fleetbase->serviceQuotes->queryServiceQuotes(\n [\n 'payload' => 'payload_id-fixture',\n ]\n);", + "code": "serviceQuotes->queryServiceQuotes(\n [\n 'payload' => 'payload_id-fixture',\n ]\n);" + }, + "fleetbase-api-service-quotes-retrieve-a-service-quote": { + "collection": "Fleetbase API", + "group": "Service Quotes", + "name": "Retrieve a Service Quote", + "implementation": "Fleetbase\\Sdk\\Services\\ServiceQuoteService::retrieveServiceQuote", + "variables": { + "serviceQuoteId": "service_quote_id-fixture" + }, + "call": "$result = $fleetbase->serviceQuotes->retrieveServiceQuote($serviceQuoteId);", + "code": "serviceQuotes->retrieveServiceQuote($serviceQuoteId);" + }, + "fleetbase-api-service-rates-create-a-service-rate": { + "collection": "Fleetbase API", + "group": "Service Rates", + "name": "Create a Service Rate", + "implementation": "Fleetbase\\Sdk\\Services\\ServiceRateService::createServiceRate", + "variables": [], + "call": "$result = $fleetbase->serviceRates->createServiceRate(\n [\n 'service_name' => 'Food Delivery',\n 'service_type' => 'food_delivery',\n 'rate_calculation_method' => 'per_meter',\n 'currency' => 'USD',\n 'base_fee' => 10,\n 'per_meter_unit' => 'km',\n 'per_meter_flat_rate_fee' => 25,\n 'has_cod_fee' => true,\n 'cod_calculation_method' => 'percentage',\n 'cod_flat_fee' => 1,\n 'cod_percent' => 0,\n 'has_peak_hours_fee' => true,\n 'peak_hours_calculation_method' => 'percentage',\n 'peak_hours_flat_fee' => 3,\n 'peak_hours_percent' => 0,\n 'peak_hours_start' => '17:00',\n 'peak_hours_end' => '18:45',\n 'duration_terms' => 'Standard',\n 'estimated_days' => 3,\n ]\n);", + "code": "serviceRates->createServiceRate(\n [\n 'service_name' => 'Food Delivery',\n 'service_type' => 'food_delivery',\n 'rate_calculation_method' => 'per_meter',\n 'currency' => 'USD',\n 'base_fee' => 10,\n 'per_meter_unit' => 'km',\n 'per_meter_flat_rate_fee' => 25,\n 'has_cod_fee' => true,\n 'cod_calculation_method' => 'percentage',\n 'cod_flat_fee' => 1,\n 'cod_percent' => 0,\n 'has_peak_hours_fee' => true,\n 'peak_hours_calculation_method' => 'percentage',\n 'peak_hours_flat_fee' => 3,\n 'peak_hours_percent' => 0,\n 'peak_hours_start' => '17:00',\n 'peak_hours_end' => '18:45',\n 'duration_terms' => 'Standard',\n 'estimated_days' => 3,\n ]\n);" + }, + "fleetbase-api-service-rates-delete-a-service-rate": { + "collection": "Fleetbase API", + "group": "Service Rates", + "name": "Delete a Service Rate", + "implementation": "Fleetbase\\Sdk\\Services\\ServiceRateService::deleteServiceRate", + "variables": { + "serviceRateId": "service_rate_id-fixture" + }, + "call": "$result = $fleetbase->serviceRates->deleteServiceRate($serviceRateId);", + "code": "serviceRates->deleteServiceRate($serviceRateId);" + }, + "fleetbase-api-service-rates-query-service-rates": { + "collection": "Fleetbase API", + "group": "Service Rates", + "name": "Query Service Rates", + "implementation": "Fleetbase\\Sdk\\Services\\ServiceRateService::queryServiceRates", + "variables": [], + "call": "$result = $fleetbase->serviceRates->queryServiceRates(\n [\n 'limit' => '25',\n 'offset' => '0',\n 'currency' => 'USD',\n ]\n);", + "code": "serviceRates->queryServiceRates(\n [\n 'limit' => '25',\n 'offset' => '0',\n 'currency' => 'USD',\n ]\n);" + }, + "fleetbase-api-service-rates-retrieve-a-service-rate": { + "collection": "Fleetbase API", + "group": "Service Rates", + "name": "Retrieve a Service Rate", + "implementation": "Fleetbase\\Sdk\\Services\\ServiceRateService::retrieveServiceRate", + "variables": { + "serviceRateId": "service_rate_id-fixture" + }, + "call": "$result = $fleetbase->serviceRates->retrieveServiceRate($serviceRateId);", + "code": "serviceRates->retrieveServiceRate($serviceRateId);" + }, + "fleetbase-api-service-rates-update-a-service-rate": { + "collection": "Fleetbase API", + "group": "Service Rates", + "name": "Update a Service Rate", + "implementation": "Fleetbase\\Sdk\\Services\\ServiceRateService::updateServiceRate", + "variables": { + "serviceRateId": "service_rate_id-fixture" + }, + "call": "$result = $fleetbase->serviceRates->updateServiceRate(\n $serviceRateId,\n [\n 'currency' => 'SGD',\n 'base_fee' => 12.66,\n 'estimated_days' => 6,\n ]\n);", + "code": "serviceRates->updateServiceRate(\n $serviceRateId,\n [\n 'currency' => 'SGD',\n 'base_fee' => 12.66,\n 'estimated_days' => 6,\n ]\n);" + }, + "fleetbase-api-tracking-numbers-create-a-tracking-number": { + "collection": "Fleetbase API", + "group": "Tracking Numbers", + "name": "Create a Tracking Number", + "implementation": "Fleetbase\\Sdk\\Services\\TrackingNumberService::createTrackingNumber", + "variables": [], + "call": "$result = $fleetbase->trackingNumbers->createTrackingNumber(\n [\n 'region' => 'SG',\n 'owner' => 'order_id-fixture',\n ]\n);", + "code": "trackingNumbers->createTrackingNumber(\n [\n 'region' => 'SG',\n 'owner' => 'order_id-fixture',\n ]\n);" + }, + "fleetbase-api-tracking-numbers-decode-tracking-number-qr": { + "collection": "Fleetbase API", + "group": "Tracking Numbers", + "name": "Decode Tracking Number QR", + "implementation": "Fleetbase\\Sdk\\Services\\TrackingNumberService::decodeTrackingNumberQr", + "variables": [], + "call": "$result = $fleetbase->trackingNumbers->decodeTrackingNumberQr(\n [\n 'code' => 'qr_code-fixture',\n ]\n);", + "code": "trackingNumbers->decodeTrackingNumberQr(\n [\n 'code' => 'qr_code-fixture',\n ]\n);" + }, + "fleetbase-api-tracking-numbers-delete-a-tracking-number": { + "collection": "Fleetbase API", + "group": "Tracking Numbers", + "name": "Delete a Tracking Number", + "implementation": "Fleetbase\\Sdk\\Services\\TrackingNumberService::deleteTrackingNumber", + "variables": { + "trackingNumberId": "tracking_number_id-fixture" + }, + "call": "$result = $fleetbase->trackingNumbers->deleteTrackingNumber($trackingNumberId);", + "code": "trackingNumbers->deleteTrackingNumber($trackingNumberId);" + }, + "fleetbase-api-tracking-numbers-query-tracking-numbers": { + "collection": "Fleetbase API", + "group": "Tracking Numbers", + "name": "Query Tracking Numbers", + "implementation": "Fleetbase\\Sdk\\Services\\TrackingNumberService::queryTrackingNumbers", + "variables": [], + "call": "$result = $fleetbase->trackingNumbers->queryTrackingNumbers(\n [\n 'query' => 'SG',\n 'limit' => '25',\n 'offset' => '0',\n 'sort' => 'created_at',\n ]\n);", + "code": "trackingNumbers->queryTrackingNumbers(\n [\n 'query' => 'SG',\n 'limit' => '25',\n 'offset' => '0',\n 'sort' => 'created_at',\n ]\n);" + }, + "fleetbase-api-tracking-numbers-retrieve-a-tracking-number": { + "collection": "Fleetbase API", + "group": "Tracking Numbers", + "name": "Retrieve a Tracking Number", + "implementation": "Fleetbase\\Sdk\\Services\\TrackingNumberService::retrieveTrackingNumber", + "variables": { + "trackingNumberId": "tracking_number_id-fixture" + }, + "call": "$result = $fleetbase->trackingNumbers->retrieveTrackingNumber($trackingNumberId);", + "code": "trackingNumbers->retrieveTrackingNumber($trackingNumberId);" + }, + "fleetbase-api-tracking-statuses-create-a-tracking-status": { + "collection": "Fleetbase API", + "group": "Tracking Statuses", + "name": "Create a Tracking Status", + "implementation": "Fleetbase\\Sdk\\Services\\TrackingStatusService::createTrackingStatus", + "variables": [], + "call": "$result = $fleetbase->trackingStatuses->createTrackingStatus(\n [\n 'status' => 'Delivery is en-route',\n 'code' => 'delivery-en-route',\n 'details' => 'Our driver has picked up your order and is on the way to your address!',\n 'tracking_number' => 'tracking_number_id-fixture',\n 'location' => [\n 1.3521,\n 103.8198,\n ],\n 'city' => 'Singapore',\n ]\n);", + "code": "trackingStatuses->createTrackingStatus(\n [\n 'status' => 'Delivery is en-route',\n 'code' => 'delivery-en-route',\n 'details' => 'Our driver has picked up your order and is on the way to your address!',\n 'tracking_number' => 'tracking_number_id-fixture',\n 'location' => [\n 1.3521,\n 103.8198,\n ],\n 'city' => 'Singapore',\n ]\n);" + }, + "fleetbase-api-tracking-statuses-delete-a-tracking-status": { + "collection": "Fleetbase API", + "group": "Tracking Statuses", + "name": "Delete a Tracking Status", + "implementation": "Fleetbase\\Sdk\\Services\\TrackingStatusService::deleteTrackingStatus", + "variables": { + "trackingStatusId": "tracking_status_id-fixture" + }, + "call": "$result = $fleetbase->trackingStatuses->deleteTrackingStatus($trackingStatusId);", + "code": "trackingStatuses->deleteTrackingStatus($trackingStatusId);" + }, + "fleetbase-api-tracking-statuses-query-tracking-statuses": { + "collection": "Fleetbase API", + "group": "Tracking Statuses", + "name": "Query Tracking Statuses", + "implementation": "Fleetbase\\Sdk\\Services\\TrackingStatusService::queryTrackingStatuses", + "variables": [], + "call": "$result = $fleetbase->trackingStatuses->queryTrackingStatuses(\n [\n 'limit' => '25',\n 'tracking_number' => 'tracking_number_id-fixture',\n ]\n);", + "code": "trackingStatuses->queryTrackingStatuses(\n [\n 'limit' => '25',\n 'tracking_number' => 'tracking_number_id-fixture',\n ]\n);" + }, + "fleetbase-api-tracking-statuses-retrieve-a-tracking-status": { + "collection": "Fleetbase API", + "group": "Tracking Statuses", + "name": "Retrieve a Tracking Status", + "implementation": "Fleetbase\\Sdk\\Services\\TrackingStatusService::retrieveTrackingStatus", + "variables": { + "trackingStatusId": "tracking_status_id-fixture" + }, + "call": "$result = $fleetbase->trackingStatuses->retrieveTrackingStatus($trackingStatusId);", + "code": "trackingStatuses->retrieveTrackingStatus($trackingStatusId);" + }, + "fleetbase-api-tracking-statuses-update-a-tracking-status": { + "collection": "Fleetbase API", + "group": "Tracking Statuses", + "name": "Update a Tracking Status", + "implementation": "Fleetbase\\Sdk\\Services\\TrackingStatusService::updateTrackingStatus", + "variables": { + "trackingStatusId": "tracking_status_id-fixture" + }, + "call": "$result = $fleetbase->trackingStatuses->updateTrackingStatus(\n $trackingStatusId,\n [\n 'country' => 'SG',\n ]\n);", + "code": "trackingStatuses->updateTrackingStatus(\n $trackingStatusId,\n [\n 'country' => 'SG',\n ]\n);" + }, + "fleetbase-api-vehicles-create-a-vehicle": { + "collection": "Fleetbase API", + "group": "Vehicles", + "name": "Create a Vehicle", + "implementation": "Fleetbase\\Sdk\\Services\\VehicleService::createVehicle", + "variables": [], + "call": "$result = $fleetbase->vehicles->createVehicle(\n [\n 'vin' => '1GCGSBEA0G1111111',\n 'year' => 2023,\n 'make' => 'Toyota',\n 'model' => 'Camry',\n 'trim' => 'SE',\n 'plate_number' => 'ABC123',\n 'status' => 'maintenance',\n 'online' => false,\n ]\n);", + "code": "vehicles->createVehicle(\n [\n 'vin' => '1GCGSBEA0G1111111',\n 'year' => 2023,\n 'make' => 'Toyota',\n 'model' => 'Camry',\n 'trim' => 'SE',\n 'plate_number' => 'ABC123',\n 'status' => 'maintenance',\n 'online' => false,\n ]\n);" + }, + "fleetbase-api-vehicles-delete-a-vehicle": { + "collection": "Fleetbase API", + "group": "Vehicles", + "name": "Delete a Vehicle", + "implementation": "Fleetbase\\Sdk\\Services\\VehicleService::deleteVehicle", + "variables": { + "vehicleId": "vehicle_id-fixture" + }, + "call": "$result = $fleetbase->vehicles->deleteVehicle($vehicleId);", + "code": "vehicles->deleteVehicle($vehicleId);" + }, + "fleetbase-api-vehicles-query-vehicles": { + "collection": "Fleetbase API", + "group": "Vehicles", + "name": "Query Vehicles", + "implementation": "Fleetbase\\Sdk\\Services\\VehicleService::queryVehicles", + "variables": [], + "call": "$result = $fleetbase->vehicles->queryVehicles(\n [\n 'query' => 'vehicle_name-fixture',\n 'limit' => '25',\n 'offset' => '0',\n 'sort' => 'created_at',\n ]\n);", + "code": "vehicles->queryVehicles(\n [\n 'query' => 'vehicle_name-fixture',\n 'limit' => '25',\n 'offset' => '0',\n 'sort' => 'created_at',\n ]\n);" + }, + "fleetbase-api-vehicles-retrieve-a-vehicle": { + "collection": "Fleetbase API", + "group": "Vehicles", + "name": "Retrieve a Vehicle", + "implementation": "Fleetbase\\Sdk\\Services\\VehicleService::retrieveVehicle", + "variables": { + "vehicleId": "vehicle_id-fixture" + }, + "call": "$result = $fleetbase->vehicles->retrieveVehicle($vehicleId);", + "code": "vehicles->retrieveVehicle($vehicleId);" + }, + "fleetbase-api-vehicles-track-vehicle": { + "collection": "Fleetbase API", + "group": "Vehicles", + "name": "Track Vehicle", + "implementation": "Fleetbase\\Sdk\\Services\\VehicleService::trackVehicle", + "variables": { + "vehicleId": "vehicle_id-fixture" + }, + "call": "$result = $fleetbase->vehicles->trackVehicle(\n $vehicleId,\n [\n 'latitude' => -19.288195,\n 'longitude' => 146.795965,\n 'speed' => 100,\n ]\n);", + "code": "vehicles->trackVehicle(\n $vehicleId,\n [\n 'latitude' => -19.288195,\n 'longitude' => 146.795965,\n 'speed' => 100,\n ]\n);" + }, + "fleetbase-api-vehicles-update-a-vehicle": { + "collection": "Fleetbase API", + "group": "Vehicles", + "name": "Update a Vehicle", + "implementation": "Fleetbase\\Sdk\\Services\\VehicleService::updateVehicle", + "variables": { + "vehicleId": "vehicle_id-fixture" + }, + "call": "$result = $fleetbase->vehicles->updateVehicle(\n $vehicleId,\n [\n 'plate_number' => 'ABC123',\n 'status' => 'operational',\n 'latitude' => 40.7484,\n 'longitude' => -73.9857,\n 'speed' => 90,\n ]\n);", + "code": "vehicles->updateVehicle(\n $vehicleId,\n [\n 'plate_number' => 'ABC123',\n 'status' => 'operational',\n 'latitude' => 40.7484,\n 'longitude' => -73.9857,\n 'speed' => 90,\n ]\n);" + }, + "fleetbase-api-vendors-create-a-vendor": { + "collection": "Fleetbase API", + "group": "Vendors", + "name": "Create a Vendor", + "implementation": "Fleetbase\\Sdk\\Services\\VendorService::createVendor", + "variables": [], + "call": "$result = $fleetbase->vendors->createVendor(\n [\n 'name' => 'ABC Corporation',\n 'type' => 'Supplier',\n 'email' => 'abc@example.com',\n 'phone' => '1234567890',\n ]\n);", + "code": "vendors->createVendor(\n [\n 'name' => 'ABC Corporation',\n 'type' => 'Supplier',\n 'email' => 'abc@example.com',\n 'phone' => '1234567890',\n ]\n);" + }, + "fleetbase-api-vendors-delete-a-vendor": { + "collection": "Fleetbase API", + "group": "Vendors", + "name": "Delete a Vendor", + "implementation": "Fleetbase\\Sdk\\Services\\VendorService::deleteVendor", + "variables": { + "vendorId": "vendor_id-fixture" + }, + "call": "$result = $fleetbase->vendors->deleteVendor($vendorId);", + "code": "vendors->deleteVendor($vendorId);" + }, + "fleetbase-api-vendors-query-vendors": { + "collection": "Fleetbase API", + "group": "Vendors", + "name": "Query Vendors", + "implementation": "Fleetbase\\Sdk\\Services\\VendorService::queryVendors", + "variables": [], + "call": "$result = $fleetbase->vendors->queryVendors(\n [\n 'id' => 'vendor_id-fixture',\n ]\n);", + "code": "vendors->queryVendors(\n [\n 'id' => 'vendor_id-fixture',\n ]\n);" + }, + "fleetbase-api-vendors-retrieve-a-vendor": { + "collection": "Fleetbase API", + "group": "Vendors", + "name": "Retrieve a Vendor", + "implementation": "Fleetbase\\Sdk\\Services\\VendorService::retrieveVendor", + "variables": { + "vendorId": "vendor_id-fixture" + }, + "call": "$result = $fleetbase->vendors->retrieveVendor($vendorId);", + "code": "vendors->retrieveVendor($vendorId);" + }, + "fleetbase-api-vendors-update-a-vendor": { + "collection": "Fleetbase API", + "group": "Vendors", + "name": "Update a Vendor", + "implementation": "Fleetbase\\Sdk\\Services\\VendorService::updateVendor", + "variables": { + "vendorId": "vendor_id-fixture" + }, + "call": "$result = $fleetbase->vendors->updateVendor(\n $vendorId,\n [\n 'name' => 'ABC Corporation',\n 'type' => 'Supplier',\n 'email' => 'abc@example.com',\n 'phone' => '1234567890',\n ]\n);", + "code": "vendors->updateVendor(\n $vendorId,\n [\n 'name' => 'ABC Corporation',\n 'type' => 'Supplier',\n 'email' => 'abc@example.com',\n 'phone' => '1234567890',\n ]\n);" + }, + "fleetbase-api-work-orders-create-a-work-order": { + "collection": "Fleetbase API", + "group": "Work Orders", + "name": "Create a Work Order", + "implementation": "Fleetbase\\Sdk\\Services\\WorkOrderService::createWorkOrder", + "variables": [], + "call": "$result = $fleetbase->workOrders->createWorkOrder(\n [\n 'subject' => 'Replace rear tire',\n 'category' => 'corrective_maintenance',\n 'status' => 'open',\n 'priority' => 'high',\n 'target_type' => 'fleet-ops:vehicle',\n 'target' => 'vehicle_id-fixture',\n 'assignee_type' => 'fleet-ops:vendor',\n 'assignee' => 'vendor_id-fixture',\n ]\n);", + "code": "workOrders->createWorkOrder(\n [\n 'subject' => 'Replace rear tire',\n 'category' => 'corrective_maintenance',\n 'status' => 'open',\n 'priority' => 'high',\n 'target_type' => 'fleet-ops:vehicle',\n 'target' => 'vehicle_id-fixture',\n 'assignee_type' => 'fleet-ops:vendor',\n 'assignee' => 'vendor_id-fixture',\n ]\n);" + }, + "fleetbase-api-work-orders-delete-a-work-order": { + "collection": "Fleetbase API", + "group": "Work Orders", + "name": "Delete a Work Order", + "implementation": "Fleetbase\\Sdk\\Services\\WorkOrderService::deleteWorkOrder", + "variables": { + "workOrderId": "work_order_id-fixture" + }, + "call": "$result = $fleetbase->workOrders->deleteWorkOrder($workOrderId);", + "code": "workOrders->deleteWorkOrder($workOrderId);" + }, + "fleetbase-api-work-orders-query-work-orders": { + "collection": "Fleetbase API", + "group": "Work Orders", + "name": "Query Work Orders", + "implementation": "Fleetbase\\Sdk\\Services\\WorkOrderService::queryWorkOrders", + "variables": [], + "call": "$result = $fleetbase->workOrders->queryWorkOrders();", + "code": "workOrders->queryWorkOrders();" + }, + "fleetbase-api-work-orders-retrieve-a-work-order": { + "collection": "Fleetbase API", + "group": "Work Orders", + "name": "Retrieve a Work Order", + "implementation": "Fleetbase\\Sdk\\Services\\WorkOrderService::retrieveWorkOrder", + "variables": { + "workOrderId": "work_order_id-fixture" + }, + "call": "$result = $fleetbase->workOrders->retrieveWorkOrder($workOrderId);", + "code": "workOrders->retrieveWorkOrder($workOrderId);" + }, + "fleetbase-api-work-orders-send-work-order": { + "collection": "Fleetbase API", + "group": "Work Orders", + "name": "Send Work Order", + "implementation": "Fleetbase\\Sdk\\Services\\WorkOrderService::sendWorkOrder", + "variables": { + "workOrderId": "work_order_id-fixture" + }, + "call": "$result = $fleetbase->workOrders->sendWorkOrder($workOrderId);", + "code": "workOrders->sendWorkOrder($workOrderId);" + }, + "fleetbase-api-work-orders-update-a-work-order": { + "collection": "Fleetbase API", + "group": "Work Orders", + "name": "Update a Work Order", + "implementation": "Fleetbase\\Sdk\\Services\\WorkOrderService::updateWorkOrder", + "variables": { + "workOrderId": "work_order_id-fixture" + }, + "call": "$result = $fleetbase->workOrders->updateWorkOrder(\n $workOrderId,\n [\n 'status' => 'in_progress',\n ]\n);", + "code": "workOrders->updateWorkOrder(\n $workOrderId,\n [\n 'status' => 'in_progress',\n ]\n);" + }, + "fleetbase-api-zones-create-a-zone": { + "collection": "Fleetbase API", + "group": "Zones", + "name": "Create a Zone", + "implementation": "Fleetbase\\Sdk\\Services\\ZoneService::createZone", + "variables": [], + "call": "$result = $fleetbase->zones->createZone(\n [\n 'name' => 'Center of Singapore',\n 'service_area' => 'service_area_id-fixture',\n 'color' => '#66e0ff',\n 'stroke_color' => '#00bfff',\n 'border' => [\n 'type' => 'Polygon',\n 'bbox' => [\n 103.867493,\n 1.35085,\n 103.912125,\n 1.383113,\n ],\n 'coordinates' => [\n [\n [\n 103.907661,\n 1.362863,\n ],\n [\n 103.892555,\n 1.357714,\n ],\n [\n 103.891525,\n 1.353252,\n ],\n [\n 103.883629,\n 1.35085,\n ],\n [\n 103.874702,\n 1.351193,\n ],\n [\n 103.870583,\n 1.358744,\n ],\n [\n 103.867493,\n 1.368354,\n ],\n [\n 103.870926,\n 1.377621,\n ],\n [\n 103.875732,\n 1.38174,\n ],\n [\n 103.886032,\n 1.383113,\n ],\n [\n 103.900452,\n 1.383113,\n ],\n [\n 103.909721,\n 1.381397,\n ],\n [\n 103.912125,\n 1.374189,\n ],\n [\n 103.907661,\n 1.362863,\n ],\n ],\n ],\n ],\n ]\n);", + "code": "zones->createZone(\n [\n 'name' => 'Center of Singapore',\n 'service_area' => 'service_area_id-fixture',\n 'color' => '#66e0ff',\n 'stroke_color' => '#00bfff',\n 'border' => [\n 'type' => 'Polygon',\n 'bbox' => [\n 103.867493,\n 1.35085,\n 103.912125,\n 1.383113,\n ],\n 'coordinates' => [\n [\n [\n 103.907661,\n 1.362863,\n ],\n [\n 103.892555,\n 1.357714,\n ],\n [\n 103.891525,\n 1.353252,\n ],\n [\n 103.883629,\n 1.35085,\n ],\n [\n 103.874702,\n 1.351193,\n ],\n [\n 103.870583,\n 1.358744,\n ],\n [\n 103.867493,\n 1.368354,\n ],\n [\n 103.870926,\n 1.377621,\n ],\n [\n 103.875732,\n 1.38174,\n ],\n [\n 103.886032,\n 1.383113,\n ],\n [\n 103.900452,\n 1.383113,\n ],\n [\n 103.909721,\n 1.381397,\n ],\n [\n 103.912125,\n 1.374189,\n ],\n [\n 103.907661,\n 1.362863,\n ],\n ],\n ],\n ],\n ]\n);" + }, + "fleetbase-api-zones-delete-a-zone": { + "collection": "Fleetbase API", + "group": "Zones", + "name": "Delete a Zone", + "implementation": "Fleetbase\\Sdk\\Services\\ZoneService::deleteZone", + "variables": { + "zoneId": "zone_id-fixture" + }, + "call": "$result = $fleetbase->zones->deleteZone($zoneId);", + "code": "zones->deleteZone($zoneId);" + }, + "fleetbase-api-zones-query-zones": { + "collection": "Fleetbase API", + "group": "Zones", + "name": "Query Zones", + "implementation": "Fleetbase\\Sdk\\Services\\ZoneService::queryZones", + "variables": [], + "call": "$result = $fleetbase->zones->queryZones(\n [\n 'name' => 'zone_name-fixture',\n ]\n);", + "code": "zones->queryZones(\n [\n 'name' => 'zone_name-fixture',\n ]\n);" + }, + "fleetbase-api-zones-retrieve-a-zone": { + "collection": "Fleetbase API", + "group": "Zones", + "name": "Retrieve a zone", + "implementation": "Fleetbase\\Sdk\\Services\\ZoneService::retrieveZone", + "variables": { + "zoneId": "zone_id-fixture" + }, + "call": "$result = $fleetbase->zones->retrieveZone($zoneId);", + "code": "zones->retrieveZone($zoneId);" + }, + "fleetbase-api-zones-update-a-zone": { + "collection": "Fleetbase API", + "group": "Zones", + "name": "Update a Zone", + "implementation": "Fleetbase\\Sdk\\Services\\ZoneService::updateZone", + "variables": { + "zoneId": "zone_id-fixture" + }, + "call": "$result = $fleetbase->zones->updateZone(\n $zoneId,\n [\n 'color' => '#ff00000',\n ]\n);", + "code": "zones->updateZone(\n $zoneId,\n [\n 'color' => '#ff00000',\n ]\n);" + }, + "fleetbase-core-api-chat-channels-add-participant": { + "collection": "Fleetbase Core API", + "group": "Chat Channels", + "name": "Add Participant", + "implementation": "Fleetbase\\Sdk\\Services\\ChatChannelService::addParticipant", + "variables": { + "chatChannelId": "chat_channel_id-fixture" + }, + "call": "$result = $fleetbase->chatChannels->addParticipant(\n $chatChannelId,\n [\n 'user' => 'user_id-fixture',\n ]\n);", + "code": "chatChannels->addParticipant(\n $chatChannelId,\n [\n 'user' => 'user_id-fixture',\n ]\n);" + }, + "fleetbase-core-api-chat-channels-create-chat-channel": { + "collection": "Fleetbase Core API", + "group": "Chat Channels", + "name": "Create Chat Channel", + "implementation": "Fleetbase\\Sdk\\Services\\ChatChannelService::createChatChannel", + "variables": [], + "call": "$result = $fleetbase->chatChannels->createChatChannel(\n [\n 'name' => 'Dispatch',\n 'participants' => [\n 'user_id-fixture',\n ],\n ]\n);", + "code": "chatChannels->createChatChannel(\n [\n 'name' => 'Dispatch',\n 'participants' => [\n 'user_id-fixture',\n ],\n ]\n);" + }, + "fleetbase-core-api-chat-channels-create-read-receipt": { + "collection": "Fleetbase Core API", + "group": "Chat Channels", + "name": "Create Read Receipt", + "implementation": "Fleetbase\\Sdk\\Services\\ChatChannelService::createReadReceipt", + "variables": { + "chatMessageId": "chat_message_id-fixture" + }, + "call": "$result = $fleetbase->chatChannels->createReadReceipt(\n $chatMessageId,\n [\n 'participant' => 'chat_participant_id-fixture',\n ]\n);", + "code": "chatChannels->createReadReceipt(\n $chatMessageId,\n [\n 'participant' => 'chat_participant_id-fixture',\n ]\n);" + }, + "fleetbase-core-api-chat-channels-delete-chat-channel": { + "collection": "Fleetbase Core API", + "group": "Chat Channels", + "name": "Delete Chat Channel", + "implementation": "Fleetbase\\Sdk\\Services\\ChatChannelService::deleteChatChannel", + "variables": { + "chatChannelId": "chat_channel_id-fixture" + }, + "call": "$result = $fleetbase->chatChannels->deleteChatChannel($chatChannelId);", + "code": "chatChannels->deleteChatChannel($chatChannelId);" + }, + "fleetbase-core-api-chat-channels-delete-message": { + "collection": "Fleetbase Core API", + "group": "Chat Channels", + "name": "Delete Message", + "implementation": "Fleetbase\\Sdk\\Services\\ChatChannelService::deleteMessage", + "variables": { + "chatMessageId": "chat_message_id-fixture" + }, + "call": "$result = $fleetbase->chatChannels->deleteMessage($chatMessageId);", + "code": "chatChannels->deleteMessage($chatMessageId);" + }, + "fleetbase-core-api-chat-channels-list-available-participants": { + "collection": "Fleetbase Core API", + "group": "Chat Channels", + "name": "List Available Participants", + "implementation": "Fleetbase\\Sdk\\Services\\ChatChannelService::listAvailableParticipants", + "variables": [], + "call": "$result = $fleetbase->chatChannels->listAvailableParticipants(\n [\n 'channel' => 'chat_channel_id-fixture',\n ]\n);", + "code": "chatChannels->listAvailableParticipants(\n [\n 'channel' => 'chat_channel_id-fixture',\n ]\n);" + }, + "fleetbase-core-api-chat-channels-query-chat-channels": { + "collection": "Fleetbase Core API", + "group": "Chat Channels", + "name": "Query Chat Channels", + "implementation": "Fleetbase\\Sdk\\Services\\ChatChannelService::queryChatChannels", + "variables": [], + "call": "$result = $fleetbase->chatChannels->queryChatChannels(\n [\n 'limit' => '25',\n 'offset' => '0',\n 'sort' => 'created_at',\n ]\n);", + "code": "chatChannels->queryChatChannels(\n [\n 'limit' => '25',\n 'offset' => '0',\n 'sort' => 'created_at',\n ]\n);" + }, + "fleetbase-core-api-chat-channels-remove-participant": { + "collection": "Fleetbase Core API", + "group": "Chat Channels", + "name": "Remove Participant", + "implementation": "Fleetbase\\Sdk\\Services\\ChatChannelService::removeParticipant", + "variables": { + "participantId": "chat_participant_id-fixture" + }, + "call": "$result = $fleetbase->chatChannels->removeParticipant($participantId);", + "code": "chatChannels->removeParticipant($participantId);" + }, + "fleetbase-core-api-chat-channels-retrieve-chat-channel": { + "collection": "Fleetbase Core API", + "group": "Chat Channels", + "name": "Retrieve Chat Channel", + "implementation": "Fleetbase\\Sdk\\Services\\ChatChannelService::retrieveChatChannel", + "variables": { + "chatChannelId": "chat_channel_id-fixture" + }, + "call": "$result = $fleetbase->chatChannels->retrieveChatChannel($chatChannelId);", + "code": "chatChannels->retrieveChatChannel($chatChannelId);" + }, + "fleetbase-core-api-chat-channels-send-message": { + "collection": "Fleetbase Core API", + "group": "Chat Channels", + "name": "Send Message", + "implementation": "Fleetbase\\Sdk\\Services\\ChatChannelService::sendMessage", + "variables": { + "chatChannelId": "chat_channel_id-fixture" + }, + "call": "$result = $fleetbase->chatChannels->sendMessage(\n $chatChannelId,\n [\n 'sender' => 'chat_participant_id-fixture',\n 'content' => 'Hello from Fleetbase API',\n 'files' => [],\n ]\n);", + "code": "chatChannels->sendMessage(\n $chatChannelId,\n [\n 'sender' => 'chat_participant_id-fixture',\n 'content' => 'Hello from Fleetbase API',\n 'files' => [],\n ]\n);" + }, + "fleetbase-core-api-chat-channels-update-chat-channel": { + "collection": "Fleetbase Core API", + "group": "Chat Channels", + "name": "Update Chat Channel", + "implementation": "Fleetbase\\Sdk\\Services\\ChatChannelService::updateChatChannel", + "variables": { + "chatChannelId": "chat_channel_id-fixture" + }, + "call": "$result = $fleetbase->chatChannels->updateChatChannel(\n $chatChannelId,\n [\n 'name' => 'Dispatch Updates',\n ]\n);", + "code": "chatChannels->updateChatChannel(\n $chatChannelId,\n [\n 'name' => 'Dispatch Updates',\n ]\n);" + }, + "fleetbase-core-api-comments-create-comment": { + "collection": "Fleetbase Core API", + "group": "Comments", + "name": "Create Comment", + "implementation": "Fleetbase\\Sdk\\Services\\CommentService::createComment", + "variables": [], + "call": "$result = $fleetbase->comments->createComment(\n [\n 'content' => 'Example comment',\n 'subject' => [\n 'id' => 'file_id-fixture',\n 'type' => 'file',\n ],\n ]\n);", + "code": "comments->createComment(\n [\n 'content' => 'Example comment',\n 'subject' => [\n 'id' => 'file_id-fixture',\n 'type' => 'file',\n ],\n ]\n);" + }, + "fleetbase-core-api-comments-delete-comment": { + "collection": "Fleetbase Core API", + "group": "Comments", + "name": "Delete Comment", + "implementation": "Fleetbase\\Sdk\\Services\\CommentService::deleteComment", + "variables": { + "commentId": "comment_id-fixture" + }, + "call": "$result = $fleetbase->comments->deleteComment($commentId);", + "code": "comments->deleteComment($commentId);" + }, + "fleetbase-core-api-comments-query-comments": { + "collection": "Fleetbase Core API", + "group": "Comments", + "name": "Query Comments", + "implementation": "Fleetbase\\Sdk\\Services\\CommentService::queryComments", + "variables": [], + "call": "$result = $fleetbase->comments->queryComments(\n [\n 'limit' => '25',\n 'offset' => '0',\n 'sort' => 'created_at',\n ]\n);", + "code": "comments->queryComments(\n [\n 'limit' => '25',\n 'offset' => '0',\n 'sort' => 'created_at',\n ]\n);" + }, + "fleetbase-core-api-comments-retrieve-comment": { + "collection": "Fleetbase Core API", + "group": "Comments", + "name": "Retrieve Comment", + "implementation": "Fleetbase\\Sdk\\Services\\CommentService::retrieveComment", + "variables": { + "commentId": "comment_id-fixture" + }, + "call": "$result = $fleetbase->comments->retrieveComment($commentId);", + "code": "comments->retrieveComment($commentId);" + }, + "fleetbase-core-api-comments-update-comment": { + "collection": "Fleetbase Core API", + "group": "Comments", + "name": "Update Comment", + "implementation": "Fleetbase\\Sdk\\Services\\CommentService::updateComment", + "variables": { + "commentId": "comment_id-fixture" + }, + "call": "$result = $fleetbase->comments->updateComment(\n $commentId,\n [\n 'content' => 'Updated comment',\n ]\n);", + "code": "comments->updateComment(\n $commentId,\n [\n 'content' => 'Updated comment',\n ]\n);" + }, + "fleetbase-core-api-files-delete-a-file": { + "collection": "Fleetbase Core API", + "group": "Files", + "name": "Delete a File", + "implementation": "Fleetbase\\Sdk\\Services\\FileService::deleteFile", + "variables": { + "fileId": "file_id-fixture" + }, + "call": "$result = $fleetbase->files->deleteFile($fileId);", + "code": "files->deleteFile($fileId);" + }, + "fleetbase-core-api-files-download-file": { + "collection": "Fleetbase Core API", + "group": "Files", + "name": "Download File", + "implementation": "Fleetbase\\Sdk\\Services\\FileService::downloadFile", + "variables": { + "fileId": "file_id-fixture" + }, + "call": "$result = $fleetbase->files->downloadFile($fileId);", + "code": "files->downloadFile($fileId);" + }, + "fleetbase-core-api-files-query-files": { + "collection": "Fleetbase Core API", + "group": "Files", + "name": "Query Files", + "implementation": "Fleetbase\\Sdk\\Services\\FileService::queryFiles", + "variables": [], + "call": "$result = $fleetbase->files->queryFiles(\n [\n 'limit' => '25',\n 'offset' => '0',\n 'sort' => 'created_at',\n ]\n);", + "code": "files->queryFiles(\n [\n 'limit' => '25',\n 'offset' => '0',\n 'sort' => 'created_at',\n ]\n);" + }, + "fleetbase-core-api-files-retrieve-a-file": { + "collection": "Fleetbase Core API", + "group": "Files", + "name": "Retrieve a File", + "implementation": "Fleetbase\\Sdk\\Services\\FileService::retrieveFile", + "variables": { + "fileId": "file_id-fixture" + }, + "call": "$result = $fleetbase->files->retrieveFile($fileId);", + "code": "files->retrieveFile($fileId);" + }, + "fleetbase-core-api-files-update-file": { + "collection": "Fleetbase Core API", + "group": "Files", + "name": "Update File", + "implementation": "Fleetbase\\Sdk\\Services\\FileService::updateFile", + "variables": { + "fileId": "file_id-fixture" + }, + "call": "$result = $fleetbase->files->updateFile(\n $fileId,\n [\n 'caption' => 'Updated caption',\n 'meta' => [],\n ]\n);", + "code": "files->updateFile(\n $fileId,\n [\n 'caption' => 'Updated caption',\n 'meta' => [],\n ]\n);" + }, + "fleetbase-core-api-files-upload-base64-file": { + "collection": "Fleetbase Core API", + "group": "Files", + "name": "Upload Base64 File", + "implementation": "Fleetbase\\Sdk\\Services\\FileService::uploadBase64File", + "variables": [], + "call": "$result = $fleetbase->files->uploadBase64File(\n [\n 'data' => 'base64_file_data-fixture',\n 'file_name' => 'example.png',\n 'file_type' => 'image',\n 'content_type' => 'image/png',\n 'path' => 'uploads',\n ]\n);", + "code": "files->uploadBase64File(\n [\n 'data' => 'base64_file_data-fixture',\n 'file_name' => 'example.png',\n 'file_type' => 'image',\n 'content_type' => 'image/png',\n 'path' => 'uploads',\n ]\n);" + }, + "fleetbase-core-api-files-upload-file": { + "collection": "Fleetbase Core API", + "group": "Files", + "name": "Upload File", + "implementation": "Fleetbase\\Sdk\\Services\\FileService::uploadFile", + "variables": [], + "call": "$result = $fleetbase->files->uploadFile(\n [\n [\n 'name' => 'file',\n 'contents' => 'replace-with-file-contents',\n ],\n [\n 'name' => 'path',\n 'contents' => 'uploads',\n ],\n [\n 'name' => 'type',\n 'contents' => 'attachment',\n ],\n ]\n);", + "code": "files->uploadFile(\n [\n [\n 'name' => 'file',\n 'contents' => 'replace-with-file-contents',\n ],\n [\n 'name' => 'path',\n 'contents' => 'uploads',\n ],\n [\n 'name' => 'type',\n 'contents' => 'attachment',\n ],\n ]\n);" + }, + "fleetbase-core-api-organizations-get-current-organization": { + "collection": "Fleetbase Core API", + "group": "Organizations", + "name": "Get Current Organization", + "implementation": "Fleetbase\\Sdk\\Services\\OrganizationService::getCurrentOrganization", + "variables": [], + "call": "$result = $fleetbase->organizations->getCurrentOrganization();", + "code": "organizations->getCurrentOrganization();" + } + } +} diff --git a/scripts/sdk-emitters.mjs b/scripts/sdk-emitters.mjs index 71b5abbc..3b2f3a2a 100644 --- a/scripts/sdk-emitters.mjs +++ b/scripts/sdk-emitters.mjs @@ -7,7 +7,7 @@ * Languages: * - curl (always emitted, raw HTTP) * - js (uses the SDK if mapped, else raw fetch) - * - php (uses the SDK if mapped, else raw Guzzle) + * - php (uses the generated PHP SDK catalog when mapped, else raw Guzzle) * - python (always raw `requests` — no Python SDK exists) */ @@ -229,12 +229,22 @@ export function emitPhp({ queryParams, endpointKind, endpointAction, + endpointName, + rawUrl, resourceFolder, sdkConfig, + sdkExample, }) { const php = sdkConfig?.php; if (!php) return emitPhpRaw({ method, fullUrl, body }); + if ( + typeof sdkExample?.code === 'string' && + !isCanonicalPhpCrud({ endpointKind, endpointName, rawUrl }) + ) { + return sdkExample.code; + } + const store = php.stores?.[resourceFolder] ?? camelCase(resourceFolder); switch (endpointKind) { @@ -294,6 +304,24 @@ export function emitPhp({ } } +function isCanonicalPhpCrud({ endpointKind, endpointName, rawUrl }) { + const path = String(rawUrl ?? '') + .replace(/^\{\{base_url\}\}\/\{\{namespace\}\}\/?/i, '') + .split('?', 1)[0] + .replace(/^\/+|\/+$/g, ''); + const segments = path === '' ? [] : path.split('/'); + const itemPath = segments.length === 2 && isIdParam(segments[1]); + + if (endpointKind === 'create') { + return segments.length === 1 && /^Create\b/i.test(endpointName ?? ''); + } + if (endpointKind === 'query') return segments.length === 1; + if (endpointKind === 'find') return itemPath; + if (endpointKind === 'update') return itemPath; + if (endpointKind === 'delete') return itemPath; + return false; +} + function emitPhpRaw({ method, fullUrl, body }) { const verb = method.toLowerCase(); const opts = [`'headers' => ['Authorization' => 'Bearer ${KEY_PLACEHOLDER}']`]; diff --git a/scripts/sdk-emitters.test.mjs b/scripts/sdk-emitters.test.mjs new file mode 100644 index 00000000..4de989af --- /dev/null +++ b/scripts/sdk-emitters.test.mjs @@ -0,0 +1,97 @@ +import assert from 'node:assert/strict'; +import { readFile } from 'node:fs/promises'; +import test from 'node:test'; + +import { emitPhp } from './sdk-emitters.mjs'; + +const catalog = JSON.parse( + await readFile(new URL('./php-sdk-examples.generated.json', import.meta.url)), +); +const sdkConfig = { + php: { + client: 'fleetbase', + stores: { + Places: 'places', + Orders: 'orders', + Organizations: 'organizations', + }, + }, +}; + +test('uses concise PHP SDK calls for canonical CRUD endpoints', () => { + const code = emitPhp({ + method: 'POST', + fullUrl: 'https://api.fleetbase.io/v1/places', + body: '{"name":"Warehouse"}', + queryParams: {}, + endpointKind: 'create', + endpointName: 'Create a Place', + rawUrl: '{{base_url}}/{{namespace}}/places', + resourceFolder: 'Places', + sdkConfig, + sdkExample: catalog.examples['fleetbase-api-places-create-a-place'], + }); + + assert.match(code, /\$fleetbase->places->create\(/); + assert.doesNotMatch(code, /createPlace/); +}); + +test('uses the exact positional dispatchOrder signature for the custom endpoint', () => { + const code = emitPhp({ + method: 'PATCH', + fullUrl: 'https://api.fleetbase.io/v1/orders/:id/dispatch', + body: null, + queryParams: {}, + endpointKind: 'custom-action', + endpointName: 'Dispatch an Order', + rawUrl: '{{base_url}}/{{namespace}}/orders/:id/dispatch', + resourceFolder: 'Orders', + sdkConfig, + sdkExample: catalog.examples['fleetbase-api-orders-dispatch-an-order'], + }); + + assert.match(code, /\$orderId = 'order_id-fixture';/); + assert.match(code, /\$fleetbase->orders->dispatchOrder\(\$orderId\);/); + assert.doesNotMatch(code, /findRecord/); +}); + +test('uses positional identifiers and direct data for PHP SDK actions', () => { + const code = emitPhp({ + method: 'POST', + fullUrl: 'https://api.fleetbase.io/v1/drivers/:id/change-password', + body: '{"password":"new-password"}', + queryParams: {}, + endpointKind: 'custom-action', + endpointName: 'Change Driver Password', + rawUrl: '{{base_url}}/{{namespace}}/drivers/:id/change-password', + resourceFolder: 'Drivers', + sdkConfig, + sdkExample: + catalog.examples['fleetbase-api-drivers-change-driver-password'], + }); + + assert.match(code, /changeDriverPassword\(\n \$driverId,\n \[/); + assert.doesNotMatch(code, /'id'\s*=>/); + assert.doesNotMatch(code, /'body'\s*=>/); +}); + +test('uses first-class PHP SDK methods for Core API custom endpoints', () => { + const code = emitPhp({ + method: 'GET', + fullUrl: 'https://api.fleetbase.io/v1/organizations/current', + body: null, + queryParams: {}, + endpointKind: 'query', + endpointName: 'Get Current Organization', + rawUrl: '{{base_url}}/{{namespace}}/organizations/current', + resourceFolder: 'Organizations', + sdkConfig, + sdkExample: + catalog.examples[ + 'fleetbase-core-api-organizations-get-current-organization' + ], + }); + + assert.match(code, /\$fleetbase->organizations->getCurrentOrganization\(/); + assert.doesNotMatch(code, /GuzzleHttp/); +});