Class: Zernio::LinkedInMentionsApi

Inherits:
Object
  • Object
show all
Defined in:
lib/zernio-sdk/api/linked_in_mentions_api.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(api_client = ApiClient.default) ⇒ LinkedInMentionsApi

Returns a new instance of LinkedInMentionsApi.



19
20
21
# File 'lib/zernio-sdk/api/linked_in_mentions_api.rb', line 19

def initialize(api_client = ApiClient.default)
  @api_client = api_client
end

Instance Attribute Details

#api_clientObject

Returns the value of attribute api_client.



17
18
19
# File 'lib/zernio-sdk/api/linked_in_mentions_api.rb', line 17

def api_client
  @api_client
end

Instance Method Details

#get_linked_in_mentions(account_id, url, opts = {}) ⇒ GetLinkedInMentions200Response

Resolve LinkedIn mention Converts a LinkedIn profile or company URL to a URN for @mentions in posts. How to use LinkedIn @mentions (2-step workflow): 1. Call this endpoint with the LinkedIn profile/company URL to get the mention URN and format. 2. Embed the returned mentionFormat (e.g. @Vincent Jong) directly in your post's content field. Example: - Resolve: GET /v1/accounts/id/linkedin-mentions?url=linkedin.com/in/vincentjong&displayName=Vincent Jong - Returns: mentionFormat: "@Vincent Jong" - Use in post content: "Great talk with @Vincent Jong today!" Important: The mentions array field in POST /v1/posts is stored for reference only and does NOT trigger @mentions on LinkedIn. You must embed the mention format directly in the content text. Requirements: - Person mentions require the LinkedIn account to be admin of at least one organization. This is a LinkedIn API limitation: the only endpoints that resolve profile URLs to member URNs (vanityUrl, peopleTypeahead) are scoped to organization followers. There is no public LinkedIn API to resolve a vanity URL without organization context. - Organization mentions (e.g. @Microsoft) work without this requirement. - For person mentions to be clickable, the displayName parameter must exactly match the name shown on their LinkedIn profile. - Person mentions DO work when published from personal profiles (the URN just needs to be valid). The limitation is only in the resolution step (URL to URN), not in publishing.

Parameters:

  • account_id (String)

    The LinkedIn account ID

  • url (String)

    LinkedIn profile URL, company URL, or vanity name.

  • opts (Hash) (defaults to: {})

    the optional parameters

Options Hash (opts):

  • :display_name (String)

    Exact display name as shown on LinkedIn. Required for person mentions to be clickable. Optional for org mentions.

Returns:



29
30
31
32
# File 'lib/zernio-sdk/api/linked_in_mentions_api.rb', line 29

def get_linked_in_mentions(, url, opts = {})
  data, _status_code, _headers = get_linked_in_mentions_with_http_info(, url, opts)
  data
end

#get_linked_in_mentions_with_http_info(account_id, url, opts = {}) ⇒ Array<(GetLinkedInMentions200Response, Integer, Hash)>

Resolve LinkedIn mention Converts a LinkedIn profile or company URL to a URN for @mentions in posts. How to use LinkedIn @mentions (2-step workflow): 1. Call this endpoint with the LinkedIn profile/company URL to get the mention URN and format. 2. Embed the returned mentionFormat (e.g. @Vincent Jong) directly in your post's content field. Example: - Resolve: GET /v1/accounts/id/linkedin-mentions?url=linkedin.com/in/vincentjong&displayName=Vincent Jong - Returns: mentionFormat: &quot;@Vincent Jong&quot; - Use in post content: &quot;Great talk with @Vincent Jong today!&quot; Important: The mentions array field in POST /v1/posts is stored for reference only and does NOT trigger @mentions on LinkedIn. You must embed the mention format directly in the content text. Requirements: - Person mentions require the LinkedIn account to be admin of at least one organization. This is a LinkedIn API limitation: the only endpoints that resolve profile URLs to member URNs (vanityUrl, peopleTypeahead) are scoped to organization followers. There is no public LinkedIn API to resolve a vanity URL without organization context. - Organization mentions (e.g. @Microsoft) work without this requirement. - For person mentions to be clickable, the displayName parameter must exactly match the name shown on their LinkedIn profile. - Person mentions DO work when published from personal profiles (the URN just needs to be valid). The limitation is only in the resolution step (URL to URN), not in publishing.

Parameters:

  • account_id (String)

    The LinkedIn account ID

  • url (String)

    LinkedIn profile URL, company URL, or vanity name.

  • opts (Hash) (defaults to: {})

    the optional parameters

Options Hash (opts):

  • :display_name (String)

    Exact display name as shown on LinkedIn. Required for person mentions to be clickable. Optional for org mentions.

Returns:



41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
# File 'lib/zernio-sdk/api/linked_in_mentions_api.rb', line 41

def get_linked_in_mentions_with_http_info(, url, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: LinkedInMentionsApi.get_linked_in_mentions ...'
  end
  # verify the required parameter 'account_id' is set
  if @api_client.config.client_side_validation && .nil?
    fail ArgumentError, "Missing the required parameter 'account_id' when calling LinkedInMentionsApi.get_linked_in_mentions"
  end
  # verify the required parameter 'url' is set
  if @api_client.config.client_side_validation && url.nil?
    fail ArgumentError, "Missing the required parameter 'url' when calling LinkedInMentionsApi.get_linked_in_mentions"
  end
  # resource path
  local_var_path = '/v1/accounts/{accountId}/linkedin-mentions'.sub('{' + 'accountId' + '}', CGI.escape(.to_s))

  # query parameters
  query_params = opts[:query_params] || {}
  query_params[:'url'] = url
  query_params[:'displayName'] = opts[:'display_name'] if !opts[:'display_name'].nil?

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body]

  # return_type
  return_type = opts[:debug_return_type] || 'GetLinkedInMentions200Response'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['bearerAuth']

  new_options = opts.merge(
    :operation => :"LinkedInMentionsApi.get_linked_in_mentions",
    :header_params => header_params,
    :query_params => query_params,
    :form_params => form_params,
    :body => post_body,
    :auth_names => auth_names,
    :return_type => return_type
  )

  data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: LinkedInMentionsApi#get_linked_in_mentions\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end