Skip to main content

Outlet Properties

This section specifies how a partner can update the GoFood outlet information.

Update Outlet Properties

By using this method, you can update your restaurant outlet information such as outlet is open or close within its operational hours, and your outlet's profile image.

PATCH /integrations/gofood/outlets/{outlet_id}/v1/properties

Sample Request

Sample Request
curl -X PATCH https://api.partner-sandbox.gobiz.co.id/integrations/gofood/outlets/{outlet_id}/v1/properties \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer {access-token}' \
-d $'
{
"force_close": false
}
'

Path Parameters

NameDescriptionTypeRequired
outlet_idID of the restaurant for which you want to update the status.StringRequired

Request Parameters

JSON AttributeDescriptionTypeRequired
force_closeRestaurant outlet status.BooleanOptional
profile_image_urlPublicly accessible URL of the image to set as the outlet's profile image. See Profile Image Requirements below.String (URI)Optional
note

force_close and profile_image_url are independent — you may send either one, or both, in the same request.

Profile Image Requirements

RequirementDetail
AccessibilityThe URL must be publicly reachable over HTTP/HTTPS without authentication, so GoFood can download the image.
Allowed formats.jpg / .jpeg (MIME type image/jpeg) only.
Maximum file size2 MB.

If the provided image fails validation, the request is rejected — see Profile Image Errors.

Sample Request - Update Profile Image

Sample Request
curl -X PATCH https://api.partner-sandbox.gobiz.co.id/integrations/gofood/outlets/{outlet_id}/v1/properties \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer {access-token}' \
-d $'
{
"profile_image_url": "https://example.com/images/outlet-profile.jpg"
}
'
note

profile_image_url is not echoed back in the response body — the data object only reflects force_close.

Sample Response - 200 Success

{
"success": true,
"data":
{
"force_close": false
}
}

Response Parameter - 200 Success

JSON AttributeDescriptionType
successStatus of the request. Value true indicates successful submission of the request.Boolean
dataDetails of the updated restaurant.Object
» force_closerestaurant outlet status.Boolean

Profile Image Errors

If profile_image_url fails validation, the API responds with HTTP 400 and one of the following error codes in errors[].message_title. The update is rejected and the outlet keeps its previous profile image — no partial or broken image is ever applied.

Error CodeDescription
INVALID_IMAGE_FORMATThe image is not a valid JPG/JPEG file, or its content type does not match image/jpeg.
IMAGE_URL_UNREACHABLEGoFood could not download the image from the given URL (URL is unreachable, times out, or returns an error).
INVALID_IMAGE_SIZEThe image exceeds the maximum allowed size of 2 MB.
Sample Response - 400 Invalid Image Format
{
"success": false,
"errors": [
{
"message_title": "INVALID_IMAGE_FORMAT",
"message": "The profile image format is not supported. Only JPG/JPEG images are allowed."
}
]
}
Sample Response - 400 Image URL Unreachable
{
"success": false,
"errors": [
{
"message_title": "IMAGE_URL_UNREACHABLE",
"message": "The profile image URL could not be reached. Make sure the URL is publicly accessible."
}
]
}
Sample Response - 400 Invalid Image Size
{
"success": false,
"errors": [
{
"message_title": "INVALID_IMAGE_SIZE",
"message": "The profile image exceeds the maximum allowed size of 2MB."
}
]
}

Profile Image Content Moderation

Passing the checks above (format, reachability, size) and receiving a 200 response means the image itself was accepted — it does not yet mean the image is live. Separately, the image content goes through moderation asynchronously in the background.

If the image is rejected by content moderation, your outlet's profile image reverts to the previous, already-approved image.

note

At this time, GoFood does not send any notification (webhook, callback, or otherwise) when an image is rejected by content moderation, and there is no endpoint to check the moderation outcome. Plan your integration accordingly — for example, by re-confirming the image shown on your GoFood outlet listing after submitting an update.

note
  • To perform this operation, you must be authenticated using go_auth_authorization_code(gofood:outlet:write) using Owner or Manager roles.
  • Possible error responses are 400, 401, 404, 406, and 415. For 400 errors related to profile_image_url, refer to Profile Image Errors above. For other errors, refer Error Glossary.