Skip to content
Linq Copy agent prompt

Stop location sharing

DELETE/v3/chats/{chatId}/location

End the location share a contact started with you, as though they had stopped it themselves. Their device stops listing you as someone they share with, so they can start a fresh share cleanly.

Use this to recover when a share has gone stale — coordinates that stop advancing, or a share you believe has ended but is still reported as active. Without it the only remedy is asking the contact to stop and re-share, which is confusing for them because their phone still shows everything as working.

This is not reversible from the API. Sharing can only resume when the contact starts a new share, so prompt them to re-share afterwards. Request a new one with POST /v3/chats/{chatId}/location/request.

Apple keeps one location-sharing relationship per person rather than per chat, so this ends that contact’s share everywhere, not only in this chat.

handle names whose share to end, and is always required — a group chat can have several people sharing, and this is not an operation to infer a target for.

This returns 202, not 200. The removal happens on the device that holds the sharing relationship, so a success here means the request was accepted, not that sharing has ended. Wait for the location.sharing.stopped webhook to confirm it — that webhook is what tells you the contact’s device has actually let go.

Returns 404 if the contact is not currently sharing.

Path ParametersExpand Collapse
chatId: string
formatuuid
Body ParametersJSONExpand Collapse
handle: string

Phone number (E.164 format) or email address of the contact whose share to end

ReturnsExpand Collapse
StopChatLocationSharingResponse object { message, success }
message: string
success: boolean

Stop location sharing

curl https://api.linqapp.com/api/partner/v3/chats/$CHAT_ID/location \
    -X DELETE \
    -H "Authorization: Bearer $LINQ_API_V3_API_KEY"
{
  "success": true,
  "message": "Location sharing stop requested"
}
{
  "error": {
    "status": 400,
    "code": 1002,
    "message": "Phone number must be in E.164 format",
    "doc_url": "https://docs.linqapp.com/channel/imessage/error/codes/1xxx/1002/"
  },
  "success": false
}
{
  "error": {
    "status": 401,
    "code": 2004,
    "message": "Unauthorized - missing or invalid authentication token",
    "doc_url": "https://docs.linqapp.com/channel/imessage/error/codes/2xxx/2004/"
  },
  "success": false
}
{
  "error": {
    "status": 403,
    "code": 2005,
    "message": "Access denied - insufficient permissions for this resource",
    "doc_url": "https://docs.linqapp.com/channel/imessage/error/codes/2xxx/2005/"
  },
  "success": false
}
{
  "error": {
    "status": 404,
    "code": 2001,
    "message": "Resource not found",
    "doc_url": "https://docs.linqapp.com/channel/imessage/error/codes/2xxx/2001/"
  },
  "success": false
}
{
  "error": {
    "status": 500,
    "code": 3006,
    "message": "Internal server error",
    "doc_url": "https://docs.linqapp.com/channel/imessage/error/codes/3xxx/3006/"
  },
  "success": false
}
Returns Examples
{
  "success": true,
  "message": "Location sharing stop requested"
}
{
  "error": {
    "status": 400,
    "code": 1002,
    "message": "Phone number must be in E.164 format",
    "doc_url": "https://docs.linqapp.com/channel/imessage/error/codes/1xxx/1002/"
  },
  "success": false
}
{
  "error": {
    "status": 401,
    "code": 2004,
    "message": "Unauthorized - missing or invalid authentication token",
    "doc_url": "https://docs.linqapp.com/channel/imessage/error/codes/2xxx/2004/"
  },
  "success": false
}
{
  "error": {
    "status": 403,
    "code": 2005,
    "message": "Access denied - insufficient permissions for this resource",
    "doc_url": "https://docs.linqapp.com/channel/imessage/error/codes/2xxx/2005/"
  },
  "success": false
}
{
  "error": {
    "status": 404,
    "code": 2001,
    "message": "Resource not found",
    "doc_url": "https://docs.linqapp.com/channel/imessage/error/codes/2xxx/2001/"
  },
  "success": false
}
{
  "error": {
    "status": 500,
    "code": 3006,
    "message": "Internal server error",
    "doc_url": "https://docs.linqapp.com/channel/imessage/error/codes/3xxx/3006/"
  },
  "success": false
}