---
title: "Withdraw a sent connection invitation"
method: POST
path: "/withdraw/linkedin/invitation"
tags: ["actions"]
---

# Withdraw a sent connection invitation

`POST /withdraw/linkedin/invitation`

## Request

- Base URL: `https://api.bereach.ai`
- URL: `https://api.bereach.ai/withdraw/linkedin/invitation`
- Auth: HTTP bearer

Withdraws a pending LinkedIn connection invitation this account sent. Take the invitation from the sent invitations list. LinkedIn then blocks inviting the same person again for three weeks.

## Request body

- object
  - `invitationId` string, required: The invitation to withdraw: invitationId or invitationUrn from the sent invitations list
  - `profileUrn` string: toMember.profileUrn of the same entry. With publicIdentifier, firstName and lastName it saves reading the list again
  - `publicIdentifier` string: toMember.publicIdentifier of the same entry
  - `firstName` string: targetFirstName of the same entry
  - `lastName` string: targetLastName of the same entry

## Response `200`

Invitation withdrawn

- object
  - `success` true, required
  - `message` string, required
  - `invitationId` string, required
  - `creditsUsed` integer, required: Credits this call spent, net of anything given back. 0 when nothing was charged: a free read, a cached answer, nothing delivered.
  - `retryAfter` integer, required: Seconds to wait before another call of the same type. 0 means no wait is needed.

## Other responses

- `400`: The server cannot or will not process the request due to something that is perceived to be a client error.
- `401`: Although HTTP specifies "unauthorized", this response means "unauthenticated". Authenticate to continue. NOTE: 401 is also returned with code "linkedin_not_connected" on an endpoint that acts from your account (invitations, messages, your own network or inbox) when the caller IS authenticated but has no connected LinkedIn account: connect LinkedIn (not re-authenticate) to continue. Every other read never returns it.
- `403`: The caller is authenticated but not allowed. Read error.code: subscription_required (API key or connector whose plan is not active), free_draft_limit (a free-plan limit was reached), sales_nav_seat_inactive (no active Sales Navigator seat), or forbidden (not permitted).
- `404`: The server cannot find the requested resource.
- `409`: The request conflicts with the current state of the server.
- `410`: The requested content has been permanently deleted from the server.
- `422`: The request was well-formed but was unable to be followed due to semantic errors.
- `429`: Rate limit exceeded. Read error.retryAfter for the wait time in seconds.
- `500`: The server encountered a situation it does not know how to handle.
- `502`: An upstream service returned an error. Retry after a few seconds.
- `503`: Capacity is temporarily exceeded. Retry after a few seconds.

## Changes

> 39 revisions in range; 1 not diffed.

- **2026-10-22** `bdaed6984b20`: 1 warning
  - removed the optional property `_meta` from the response with the `200` status
- **2026-10-20** `29fdaae97f8d`: 1 info
  - endpoint added
- **2026-08-19** `1ad91026000b`: 1 breaking
  - api path removed without deprecation
- **2026-07-26** `463db127267a`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/berea/apis/bereach-api/changes/withdraw/linkedin/invitation/post.md)

---

[API](https://skmtc.dev/berea/apis/bereach-api.md) · [All operations](https://skmtc.dev/berea/apis/bereach-api/llms.txt) · [OpenAPI document](https://skmtc.dev/berea/apis/bereach-api/revisions/b657f915ce03?raw)
