Linkody API - API Platform
Linkody API (1.1.0)
This page contains the documentation on how to use Linkody via API calls.
Introduction
The Linkody API is built on HTTP and is RESTful. It returns HTTP response codes to indicate success or errors. It accepts and returns JSON in the HTTP body.
You can use your favorite HTTP/REST library for your programming language to use Linkody's API.
In order to access our APIs, you need a Paid Linkody Subscription. After subscribing, you will get a token that will allow you to query the API.
Authentication
Use your token to make requests to the API. Pass it to the API endpoint via the X-AUTH-TOKEN header parameter. Never share your API key, keep it in a secure place.
Example Request (cURL)
curl -X GET "https://www.linkody.com/api/v1/domains" \
-H "Accept: application/json" \
-H "X-AUTH-TOKEN: your_api_token"
Competitors
Get a single Competitor
Retrieve the details of a specific domain's Competitor by ID.
Authorizations:
api_key
path Parameters
| domainId required |
string Domain identifier |
| id required |
string Domain identifier |
query Parameters
| id required |
integer The competitor ID |
| domainId required |
integer The domain ID |
Responses
200 The competitor details
404 Competitor not found
Endpoint: get/api/v1/domains/{domainId}/competitors/{id}
Response samples
Content type application/json
{"id": 1,
"dateAdded": "2025-01-01T15:27:00+05:30",
"name": "example.com",
"notes": null,
"oldName": null,
"mozrank": "5.4000",
"mozupa": "54.00",
"mozpda": "41.00",
"mozfspsc": 1,
"mozfspf": 0,
"trancoRank": 596184,
"ahrefsDomainRating": 72
}
Update competitor details
Update specific fields of a competitor like notes.
Authorizations:
api_key
path Parameters
| id required |
integer The competitor ID |
| domainId required |
integer The domain ID |
Request Body schema: application/json optional
| notes | string or null |
Responses
200 Competitor updated successfully.
400 Validation failed
404 Competitor not found
Endpoint: put/api/v1/domains/{domainId}/competitors/{id}
Request samples
Content type application/json
{"notes": "Updated notes"}
Response samples
Content type application/json
{"success": "Competitor updated successfully."}
Delete an existing competitor
Delete a competitor using its unique identifier.
Authorizations:
api_key
path Parameters
| id required |
integer The competitor Id |
| domainId required |
integer The domain Id |
Responses
200 Competitor deleted successfully.
404 Competitor not found
Endpoint: delete/api/v1/domains/{domainId}/competitors/{id}
Response samples
Content type application/json
{"success": "Competitor deleted successfully."}
Get a list of competitors for a specific domain
Retrieve a list of domains marked as competitors under a specific domain.
Authorizations:
api_key
path Parameters
| id required |
string Domain identifier |
query Parameters
| page | integer Default: 1 The collection page number |
| id required |
integer The ID of the domain for which competitors are retrieved |
| limit | integer Default: 10 The number of items to retrieve per page. |
Responses
200 A paginated list of competitor domains
404 Domain not found
Endpoint: get/api/v1/domains/{id}/competitors
Response samples
Content type application/json
{"totalCount": 20,
"totalPages": 1,
"currentPage": 1,
"competitorsPerPage": 50,
"data": [{"id": 1,
"dateAdded": "2025-01-01T12:12:20+05:30",
"name": "example.com",
"notes": "",
"oldName": null,
"mozrank": "4.6000",
"mozupa": "46.00",
"mozpda": "41.00",
"mozfspsc": 1,
"mozfspf": 0,
"trancoRank": 1000,
"ahrefsDomainRating": 72}]}
Create a new Competitor
Create a new Competitor with specified details.
Authorizations:
api_key
path Parameters
| id required |
integer The competitor ID |
Request Body schema: application/json optional
| name required |
string |
| notes | string or null |
Responses
201 Competitor added successfully.
400 Validation failed
Endpoint: post/api/v1/domains/{id}/competitors/add
Request samples
Content type application/json
{"name": "newcompetitor.com",
"notes": null}
Response samples
Content type application/json
{"success": "Competitor added successfully.",
"competitorId": 1260}
Domain
Get a list of domains
Retrieve a list of domains with details such as name, date added, and SEO metrics.
Authorizations:
api_key
query Parameters
| page | integer Default: 1 The collection page number |
| limit | integer Default: 10 Domain limit |
Responses
200 A paginated list of domains
Endpoint: get/api/v1/domains
Response samples
Content type application/json
{"totalCount": 11,
"totalPages": 1,
"currentPage": 1,
"domainsPerPage": 1,
"data": [{"id": 1,
"dateAdded": "2025-01-01T19:46:05+05:30",
"name": "example.com",
"budget": null,
"notes": null,
"oldName": "",
"mozrank": "5.4000",
"mozupa": "54.00",
"mozpda": "41.00",
"mozfspsc": 1,
"mozfspf": 0,
"trancoRank": 264675,
"ahrefsDomainRating": 72}]}
Create a new domain
Create a new domain with specified details.
Authorizations:
api_key
Request Body schema: application/json optional
| name required |
string |
| budget | float or null |
| notes | string or null |
Responses
201 Domain added successfully.
400 Validation failed
Endpoint: post/api/v1/domains/add
Request samples
Content type application/json
{"name": "newdomain.com",
"budget": 100.11,
"notes": null}
Response samples
Content type application/json
{"success": "Domain added successfully.",
"domainId": 1260}
Get a single domain
Retrieve the details of a specific domain by ID.
Authorizations:
api_key
path Parameters
| id required |
string Domain identifier |
Responses
200 The domain details
404 Domain not found
Endpoint: get/api/v1/domains/{id}
Response samples
Content type application/json
{"id": 1,
"dateAdded": "2025-01-01T15:27:00+05:30",
"name": "example.com",
"budget": "100.00",
"notes": null,
"oldName": null,
"mozrank": "5.4000",
"mozupa": "54.00",
"mozpda": "41.00",
"mozfspsc": 1,
"mozfspf": 0,
"trancoRank": 596184,
"ahrefsDomainRating": 72}
Update domain details
Update specific fields of a domain, including notes, budget, and old_name.
Authorizations:
api_key
path Parameters
| id required |
integer Example: 1260 |
Request Body schema: application/json optional
| notes | string or null |
| budget | string or null |
| oldName | string or null |
Responses
200 Domain updated successfully.
400 Validation failed
404 Competitor not found
Endpoint: put/api/v1/domains/{id}
Request samples
Content type application/json
{"notes": "Updated notes",
"budget": "200.00",
"oldName": "oldName.com"}
Response samples
Content type application/json
{"success": "Domain updated successfully."}
Delete an existing domain
Delete a domain using its unique identifier.
Authorizations:
api_key
path Parameters
| id required |
integer Example: 1260 |
Responses
200 Domain deleted successfully.
404 Domain not found
Endpoint: delete/api/v1/domains/{id}
Response samples
Content type application/json
{"success": "Domain deleted successfully."}
Link
Get a list of links for a domain
Retrieve a list of links associated with a specific domain.
Authorizations:
api_key
path Parameters
| domainId required |
integer Example: 123 The ID of the domain to fetch links for. |
| id required |
string Link identifier |
query Parameters
| page | integer >= 1 Default: 1 The page number to retrieve. |
| limit | integer [ 1 .. 100 ] Default: 10 Example: limit=100 The number of items to retrieve per page. |
| domainId required |
integer The ID of the domain to fetch links for. |
Responses
200 A paginated list of links
404 Domain not found
Endpoint: get/api/v1/domains/{domainId}/links
Response samples
Content type application/json
{"totalCount": 3924,
"totalPages": 393,
"currentPage": 1,
"linksPerPage": 1,
"data": [{"id": 121074,
"dateAdded": "2012-10-24",
"pageUrl": "http://www.example.com/page",
"rel": "follow",
"expectedFollow": "Y",
"status": "OK",
"noindex": "no",
"lastCheck": "2025-01-07",
"lastLive": "",
"href": "http://www.example.com/link",
"expectedHref": "",
"type": "text",
"anchor": "Example Anchor",
"expectedAnchor": "",
"imgAlt": "Example Alt Text",
"googleIndexStatus": "Page Not Indexed",
"trancoRank": "",
"mozrank": "2.4000",
"mozupa": 24,
"mozpda": 20,
"mozfspsc": 0,
"ahrefsDomainRating": 81,
"primaryIp": "192.168.1.1",
"countryCode": "US",
"tld": "com",
"tldCountry": "United States",
"title": "Example Page Title",
"totalLinksOnPage": 100,
"internalCount": 60,
"followCount": 30,
"nofollowCount": 10,
"addedBy": "JohnDoe",
"expirationDate": "2024-01-01",
"cost": "100",
"disavowStatus": null,
"tags": "blog, seo",
"notes": "Example notes about the link"}]}
Create a new link for a domain
Create a new link and associate it with a specific domain.
Authorizations:
api_key
path Parameters
| domainId required |
integer Example: 123 The ID of the domain to associate the new link with. |
| id required |
string Link identifier |
Request Body schema: application/json required
| pageUrl required |
string The URL of the new link. |
| tags | Array of strings Tags associated with the link. |
| notes | string Notes about the link. |
| prospect | string Enum:"isnot""is""alert""done" The prospect status of the link. |
| prospectStatus | string Enum:"candidate""requested""pending""declined""accepted" The detailed prospect status of the link. |
| expectedHref | string The expected landing page URL for the link. |
| expectedAnchor | string The expected anchor text for the link. |
| expectedRel | integer Enum:01 The expected rel value (0 or 1). |
| dateAdded | string The date when the link was added. |
| expirationDate | string The expiration date of the link. |
| cost | float The cost associated with the link. |
| doAlert | boolean Whether an alert should be sent for the link. |
Responses
201 Link created successfully
400 Validation failed
404 Domain not found
Endpoint: post/api/v1/domains/{domainId}/links
Request samples
Content type application/json
{"pageUrl": "https://example.com",
"tags": ["SEO","Marketing"],
"notes": "High authority website"}
Response samples
Content type application/json
{"message": "Link created successfully.",
"linkId": 101}
Get a single link for a domain
Retrieve the details of a specific link associated with a domain.
Authorizations:
api_key
path Parameters
| domainId required |
integer Example: 123 The ID of the domain the link belongs to. |
| id required |
integer Example: 456 The ID of the link to retrieve. |
Responses
200 The details of the specified link
404 Domain/Link not found
Endpoint: get/api/v1/domains/{domainId}/links/{id}
Response samples
Content type application/json
{"id": 121074,
"dateAdded": "2012-10-24",
"pageUrl": "http://www.example.com/page",
"rel": "follow",
"expectedFollow": "Y",
"status": "OK",
"noindex": "no",
"lastCheck": "2025-01-07",
"lastLive": "",
"href": "http://www.example.com/link",
"expectedHref": "",
"type": "text",
"anchor": "Example Anchor",
"expectedAnchor": "",
"imgAlt": "Example Alt Text",
"googleIndexStatus": "Page Not Indexed",
"trancoRank": "",
"mozrank": "2.4000",
"mozupa": 24,
"mozpda": 20,
"mozfspsc": 0,
"ahrefsDomainRating": 81,
"primaryIp": "192.168.1.1",
"countryCode": "US",
"tld": "com",
"tldCountry": "United States",
"title": "Example Page Title",
"totalLinksOnPage": 100,
"internalCount": 60,
"followCount": 30,
"nofollowCount": 10,
"addedBy": "JohnDoe",
"expirationDate": "2024-01-01",
"cost": "100",
"disavowStatus": null,
"tags": "blog, seo",
"notes": "Example notes about the link"}
Update a link for a domain
Update the details of a specific link associated with a domain.
Authorizations:
api_key
path Parameters
| domainId required |
integer Example: 1 The ID of the domain the link belongs to. |
| id required |
integer Example: 2 The ID of the link to update. |
Responses
200 Link updated successfully
400 Validation failed
404 Domain/Link not found
Endpoint: put/api/v1/domains/{domainId}/links/{id}
Request samples
Content type application/json
{"tags": ["SEO","Marketing"],
"notes": "High authority website"}
Response samples
Content type application/json
{"success": "Link updated successfully."}
Delete a link for a domain
Delete a specific link associated with a domain.
Authorizations:
api_key
path Parameters
| domainId required |
integer Example: 123 The ID of the domain the link belongs to. |
| id required |
integer Example: 456 The ID of the link to delete. |
Responses
200 Link deleted successfully
404 Domain/Link not found
Endpoint: delete/api/v1/domains/{domainId}/links/{id}
Response samples
Content type application/json
{"success": "Link deleted successfully."}