UNPKG

n8n-nodes-linkupapi

Version:

n8n node for LINKUP API - Complete LinkedIn automation with 100% API coverage and full documentation

520 lines (519 loc) 15.5 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.countryProperty = exports.paginationProperties = exports.commonProperties = void 0; // Common properties used throughout the node exports.commonProperties = [ // === INFORMATION PANEL === { displayName: `Welcome to <b>Linkup API</b> for LinkedIn automation! 🚀<br/><br/> If you don't have an account yet, <a href="https://linkupapi.com" target="_blank">visit this page</a> to create your account and get your API key.<br/><br/> This powerful API allows you to automate all your LinkedIn activities including profile management, networking, messaging, and content creation.`, name: "notice", type: "notice", default: "", displayOptions: { show: { operation: ["login"], }, }, }, // === RESOURCE SELECTOR === { displayName: "Resource", name: "resource", type: "options", noDataExpression: true, options: [ { name: "Authentication", value: "authentication", }, { name: "Profile", value: "profile", }, { name: "Company", value: "company", }, { name: "Network", value: "network", }, { name: "Message", value: "message", }, { name: "Post", value: "post", }, { name: "Recruiter", value: "recruiter", }, { name: "Signal", value: "signal", }, { name: "Company", value: "companyApi", }, { name: "Person", value: "personApi", }, { name: "Multi-Requests", value: "multiRequests", }, ], default: "authentication", }, // === OPERATION SELECTOR === { displayName: "Operation", name: "operation", type: "options", noDataExpression: true, displayOptions: { show: { resource: ["authentication"], }, }, options: [ { name: "Login", value: "login", description: "Authenticate your LinkedIn account via Linkup", }, { name: "Verify Code", value: "verifyCode", description: "Validate the security code received by email", }, ], default: "login", }, { displayName: "Operation", name: "operation", type: "options", noDataExpression: true, displayOptions: { show: { resource: ["profile"], }, }, options: [ { name: "Get My Profile", value: "getMyProfile", description: "Get your LinkedIn profile information", }, { name: "Extract Profile Information", value: "extractProfileInfo", description: "Extract information from a public LinkedIn profile", }, { name: "Search Profile", value: "searchProfile", description: "Search LinkedIn profiles", }, ], default: "getMyProfile", }, { displayName: "Operation", name: "operation", type: "options", noDataExpression: true, displayOptions: { show: { resource: ["company"], }, }, options: [ { name: "Search Companies", value: "searchCompanies", description: "Search for companies on LinkedIn", }, { name: "Get Company Information", value: "getCompanyInfo", description: "Get detailed information about a company", }, ], default: "searchCompanies", }, { displayName: "Operation", name: "operation", type: "options", noDataExpression: true, displayOptions: { show: { resource: ["network"], }, }, options: [ { name: "Send Connection Request", value: "sendConnectionRequest", description: "Send a connection request to a profile", }, { name: "Get Connections", value: "getConnections", description: "Get your LinkedIn connections", }, { name: "Accept Connection Invitation", value: "acceptConnectionInvitation", description: "Accept a received connection invitation", }, { name: "Get Received Invitations", value: "getReceivedInvitations", description: "Get received connection invitations", }, { name: "Get Sent Invitations", value: "getSentInvitations", description: "Get sent connection invitations", }, { name: "Withdraw Invitation", value: "withdrawInvitation", description: "Withdraw a sent invitation", }, { name: "Get Network Recommendations", value: "getNetworkRecommendations", description: "Get network recommendations", }, { name: "Get Invitation Status", value: "getInvitationStatus", description: "Check invitation status for a profile", }, ], default: "sendConnectionRequest", }, { displayName: "Operation", name: "operation", type: "options", noDataExpression: true, displayOptions: { show: { resource: ["message"], }, }, options: [ { name: "Send Message", value: "sendMessage", description: "Send a message to a connection", }, { name: "Get Message Inbox", value: "getMessageInbox", description: "Get your message inbox", }, { name: "Get Conversation Messages", value: "getConversationMessages", description: "Get messages from a conversation", }, ], default: "sendMessage", }, { displayName: "Operation", name: "operation", type: "options", noDataExpression: true, displayOptions: { show: { resource: ["post"], }, }, options: [ { name: "Get Post Reactions", value: "getPostReactions", description: "Get reactions on a post", }, { name: "React to Post", value: "reactToPost", description: "React to a post", }, { name: "Repost Content", value: "repostContent", description: "Repost content", }, { name: "Add Comment to Post", value: "addCommentToPost", description: "Add a comment to a post", }, { name: "Get Comments", value: "getComments", description: "Get comments on a post", }, { name: "Answer Comment", value: "answerComment", description: "Answer a comment", }, { name: "Search Posts", value: "searchPosts", description: "Search for posts", }, { name: "Create Post", value: "createPost", description: "Create a new post", }, { name: "Get LinkedIn Feed", value: "getLinkedInFeed", description: "Get your LinkedIn feed", }, { name: "Send Post Time Spent", value: "sendPostTimeSpent", description: "Send post time spent signal", }, ], default: "getPostReactions", }, { displayName: "Operation", name: "operation", type: "options", noDataExpression: true, displayOptions: { show: { resource: ["recruiter"], }, }, options: [ { name: "Get Candidates", value: "getCandidates", description: "Get candidate list", }, { name: "Get Candidate CV", value: "getCandidateCV", description: "Get candidate CV", }, { name: "Get Job Posts", value: "getJobPosts", description: "Get job posts", }, { name: "Publish Job", value: "publishJob", description: "Publish a job", }, { name: "Close Job", value: "closeJob", description: "Close a job", }, { name: "Create Job", value: "createJob", description: "Create a new job", }, ], default: "getCandidates", }, { displayName: "Operation", name: "operation", type: "options", noDataExpression: true, displayOptions: { show: { resource: ["multiRequests"], }, }, options: [ { name: "Custom Request", value: "customRequest", description: "Make a custom HTTP request to Linkup API", }, ], default: "customRequest", }, { displayName: "Operation", name: "operation", type: "options", noDataExpression: true, displayOptions: { show: { resource: ["signal"], }, }, options: [ { name: "Extract Post Reactions", value: "extractPostReactions", description: "Extract reactions from a post", }, { name: "Extract Post Comments", value: "extractPostComments", description: "Extract comments from a post", }, { name: "Extract Profile Reactions", value: "extractProfileReactions", description: "Extract reactions from a profile", }, { name: "Extract Profile Comments", value: "extractProfileComments", description: "Extract comments from a profile", }, { name: "Extract Profile Posts", value: "extractProfilePosts", description: "Extract posts from a profile", }, { name: "Extract Company Posts", value: "extractCompanyPosts", description: "Extract posts from a company", }, ], default: "extractPostReactions", }, { displayName: "Operation", name: "operation", type: "options", noDataExpression: true, displayOptions: { show: { resource: ["companyApi"], }, }, options: [ { name: "Search Companies", value: "searchCompanies", description: "Search for companies", }, { name: "Get Company Information", value: "getCompanyInfo", description: "Get company information", }, { name: "Get Company Information by Domain", value: "getCompanyInfoByDomain", description: "Get company information by domain", }, ], default: "searchCompanies", }, { displayName: "Operation", name: "operation", type: "options", noDataExpression: true, displayOptions: { show: { resource: ["personApi"], }, }, options: [ { name: "Search Profiles", value: "searchProfiles", description: "Search for profiles", }, { name: "Extract Profile Information", value: "extractProfileInfo", description: "Extract profile information", }, { name: "Profile Enrichment", value: "profileEnrichment", description: "Enrich profile information", }, { name: "Extract Company Employees", value: "extractCompanyEmployees", description: "Extract employees from a company", }, ], default: "searchProfiles", }, ]; // Common properties for pagination exports.paginationProperties = [ { displayName: "Pagination", name: "pagination", type: "collection", placeholder: "Add pagination options", default: {}, displayOptions: { show: { resource: [ "profile", "company", "network", "message", "post", "recruiter", "signal", "companyApi", "personApi", ], }, }, options: [ { displayName: "Limit", name: "limit", type: "number", default: 10, description: "Number of results to return", }, { displayName: "Offset", name: "offset", type: "number", default: 0, description: "Number of results to skip", }, ], }, ]; // Country property (used in multiple operations) exports.countryProperty = { displayName: "Country", name: "country", type: "string", default: "FR", placeholder: "FR, US, UK, DE, ES, IT, CA, AU, etc.", description: "Country code for proxy selection", };