Skip to main content
PUT
/
stores
/
{store_id}
/
status
Change Store Status
curl --request PUT \
  --url https://api-staging.luladelivery.store/stores/{store_id}/status
{
  "success": true,
  "status": {
    "current_pause": "<string>",
    "is_close": true,
    "UberEats": [
      {}
    ],
    "DoorDash": [
      {}
    ],
    "GrubHub": [
      {}
    ]
  }
}
This endpoint provides granular control over store availability across delivery platforms. You can manage store status globally or per platform, with optional scheduling for automatic status changes.

Path Parameters

store_id
string
required
The unique identifier of the store to update status for
dsp_name
string
required
Delivery Service Provider to control. Options:
  • "All" - Controls all platforms simultaneously
  • "UberEats" - Controls only UberEats
  • "DoorDash" - Controls only DoorDash
  • "GrubHub" - Controls only GrubHub
is_active
boolean
required
Store operational status:
  • true - Opens the store (ONLINE)
  • false - Closes the store (OFFLINE)
end_time
string
When the status change should automatically revert. ISO 8601 format with timezone.Example: “2024-11-15T23:59:00-07:00”
If omitted, the status change is permanent until manually changed
start_time
string
When the status change should take effect (for scheduled changes).Example: “2024-11-15T00:00:00-05:00”
Used primarily for scheduling future status changes

Common Operations

Open All Platforms

Opens the store on all delivery platforms simultaneously.
{
    "dsp_name": "All",
    "is_active": true,
    "end_time": "2024-11-15T23:59:00-07:00"
}

Close All Platforms

Closes the store on all delivery platforms simultaneously.
{
    "dsp_name": "All",
    "is_active": false
}

Platform-Specific Control

Open UberEats Only

{
    "dsp_name": "UberEats",
    "is_active": true,
    "end_time": "2024-11-15T23:59:00-07:00"
}

Close DoorDash Only

{
    "dsp_name": "DoorDash",
    "is_active": false,
    "end_time": "2024-11-15T23:59:00-07:00"
}

Pause GrubHub

{
    "dsp_name": "GrubHub",
    "is_active": false,
    "end_time": "2024-06-21T17:08:30.000Z"
}

Scheduled Operations

Schedule Store Pause

{
    "dsp_name": "All",
    "is_active": false,
    "end_time": "2024-11-15T23:59:00-05:00",
    "start_time": "2024-11-15T00:00:00-05:00"
}

Response Types

Successful Status Change

success
boolean
Indicates whether the status change was successful
status
object
Detailed status information after the change (included for “All” operations)

Simple Success Response

For single platform operations or basic operations:
{
    "success": true
}

Detailed Response Example

For “All” platform operations with full status:
{
    "success": true,
    "status": {
        "current_pause": null,
        "is_close": false,
        "UberEats": [
            {
                "success": true,
                "is_open": true,
                "status": "ONLINE",
                "end_time": null,
                "current_pause": null,
                "description": [
                    {
                        "status": "ONLINE"
                    }
                ],
                "id": "37fa9980-33ba-4419-92c2-a6e5144fdc82",
                "partner_store_id": "15be0357-9b4d-4f05-9a5a-9485b5f783e5",
                "name": "Lula Convenience Store",
                "status_changed_from": true
            }
        ],
        "DoorDash": [
            {
                "success": true,
                "is_open": true,
                "status": "ONLINE",
                "end_time": null,
                "current_pause": null,
                "description": [],
                "id": "1704fecd-e6ca-45bb-b1b5-776aee294af8",
                "partner_store_id": "b1015bdb-e831-42ef-b6f8-720fab19321f",
                "name": "Lula Convenience Store",
                "status_changed_from": true
            }
        ],
        "GrubHub": [
            {
                "success": true,
                "is_open": true,
                "status": "ONLINE",
                "end_time": null,
                "current_pause": null,
                "description": [
                    {
                        "merchant_status": "PT_PREMIUM",
                        "merchant_status_descriptor": "Premium",
                        "pos_merchant_status": "online",
                        "holds_active_account": true,
                        "accepting_phone_orders": true,
                        "accepting_online_orders": true
                    }
                ],
                "id": "d0b3e829-299f-42cc-a768-2f9a908f3355",
                "partner_store_id": "1240569280",
                "name": "Lula Convenience Store",
                "status_changed_from": true
            }
        ]
    }
}

Best Practices

Coordinated Operations
best-practice
Use “All” for consistent customer experience across platforms
Customers expect consistent availability across all delivery apps
Platform-Specific Issues
best-practice
Use individual platform controls when specific integrations have issues
This allows you to maintain operations on working platforms
Scheduled Changes
best-practice
Use end_time for temporary closures (breaks, maintenance, etc.)
Without end_time, status changes are permanent
Emergency Closure
best-practice
For immediate closures, use “All” with is_active: false
This immediately stops new orders across all platforms
Real-time Effect: Status changes take effect immediately on all specified platforms. Existing orders in progress are not affected.
Timezone Awareness: When using end_time, ensure the timezone offset matches the store’s local timezone to avoid unexpected behavior.
Platform Dependencies: Some platforms may have additional requirements or delays in reflecting status changes. The response indicates the success of the API call, not necessarily the immediate platform reflection.
I