# Unipile Documentation ## Guides - [Connection methods](https://developer.unipile.com/docs/connect-accounts.md): Before you can handle chats and messages, you must connect an account of the wanted messaging provider. Discover Unipile's connection methods in this section. - [Hosted auth wizard](https://developer.unipile.com/docs/hosted-auth.md): Learn how to use Hosted Auth Wizard to connect accounts on your application. - [IMAP Guide](https://developer.unipile.com/docs/imap-guide.md): Learn how to implement a custom IMAP authentication form into your application. Find the [Developper IMAP API Guide](https://www.unipile.com/the-developers-guide-to-imap-api-solution/) - [Custom authentication](https://developer.unipile.com/docs/native-auth.md): Learn how you can implement a custom authentication to connect accounts on your application. - [Instagram Guide](https://developer.unipile.com/docs/instagram.md): Learn how to implement a custom Instagram authentication form into your application. - [LinkedIn Guide](https://developer.unipile.com/docs/linkedin.md): Learn how to implement a custom LinkedIn authentication form into your application. - [Messenger Guide](https://developer.unipile.com/docs/messenger.md): Learn how to implement a custom Messenger authentication form into your application. - [Telegram Guide](https://developer.unipile.com/docs/telegram.md): Learn how to implement a custom Telegram authentication form into your application. - [X (Twitter) Guide](https://developer.unipile.com/docs/twitter-x-guide.md): Learn how to implement a custom X - Twitter authentication form into your application. - [WhatsApp Guide](https://developer.unipile.com/docs/whatsapp.md): Learn how to implement a custom WhatsApp authentication form into your application. - [Retrieving messages](https://developer.unipile.com/docs/get-messages.md): Learn how to retrieve messages of your connected accounts. - [Message object](https://developer.unipile.com/docs/message-payload.md): This section will explain in detail each field of the message object so you can properly integrate them in your application - [Send Messages](https://developer.unipile.com/docs/send-messages.md): Learn how to send messages with Unipile - [Calendars & Events](https://developer.unipile.com/docs/calendars-and-events.md): Learn how to manage calendars & events of your connected accounts. - [Email object](https://developer.unipile.com/docs/email-object.md): This section will explain in detail each field of the email object so you can properly integrate them in your application - [Google OAuth](https://developer.unipile.com/docs/google-oauth.md): If you want full white-label experience when your end user connect in your app you need to create your own OAuth key on Google - [Email & Calendars overview](https://developer.unipile.com/docs/emails.md) - [Microsoft OAuth](https://developer.unipile.com/docs/microsoft-oauth.md) - [Retrieving emails](https://developer.unipile.com/docs/retrieving-emails.md): Learn how to retrieve messages of your connected accounts. - [Send Email](https://developer.unipile.com/docs/send-email.md): Learn how to send messages with Unipile - [API Usage](https://developer.unipile.com/docs/api-usage.md) - [Getting Started](https://developer.unipile.com/docs/getting-started.md) - [List of provider features](https://developer.unipile.com/docs/list-provider-features.md) - [Provider Limits and Restrictions](https://developer.unipile.com/docs/provider-limits-and-restrictions.md) - [SDK / No-Code](https://developer.unipile.com/docs/sdk.md) - [Create webhook n8n](https://developer.unipile.com/docs/create-webhook-n8n.md) - [Create request from n8n](https://developer.unipile.com/docs/createpost-request-n8n.md): With n8n, you can easily integrate Unipile API requests into your workflows. A request can be made using POST or GET, depending on the endpoint and the data you want to send or retrieve. In this tutorial, we will show how to configure the HTTP Request node to call different Unipile’s endpoint and send the required parameters (account, text, and optional attachments). These requests can be used as standalone actions or integrated into more complex workflows, combined with other nodes such as databases, schedulers, or third-party services. This way, you can fully automate content publishing and other actions supported by Unipile’s API directly inside n8n. - [Examples n8n Workflows](https://developer.unipile.com/docs/example-workflow-n8n.md): This section provides ready-to-use n8n workflows showcasing how to interact with the Unipile API to automate various tasks such as messaging, data retrieval, content posting, and more. These examples are designed to help you quickly integrate Unipile into your automation flows, whether you're a developer, technical user, or exploring advanced use cases. Each workflow is provided as a JSON file that you can import into your n8n instance and adapt to your specific needs. 📌 Note: Be sure to replace placeholder values like X-API-KEY, account_id, etc., with your actual credentials, and secure your webhooks as needed. - [n8n Integration](https://developer.unipile.com/docs/n8n.md): This section of the documentation explains how to integrate Unipile’s API with n8n, an open-source workflow automation tool. With n8n, you can easily connect Unipile to external services (email, CRM, LinkedIn, WhatsApp, Instagram, etc.), automate repetitive tasks, and build advanced workflows without writing complex code. - [Node.js SDK](https://developer.unipile.com/docs/nodejs-sdk.md): A Node.js wrapper for API to manage messaging, mail and calendars. - [Detecting Accepted Invitations](https://developer.unipile.com/docs/detecting-accepted-invitations.md): Learn how to identify when a user accepts your LinkedIn invitation, enabling you to initiate subsequent actions. - [Get Raw Data Route Example](https://developer.unipile.com/docs/get-raw-data-example.md): Learn how to use Magic Route - [How to create an Outreach Sequence](https://developer.unipile.com/docs/how-to-create-outreach-sequence.md) - [Perform API Linkedin search and export result](https://developer.unipile.com/docs/linkedin-search.md) - [Posts and Comments](https://developer.unipile.com/docs/posts-and-comments.md) - [Invite users](https://developer.unipile.com/docs/invite-users.md) - [Retrieving users](https://developer.unipile.com/docs/retrieving-users.md) - [Users overview](https://developer.unipile.com/docs/users-overview.md) - [Account status updates](https://developer.unipile.com/docs/account-lifecycle.md): Learn how to handle account status. - [New email](https://developer.unipile.com/docs/new-emails-webhook.md): Get real-time updates on new email using Unipile's Webhook. - [New messages](https://developer.unipile.com/docs/new-messages-webhook.md): Get real-time updates on new messages using Unipile's Webhook. - [Tracking email](https://developer.unipile.com/docs/tracking-email.md): Get real-time click and open on sent email using Unipile's Webhook. - [Webhooks overview](https://developer.unipile.com/docs/webhooks-2.md) ## API Reference - [Connect an account (native authentication)](https://developer.unipile.com/reference/accountscontroller_createaccount.md): Link to Uniple an account of the given type and provider. - [Delete an account](https://developer.unipile.com/reference/accountscontroller_deleteaccount.md): Unlink the given account to Unipile. - [Retrieve an account](https://developer.unipile.com/reference/accountscontroller_getaccountbyid.md): Retrieve the details of an account. - [List all accounts](https://developer.unipile.com/reference/accountscontroller_listaccounts.md): Returns a list of the accounts linked to Unipile. - [Reconnect an account](https://developer.unipile.com/reference/accountscontroller_reconnectaccount.md): Reconnect an account previously linked to Unipile that has been disconnected. - [Resend checkpoint notification](https://developer.unipile.com/reference/accountscontroller_resendcheckpoint.md): Might it be 2FA, OTP or In-app Validation, this route makes you able on certain providers to resend the notification. - [Restart an account](https://developer.unipile.com/reference/accountscontroller_restartaccount.md): Restart the sources of a frozen account. - [Resynchronize account messaging data](https://developer.unipile.com/reference/accountscontroller_resyncaccount.md): This route can be used both to initiate a sync process (from scratch of within a specific time span) and to monitor its status via regular polling. Supported providers : Linkedin. - [Solve a code checkpoint](https://developer.unipile.com/reference/accountscontroller_solvecheckpoint.md): Allows you to provide a code which will solve a checkpoint encountered during a native authentication. A checkpoint is a security step added by a provider which needs to be solved to complete the authentication. Checkpoints that require a code are 2FA (two-factor authentication) and OTP (one-time password). Depending on the way you have configured the account you are trying to authenticate, you can get your code from various ways such as a mail, a SMS or from a two-factor authentication app. - [Connect an account (hosted authentication)](https://developer.unipile.com/reference/hostedcontroller_requestlink.md): Create a url which redirect to Unipile's hosted authentication to connect or reconnect an account. - [Create an event](https://developer.unipile.com/reference/calendarscontroller_createcalendarevent.md): Create a calendar event. - [Delete an event](https://developer.unipile.com/reference/calendarscontroller_deletecalendarevent.md): Delete a calendar event. - [Edit an event](https://developer.unipile.com/reference/calendarscontroller_editcalendarevent.md): Edit a calendar event. - [Retrieve a calendar](https://developer.unipile.com/reference/calendarscontroller_getcalendar.md): Retrieve the details of a calendar. - [Retrieve an event](https://developer.unipile.com/reference/calendarscontroller_getcalendarevent.md): Retrieve the details of a calendar event. - [Retrieve all events from a calendar](https://developer.unipile.com/reference/calendarscontroller_listcalendareventsbycalendar.md): Returns a list of calendar events related to the given calendar. - [List all calendars](https://developer.unipile.com/reference/calendarscontroller_listcalendars.md): Returns a list of calendars. - [Create a draft](https://developer.unipile.com/reference/draftscontroller_createdraft.md): ⚠️ Interactive documentation does not work on this route (child parameters not correctly applied in snippet), Create a new draft. - [Retrieve a folder](https://developer.unipile.com/reference/folderscontroller_getfolder.md): Retrieve the details of a mail folder. - [List all folders](https://developer.unipile.com/reference/folderscontroller_listfolders.md): Returns a list of all email folders. - [Delete an email](https://developer.unipile.com/reference/mailscontroller_deletemail.md): Delete an email by moving it to the Trash folder. - [Retrieve an attachment from an email](https://developer.unipile.com/reference/mailscontroller_getattachment.md): Retrieve one of the attachment linked to an email. - [Retrieve an email](https://developer.unipile.com/reference/mailscontroller_getmail.md): Retrieve the details of an email. - [List all emails](https://developer.unipile.com/reference/mailscontroller_listmails.md): Returns a list of emails. - [Send an email](https://developer.unipile.com/reference/mailscontroller_sendmail.md): ⚠️ Interactive documentation does not work on this route (child parameters not correctly applied in snippet), please use our ready to copy past example of this page : https://developer.unipile.com/docs/send-email - [Update an email](https://developer.unipile.com/reference/mailscontroller_updatemail.md): Update an email. - [Close a job posting](https://developer.unipile.com/reference/linkedincontroller_closejobposting.md): Close a job offer you have posted. - [Create a job posting](https://developer.unipile.com/reference/linkedincontroller_createjobposting.md): Create a new job offer draft. - [Edit a job posting](https://developer.unipile.com/reference/linkedincontroller_editjobposting.md): Edit an existing job posting. - [Endorse a user profile specific skill](https://developer.unipile.com/reference/linkedincontroller_endorseprofile.md): This route can be used to endorse a skill of a user profile. - [Retrieve a company profile](https://developer.unipile.com/reference/linkedincontroller_getcompanyprofile.md): Get a company profile from its name or ID. - [Retrieve Recruiter hiring project from ID](https://developer.unipile.com/reference/linkedincontroller_gethiringprojectbyid.md): Retrieve a particular hiring project. - [Retrieve Recruiter hiring projects](https://developer.unipile.com/reference/linkedincontroller_gethiringprojects.md): Retrieve list of LinkedIn Recruiter hiring projects. - [Get inmail credit balance](https://developer.unipile.com/reference/linkedincontroller_getinmailbalance.md): Get balance for subscribed premium features. - [Get a specific applicant to a job posting](https://developer.unipile.com/reference/linkedincontroller_getjobapplicant.md): Retrieve the details of a user that has applied to a given offer. Applies to Classic job posting only. - [Download the resume of a job applicant](https://developer.unipile.com/reference/linkedincontroller_getjobapplicantresume.md): This route can be used to download the resume of a job applicant. - [List all applicants to a job posting](https://developer.unipile.com/reference/linkedincontroller_getjobapplicants.md): Retrieve all the users that have applied to a given offer. - [Get job offer](https://developer.unipile.com/reference/linkedincontroller_getjobposting.md): Retrieve a job offer. - [List all job postings](https://developer.unipile.com/reference/linkedincontroller_getjobpostings.md): Retrieve the job offers you have posted on LinkedIn whether they are open, closed or still drafts. - [Get raw data from any endpoint](https://developer.unipile.com/reference/linkedincontroller_getrawdata.md): This magic route is intended for advanced users who wish to use LinkedIn's features beyond our current capabilities. It enables you to create custom functionalities that are not yet supported by our platform, using connected accounts. To utilize this route, you will need to identify the specific endpoint containing the desired data using web developer tools on LinkedIn, and then copy the URL along with its parameters for implementation. - [Retrieve LinkedIn search parameters](https://developer.unipile.com/reference/linkedincontroller_getsearchparameterslist.md): LinkedIn doesn't accept raw text as search parameters, but IDs. This route will help you get the right IDs for your inputs. Check out our Guide with examples to master LinkedIn search : https://developer.unipile.com/docs/linkedin-search - [Perform an action with a user profile](https://developer.unipile.com/reference/linkedincontroller_performactiononmember.md): Add a candidate to a Recruiter pipeline, save a Sales Navigator lead, etc. - [Publish a job posting](https://developer.unipile.com/reference/linkedincontroller_publishjobposting.md): Publish the job posting draft you have been working on. - [Perform Linkedin search](https://developer.unipile.com/reference/linkedincontroller_search.md): Search people and companies from the Linkedin Classic as well as Sales Navigator APIs. Check out our Guide with examples to master LinkedIn search : https://developer.unipile.com/docs/linkedin-search - [Solve a job publishing checkpoint](https://developer.unipile.com/reference/linkedincontroller_solvecheckpoint.md): Solve a checkpoint to verify your member privilegies. - [Retrieve an attendee](https://developer.unipile.com/reference/chatattendeescontroller_getattendeebyid.md): The id of the wanted attendee. - [Download a chat attendee picture](https://developer.unipile.com/reference/chatattendeescontroller_getattendeeprofilepicture.md): Download the profile picture of an attendee or picture of a group chat. - [List all attendees](https://developer.unipile.com/reference/chatattendeescontroller_listallattendees.md): Returns a list of messaging attendees. Some optional parameters are available to filter the results. - [List all 1to1 chats for a given attendee](https://developer.unipile.com/reference/chatattendeescontroller_listchatsbyattendee.md): Returns a list of chats where a given attendee is involved. - [List all messages for a given attendee](https://developer.unipile.com/reference/chatattendeescontroller_listmessagesbyattendee.md): Returns a list of messages where a given attendee is involved. - [Retrieve a chat](https://developer.unipile.com/reference/chatscontroller_getchat.md): Retrieve the details of a chat. - [List all chats](https://developer.unipile.com/reference/chatscontroller_listallchats.md): Returns a list of chats. Some optional parameters are available to filter the results. - [List all attendees from a chat](https://developer.unipile.com/reference/chatscontroller_listattendees.md): Returns a list of messaging attendees related to a given chat. Some optional parameters are available to filter the results. - [List all messages from a chat](https://developer.unipile.com/reference/chatscontroller_listchatmessages.md): Returns a list of messages related to the given chat. Some parameters are available to filter the results. - [Perform an action on a given chat](https://developer.unipile.com/reference/chatscontroller_patchchat.md): Perform an action like changing the read status, muting the chat, etc. - [Send a message in a chat](https://developer.unipile.com/reference/chatscontroller_sendmessageinchat.md): Send a message to the given chat with the possibility to link some attachments. - [Start a new chat](https://developer.unipile.com/reference/chatscontroller_startnewchat.md): Start a new conversation with one or more attendee. ⚠️ Interactive documentation does not work for Linkedin specific parameters (child parameters not correctly applied in snippet), the correct format is linkedin[inmail] = true, linkedin[api]... - [Synchronize a conversation from its beginning](https://developer.unipile.com/reference/chatscontroller_syncchathistory.md): This route can be used both to initiate a synchronization process and to monitor its status via regular polling. - [Forward a message](https://developer.unipile.com/reference/messagescontroller_forwardmessage.md): Forward a message to a chat. (Whatsapp only) - [Retrieve an attachment from a message](https://developer.unipile.com/reference/messagescontroller_getattachment.md): Retrieve one of the attachment linked to a message. - [Retrieve a message](https://developer.unipile.com/reference/messagescontroller_getmessage.md): Retrieve the details of a message. - [List all messages](https://developer.unipile.com/reference/messagescontroller_listallmessages.md): Returns a list of messages. Some optional parameters are available to filter the results. - [Add a reaction to a post](https://developer.unipile.com/reference/postscontroller_addpostreaction.md): React to either a post or a post comment. - [Create a post](https://developer.unipile.com/reference/postscontroller_createpost.md): Publish a post. - [Retrieve a post](https://developer.unipile.com/reference/postscontroller_getpost.md): Retrieve the details of a post. - [List all comments from a post](https://developer.unipile.com/reference/postscontroller_listallcomments.md): Returns a list of either comments on a given post or replies on a given comment. - [List all reactions from a post](https://developer.unipile.com/reference/postscontroller_listallreactions.md): Returns a list of reactions to either a post or a post comment. - [Comment a post](https://developer.unipile.com/reference/postscontroller_sendcomment.md): Comment a post or reply to a post comment. - [Send an invitation](https://developer.unipile.com/reference/userscontroller_adduserbyidentifier.md): Send an invitation to add someone to your contacts. Ensure careful implementation of this action and consult provider limits and restrictions: https://developer.unipile.com/docs/provider-limits-and-restrictions - [Cancel an invitation](https://developer.unipile.com/reference/userscontroller_cancelinvitation.md): Cancel a pending invitation sent to someone. - [Edit own profile](https://developer.unipile.com/reference/userscontroller_editaccountownerprofile.md): Modify informations on account owner profile. ⚠️ Interactive documentation does not provide the expected format for nested parameters in code snippet. They should be formatted with brackets like the following examples : `location[id]=105015875`, `picture_settings[filter]=STUDIO` or `picture_settings[layout][bottomLeft][x]=1.25`. When working with arrays, just set one field for each value with the same key, for example : `experience[skills]=development \ experience[skills]=management`. - [Retrieve own profile](https://developer.unipile.com/reference/userscontroller_getaccountownerprofile.md): Retrieve informations about account owner. - [List all followers](https://developer.unipile.com/reference/userscontroller_getfollowers.md): Returns a list of all the followers of the current user. Ensure careful implementation of this action and consult provider limits and restrictions: https://developer.unipile.com/docs/provider-limits-and-restrictions - [List all followed accounts](https://developer.unipile.com/reference/userscontroller_getfollowing.md): Returns a list of all the followed accounts of an account. Ensure careful implementation of this action and consult provider limits and restrictions: https://developer.unipile.com/docs/provider-limits-and-restrictions - [Retrieve a profile](https://developer.unipile.com/reference/userscontroller_getprofilebyidentifier.md): Retrieve the profile of a user. Ensure careful implementation of this action and consult provider limits and restrictions: https://developer.unipile.com/docs/provider-limits-and-restrictions - [List all relations](https://developer.unipile.com/reference/userscontroller_getrelations.md): Returns a list of all the relations of an account. Ensure careful implementation of this action and consult provider limits and restrictions: https://developer.unipile.com/docs/provider-limits-and-restrictions - [Handle a received invitation](https://developer.unipile.com/reference/userscontroller_handleinvitationreceived.md): Accept or decline a connection invitation. - [List all comments](https://developer.unipile.com/reference/userscontroller_listallcomments.md): Returns a list of comments written by a user. - [List all posts](https://developer.unipile.com/reference/userscontroller_listallposts.md): Returns a list of posts written by a user or a company. - [List all reactions](https://developer.unipile.com/reference/userscontroller_listallreactions.md): Returns a list of reactions to posts or comments from a user. - [List all invitations received](https://developer.unipile.com/reference/userscontroller_listalluserinvitationsreceived.md): Returns a list of all invitations that have been received. - [List all invitations sent](https://developer.unipile.com/reference/userscontroller_listalluserinvitationssent.md): Returns a list of all invitations sent that are pending. - [Create a webhook](https://developer.unipile.com/reference/webhookscontroller_createwebhook.md): Create a webhook. - [Delete a webhook](https://developer.unipile.com/reference/webhookscontroller_deletewebhook.md): Delete a webhook. - [List all webhooks](https://developer.unipile.com/reference/webhookscontroller_listwebhooks.md): Returns a list of the webhooks. ## Changelog - [Last months update](https://developer.unipile.com/changelog/last-months-update-2.md) - [Last months update](https://developer.unipile.com/changelog/last-months-update-1.md) - [Last months update](https://developer.unipile.com/changelog/last-months-updates.md) - [Last months update](https://developer.unipile.com/changelog/last-months-update.md) - [Last months update](https://developer.unipile.com/changelog/last-weeks-update.md)