Quick fixes
This list can grow: some statuses come straight from LinkedIn. A
401 or 403 can also be LinkedIn’s answer, in which case error mentions LinkedIn.
A send failed
After an error on a send, the message or invitation may already be gone. Never retry automatically.
linkedin/messages or linkedin/invitations answers a 5xx, a 429, or no answer at all (a network error, or a timeout in your tool):
- Wait a few minutes. Groovin’s copy of your inbox can lag behind LinkedIn.
- Check. Read the conversation with
linkedin/chat-messages. If you sent by profile and have noconversation_id, find it in the conversation list. For an invitation, check the pending invitations. - Only if it is still not there, try again, once.
What an error looks like
Every failure answers with an HTTP status and one field:429 or a 5xx, the text ends with advice on what to do next. On a send, that advice is to check before re-sending.
An HTTP 200 can hold failures
Routes that handle several items answer 200 even when some items failed. Always check each item:
This applies to
crm/contacts, crm/contacts/sync-toggle, crm/contacts/find-linkedin-url and crm/companies/find-domains.
When is it safe to retry?
Each page says what repeating that call does, and What each call really does lists them all.
There are no idempotency keys: Groovin cannot recognize a repeated request on your behalf.