Skip to content

Rich URL

Preview

This feature is not subject to our service terms. Pre-GA features are available as is and might have limited support.

The intelligence and syntax components of a URL. For some job types, your application is required to provide a LinkedIn User URL, or it is recommended to add a LinkedIn User URL (or any URL related to the user) because it may increase accuracy and coverage. There are also job types where Modigie may append a LinkedIn User URL.

Schema

The job's payload.urls property is an array of type RichUrlV2.

A RichUrlV2 object has three properties, as described below:

url: Url
The syntax components of a URL. See Url for more details. userFormat is required and all other properties are read-only.
rels: List of string optional

Presumable relationship of the URL. If it's valid LinkedIn user URL, this property will include "linkedInUser". The regular expression is as follows:

^(\/\/|http:\/\/|https:\/\/)?(www\.)?linkedin\.com\/(in\/+([\w\-]{3,100})+\/?|pub\/+([\w\-\/\&]{3,100})+\/?)$
source: JobV2Source optional
The source of this RichUrlV2 object. See Source of an attribute for more information.

Examples

Your application provides a LinkedIn User URL

job-request.json
{
  "payload": {
    "urls": [
      {
        "rels": [
          "linkedInUser"
        ],
        "source": {
          "objectId": "personId1",
          "propertyName": "linkedInUrl__c"
        },
        "url": {
          "userFormat": "linkedin.com/in/a-user-profile"
        }
      }
    ],
    ...
  },
  ...
}

Modigie performs syntax validation on every URL provided by your application.

job-response.json
{
  "payload": {
    "urls": [
      {
        "rels": [
          "linkedInUser"
        ],
        "url": {
          "userFormat": "linkedin.com/in/a-user-profile",
          "rfc3986Format": {
            "port": null,
            "hostname": "www.linkedin.com",
            "netloc": "www.linkedin.com",
            "path": "/in/a-user-profile",
            "username": null,
            "scheme": "https",
            "fragment": "",
            "params": "",
            "password": null,
            "query": ""
          },
          "normalFormat": "https://www.linkedin.com/in/a-user-profile",
          "isResolvable": true,
          "includesAuthority": true,
          "isSyntaxValid": true,
          "isRemote": true
        },
        "source": {
          ...
        }
      }
    ],
    ...
  },
  ...
}

Your application provides an invalid URL

job-request.json
{
  "payload": {
    "urls": [
      {
        "rels": [
          "linkedInUser"
        ],
        "source": {
          "objectId": "personId1",
          "propertyName": "linkedInUrl__c"
        },
        "url": {
          "userFormat": "example"
        }
      }
    ],
    ...
  },
  ...
}

While RichUrlV2 defaults to https as the protocol/schema and the syntax would be technically valid, your application should have additional requirements for most use cases.

Typically, your application should also ensure that isResolvable=true and isRemote=true.

In most use cases the URLs should resolve to a remote machine and not to a local host or a host in non-public network.

Because the URL also is not a valid LinkedIn User URL, Modigie removed the linkedInUser relationship and may reject the job request.

job-response.json
{
  "payload": {
    "urls": [
      {
        "rels": [],
        "url": {
          "includesAuthority": true,
          "isRemote": false,
          "isResolvable": false,
          "isSyntaxValid": true,
          "normalFormat": "https://example",
          "rfc3986Format": {
            "fragment": "",
            "hostname": "example",
            "netloc": "example",
            "params": "",
            "password": null,
            "path": "",
            "port": null,
            "query": "",
            "scheme": "https",
            "username": null
          },
          "userFormat": "example"
        },
        "source": {
          ...
        }
      }
    ],
    ...
  },
  ...
}

Your application provides an invalid LinkedIn User URL

job-request.json
{
  "payload": {
    "urls": [
      {
        "rels": [
          "linkedInUser"
        ],
        "source": {
          "objectId": "personId1",
          "propertyName": "linkedInUrl__c"
        },
        "url": {
          "userFormat": "linkedin.com/feed"
        }
      }
    ],
    ...
  },
  ...
}

For some job types, Modigie requires a LinkedIn User URL and expects the provided URL to be a plain LinkedIn User URL.

LinkedIn Sales Navigator links or other LinkedIn URLs are not qualified as LinkedIn User URLs.

Because the URL also is not a valid LinkedIn User URL, Modigie removed the linkedInUser relationship and may reject the job request.

job-response.json
{
  "payload": {
    "urls": [
      {
        "rels": [],
        "url": {
          "includesAuthority": true,
          "isRemote": true,
          "isResolvable": true,
          "isSyntaxValid": true,
          "normalFormat": "https://linkedin.com/feed",
          "rfc3986Format": {
            "fragment": "",
            "hostname": "linkedin.com",
            "netloc": "linkedin.com",
            "params": "",
            "password": null,
            "path": "/feed",
            "port": null,
            "query": "",
            "scheme": "https",
            "username": null
          },
          "userFormat": "linkedin.com/feed"
        },
        "source": {
          ...
        }
      }
    ],
    ...
  },
  ...
}

Schema: RichUrlV2