> ## Documentation Index
> Fetch the complete documentation index at: https://deepline.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# PredictLeads: Company Website Evolution

> Track how a company's website has changed over time, from its domain or ID. Includes SDK V2 examples, input constraints, response fields, and Deepline cost.

Track how a company's website has changed over time, from its domain or ID.

> [!NOTE]
>
> Tool ID: `predictleads_company_website_evolution`

## Run this action

Use the TypeScript SDK for one call. Use `ctx.tools.execute(...)` inside a Play for durable calls, scheduled calls, or CSV processing.

```ts theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
import { Deepline } from 'deepline';

const deepline = await Deepline.connect();
const result = await deepline.tools.execute(
  'predictleads_company_website_evolution',
  {
    "company_id_or_domain": "example.com"
  },
);

console.log(result.toolResponse.raw);
```

### CLI

```bash theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
deepline tools execute predictleads_company_website_evolution --input '{
  "company_id_or_domain": "example.com"
}' --json
```

## Example response

The static output schema lacks the details for a reliable example. Use `deepline describe predictleads_company_website_evolution --json` for the complete live contract.

## Input reference

Returns a list of company's Website Evolution.

| Name | Type | Required | Default | Details |
| - | - | - | - | - |
| `payload.company_id_or_domain` | `string` | Yes | — | Company's ID or domain. |
| `payload.first_seen_at_from` | `string` | No | — | Only return `Subpages` first seen after given date (ISO 8601). Format: `date`. |
| `payload.first_seen_at_until` | `string` | No | — | Only return `Subpages` first seen before given date (ISO 8601). Format: `date`. |
| `payload.page` | `integer` | No | `1` | Page number of shown items. **NOTE**: If the parameter is not provided, the meta property `count` will be omitted from response for performance reasons. Minimum: 1. |
| `payload.limit` | `integer` | No | `100` | Limit the number of shown items per page. Maximum: 1000. |

<details>
  <summary>Show raw input schema</summary>

  ### Input JSON Schema

  ```json theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
  {
    "type": "object",
    "description": "Returns a list of company's Website Evolution.",
    "properties": {
      "company_id_or_domain": {
        "type": "string",
        "description": "Company's ID or domain."
      },
      "first_seen_at_from": {
        "type": "string",
        "description": "Only return `Subpages` first seen after given date (ISO 8601).",
        "format": "date"
      },
      "first_seen_at_until": {
        "type": "string",
        "description": "Only return `Subpages` first seen before given date (ISO 8601).",
        "format": "date"
      },
      "page": {
        "type": "integer",
        "description": "Page number of shown items. **NOTE**: If the parameter is not provided, the meta property `count` will be omitted from response for performance reasons.",
        "default": 1,
        "minimum": 1
      },
      "limit": {
        "type": "integer",
        "description": "Limit the number of shown items per page.",
        "default": 100,
        "maximum": 1000
      }
    },
    "required": [
      "company_id_or_domain"
    ],
    "additionalProperties": false
  }
  ```
</details>

## Output reference

Standard tool result payload.

| Name | Type | Required | Default | Details |
| - | - | - | - | - |
| `result.data` | `object` | Yes | — | Since 2021, PredictLeads has detected some 578 million subpages on about 70 million websites, with the goal to track how their websites are evolving through time. The Website Evolution dataset tracks when subpages such as "about us", "blog", "careers", "api docs", "customer support" etc. are added over time. The more subpages that are added in a shorter time-frame, the faster the company grows. |
| `result.data.data` | `array` | Yes | — | — |
| `result.data.data[].id` | `string` | Yes | — | ID of the `Subpage` object. Format: `uuid`. |
| `result.data.data[].type` | `"subpage"` | Yes | — | Type of the `Subpage` object. |
| `result.data.data[].attributes` | `object` | Yes | — | Attributes of the `Subpage` object. |
| `result.data.data[].attributes.category` | `"#&lt;Set: &#123;\"blog\", \"news\", \"press\", \"about\", \"leadership\", \"jobs\", \"facebook\", \"twitter\", \"linkedin\", \"instagram\", \"pinterest\", \"contact\", \"playstore\", \"appstore\", \"news_outlet\", \"customers\", \"partners\", \"integrations\", \"case_studies\", \"portfolio\", \"suppliers\", \"testimonials\", \"login\", \"support\", \"pricing\", \"job_board\", \"main\", \"github\", \"investors\", \"products\", \"solutions\", \"status\", \"demo\", \"resources\", \"events\", \"developers\", \"api\", \"terms\", \"privacy\", \"trust\", \"feedback\", \"marketplace\", \"store\", \"community\", \"retail\", \"sitemap\", \"webinars\", \"search\", \"social_media\", \"updates\", \"registration\", \"locations\", \"external_review\", \"discord\", \"youtube\", \"tiktok\", \"sec\", \"review\", \"subprocessors\", \"changelog\"&#125;&gt;"` | Yes | — | Subpage category. Allowed: \`#\<Set: \{"blog", "news", "press", "about", "leadership", "jobs", "facebook", "twitter", "linkedin", "instagram", "pinterest", "contact", "playstore", "appstore", "news\_outlet", "customers", "partners", "integrations", "case\_studies", "portfolio", "suppliers", "testimonials", "login", "support", "pricing", "job\_board", "main", "github", "investors", "products", "solutions", "status", "demo", "resources", "events", "developers", "api", "terms", "privacy", "trust", See the live schema for the complete constraint. |
| `result.data.data[].attributes.url` | `string` | Yes | — | Subpage URL. Format: `uri`. |
| `result.data.data[].attributes.text_content` | `null \| string` | Yes | — | Text content from the subpage in markdown format. Sentences are contextually separated with new lines (\n). |
| `result.data.data[].attributes.first_seen_at` | `string` | Yes | — | Date & time (ISO 8601) of when the `Subpage` was first seen. Format: `date-time`. |
| `result.data.data[].attributes.last_seen_at` | `string` | Yes | — | Date & time (ISO 8601) of when the `Subpage` was last seen. Format: `date-time`. |
| `result.data.data[].attributes.last_extraction_states` | `array` | Yes | — | — |
| `result.data.data[].attributes.last_extraction_states[].attributes` | `object` | Yes | — | Attributes of the `LastExtractionStates` object. |
| `result.data.data[].attributes.last_extraction_states[].attributes.status` | `string` | Yes | — | Extraction status |
| `result.data.data[].attributes.last_extraction_states[].attributes.status_code` | `integer` | Yes | — | HTTP response status code |
| `result.data.data[].attributes.last_extraction_states[].attributes.processed_at` | `string` | Yes | — | Date & time (ISO 8601) of when the `LastExtractionStates` was last processed. Format: `date-time`. |
| `result.data.data[].relationships` | `object` | Yes | — | The data contains references to related objects listed in the `included` property. |
| `result.data.data[].relationships.company` | `object` | Yes | — | The data contains a reference to related `CompanyLite` object listed in the `included` property. |
| `result.data.data[].relationships.company.data` | `object` | Yes | — | — |
| `result.data.data[].relationships.company.data.id` | `string` | Yes | — | ID of the included `CompanyLite` object. Format: `uuid`. |
| `result.data.data[].relationships.company.data.type` | `"company"` | Yes | — | Type of the included `CompanyLite` object. |
| `result.data.included` | `array` | Yes | — | Contains objects referenced in property `relationships`. |
| `result.data.included[].id` | `string` | Yes | — | ID of the `CompanyLite` object. Format: `uuid`. |
| `result.data.included[].type` | `"company"` | Yes | — | Type of the `CompanyLite` object. |
| `result.data.included[].attributes` | `object` | Yes | — | Attributes of the `CompanyLite` object. |
| `result.data.included[].attributes.domain` | `string` | Yes | — | Company domain name. |
| `result.data.included[].attributes.company_name` | `string \| null` | Yes | — | Company name if available. |
| `result.data.included[].attributes.ticker` | `string \| null` | Yes | — | Company stock symbol (ticker) if available. |
| `result.data.meta` | `object` | No | — | Meta information about `WebsiteEvolutionDataset` object. |
| `result.data.meta.schema_version` | `string` | Yes | — | Represents schema version of objects. |
| `result.data.meta.record_state` | `"active"` | Yes | — | Represents record state of objects. |
| `result.data.meta.count` | `integer` | No | — | Total number of results. **NOTE**: Only included in API responses when the request parameter `page` is provided, for performance reasons. |
| `result.meta` | `object` | No | — | Additional response metadata (status, paging). |

<details>
  <summary>Show raw output schema</summary>

  ### Output JSON Schema

  ```json theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
  {
    "type": "object",
    "description": "Standard tool result payload.",
    "properties": {
      "data": {
        "type": "object",
        "description": "Since 2021, PredictLeads has detected some 578 million subpages on about 70 million websites, with the goal to track how their websites are evolving through time. The Website Evolution dataset tracks when subpages such as \"about us\", \"blog\", \"careers\", \"api docs\", \"customer support\" etc. are added over time. The more subpages that are added in a shorter time-frame, the faster the company grows.",
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "type": "object",
              "description": "The `Subpage` object.",
              "properties": {
                "id": {
                  "type": "string",
                  "description": "ID of the `Subpage` object.",
                  "format": "uuid"
                },
                "type": {
                  "description": "Type of the `Subpage` object.",
                  "const": "subpage"
                },
                "attributes": {
                  "type": "object",
                  "description": "Attributes of the `Subpage` object.",
                  "properties": {
                    "category": {
                      "type": "string",
                      "description": "Subpage category.",
                      "enum": [
                        "#<Set: {\"blog\", \"news\", \"press\", \"about\", \"leadership\", \"jobs\", \"facebook\", \"twitter\", \"linkedin\", \"instagram\", \"pinterest\", \"contact\", \"playstore\", \"appstore\", \"news_outlet\", \"customers\", \"partners\", \"integrations\", \"case_studies\", \"portfolio\", \"suppliers\", \"testimonials\", \"login\", \"support\", \"pricing\", \"job_board\", \"main\", \"github\", \"investors\", \"products\", \"solutions\", \"status\", \"demo\", \"resources\", \"events\", \"developers\", \"api\", \"terms\", \"privacy\", \"trust\", \"feedback\", \"marketplace\", \"store\", \"community\", \"retail\", \"sitemap\", \"webinars\", \"search\", \"social_media\", \"updates\", \"registration\", \"locations\", \"external_review\", \"discord\", \"youtube\", \"tiktok\", \"sec\", \"review\", \"subprocessors\", \"changelog\"}>"
                      ]
                    },
                    "url": {
                      "type": "string",
                      "description": "Subpage URL.",
                      "format": "uri"
                    },
                    "text_content": {
                      "type": [
                        "null",
                        "string"
                      ],
                      "description": "Text content from the subpage in markdown format. Sentences are contextually separated with new lines (\\n)."
                    },
                    "first_seen_at": {
                      "type": "string",
                      "description": "Date & time (ISO 8601) of when the `Subpage` was first seen.",
                      "format": "date-time"
                    },
                    "last_seen_at": {
                      "type": "string",
                      "description": "Date & time (ISO 8601) of when the `Subpage` was last seen.",
                      "format": "date-time"
                    },
                    "last_extraction_states": {
                      "type": "array",
                      "items": {
                        "description": "The `LastExtractionStates` object.",
                        "properties": {
                          "attributes": {
                            "type": "object",
                            "description": "Attributes of the `LastExtractionStates` object.",
                            "properties": {
                              "status": {
                                "type": "string",
                                "description": "Extraction status"
                              },
                              "status_code": {
                                "type": "integer",
                                "description": "HTTP response status code"
                              },
                              "processed_at": {
                                "type": "string",
                                "description": "Date & time (ISO 8601) of when the `LastExtractionStates` was last processed.",
                                "format": "date-time"
                              }
                            },
                            "required": [
                              "status",
                              "status_code",
                              "processed_at"
                            ],
                            "additionalProperties": false
                          }
                        },
                        "required": [
                          "attributes"
                        ],
                        "additionalProperties": false
                      }
                    }
                  },
                  "required": [
                    "category",
                    "url",
                    "text_content",
                    "first_seen_at",
                    "last_seen_at",
                    "last_extraction_states"
                  ],
                  "additionalProperties": false
                },
                "relationships": {
                  "type": "object",
                  "description": "The data contains references to related objects listed in the `included` property.",
                  "properties": {
                    "company": {
                      "type": "object",
                      "description": "The data contains a reference to related `CompanyLite` object listed in the `included` property.",
                      "properties": {
                        "data": {
                          "type": "object",
                          "properties": {
                            "id": {
                              "type": "string",
                              "description": "ID of the included `CompanyLite` object.",
                              "format": "uuid"
                            },
                            "type": {
                              "description": "Type of the included `CompanyLite` object.",
                              "const": "company"
                            }
                          },
                          "required": [
                            "id",
                            "type"
                          ],
                          "additionalProperties": false
                        }
                      },
                      "required": [
                        "data"
                      ],
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "company"
                  ],
                  "additionalProperties": false
                }
              },
              "required": [
                "id",
                "type",
                "attributes",
                "relationships"
              ],
              "additionalProperties": false
            }
          },
          "included": {
            "type": "array",
            "description": "Contains objects referenced in property `relationships`.",
            "items": {
              "type": "object",
              "description": "The `CompanyLite` object.",
              "properties": {
                "id": {
                  "type": "string",
                  "description": "ID of the `CompanyLite` object.",
                  "format": "uuid"
                },
                "type": {
                  "description": "Type of the `CompanyLite` object.",
                  "const": "company"
                },
                "attributes": {
                  "type": "object",
                  "description": "Attributes of the `CompanyLite` object.",
                  "properties": {
                    "domain": {
                      "type": "string",
                      "description": "Company domain name."
                    },
                    "company_name": {
                      "type": [
                        "string",
                        "null"
                      ],
                      "description": "Company name if available."
                    },
                    "ticker": {
                      "type": [
                        "string",
                        "null"
                      ],
                      "description": "Company stock symbol (ticker) if available."
                    }
                  },
                  "required": [
                    "domain",
                    "company_name",
                    "ticker"
                  ],
                  "additionalProperties": false
                }
              },
              "required": [
                "id",
                "type",
                "attributes"
              ],
              "additionalProperties": false
            }
          },
          "meta": {
            "type": "object",
            "description": "Meta information about `WebsiteEvolutionDataset` object.",
            "properties": {
              "schema_version": {
                "type": "string",
                "description": "Represents schema version of objects."
              },
              "record_state": {
                "type": "string",
                "description": "Represents record state of objects.",
                "const": "active"
              },
              "count": {
                "type": "integer",
                "description": "Total number of results. **NOTE**: Only included in API responses when the request parameter `page` is provided, for performance reasons."
              }
            },
            "required": [
              "schema_version",
              "record_state"
            ],
            "additionalProperties": false
          }
        },
        "required": [
          "data",
          "included"
        ],
        "additionalProperties": false
      },
      "meta": {
        "type": "object",
        "description": "Additional response metadata (status, paging).",
        "additionalProperties": true
      }
    },
    "required": [
      "data"
    ],
    "additionalProperties": false
  }
  ```
</details>

## Deepline cost

* Pricing model: `fixed` (per call).
* Estimated Deepline credits: `0.56` per pricing unit.

## Related documentation

* [PredictLeads provider guide](https://deepline.com/docs/providers/predictleads/guide.md)
* [SDK V2 quickstart](https://deepline.com/docs/sdk-v2/quickstart.md)
* [SDK reference](https://deepline.com/docs/sdk-v2/sdk-reference.md)
* [Run tools across a CSV](https://deepline.com/docs/sdk-v2/batch-csv.md)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.