Zyte api

Learn how to use Zyte api with Composio

Overview

SLUG: ZYTE_API

Description

Zyte API is a web scraping solution that automates data extraction from websites, handling challenges like bans and dynamic content.

Authentication Details

generic_api_key
stringRequired

Connecting to Zyte api

Create an auth config

Use the dashboard to create an auth config for the Zyte api toolkit. This allows you to connect multiple Zyte api accounts to Composio for agents to use.

1

Select App

Navigate to [Zyte api](https://platform.composio.dev?next_page=/marketplace/Zyte api).

2

Configure Auth Config Settings

Select among the supported auth schemes of and configure them here.

3

Create and Get auth config ID

Click “Create Zyte api Auth Config”. After creation, copy the displayed ID starting with ac_. This is your auth config ID. This is not a sensitive ID — you can save it in environment variables or a database. This ID will be used to create connections to the toolkit for a given user.

Connect Your Account

Using API Key

1from composio import Composio
2
3# Replace these with your actual values
4zyte_api_auth_config_id = "ac_YOUR_ZYTE_API_CONFIG_ID" # Auth config ID created above
5user_id = "0000-0000-0000" # UUID from database/app
6
7composio = Composio()
8
9def authenticate_toolkit(user_id: str, auth_config_id: str):
10 # Replace this with a method to retrieve an API key from the user.
11 # Or supply your own.
12 user_api_key = input("[!] Enter API key")
13
14 connection_request = composio.connected_accounts.initiate(
15 user_id=user_id,
16 auth_config_id=auth_config_id,
17 config={"auth_scheme": "API_KEY", "val": {"generic_api_key": user_api_key}}
18 )
19
20 # API Key authentication is immediate - no redirect needed
21 print(f"Successfully connected Zyte api for user {user_id}")
22 print(f"Connection status: {connection_request.status}")
23
24 return connection_request.id
25
26
27connection_id = authenticate_toolkit(user_id, zyte_api_auth_config_id)
28
29# You can verify the connection using:
30connected_account = composio.connected_accounts.get(connection_id)
31print(f"Connected account: {connected_account}")

Tools

Executing tools

To prototype you can execute some tools to see the responses and working on the [Zyte api toolkit’s playground](https://app.composio.dev/app/Zyte api)

Python
1from composio import Composio
2from openai import OpenAI
3import json
4
5openai = OpenAI()
6composio = Composio()
7
8# User ID must be a valid UUID format
9user_id = "0000-0000-0000" # Replace with actual user UUID from your database
10
11tools = composio.tools.get(user_id=user_id, toolkits=["ZYTE_API"])
12
13print("[!] Tools:")
14print(json.dumps(tools))
15
16def invoke_llm(task = "What can you do?"):
17 completion = openai.chat.completions.create(
18 model="gpt-4o",
19 messages=[
20 {
21 "role": "user",
22 "content": task, # Your task here!
23 },
24 ],
25 tools=tools,
26 )
27
28 # Handle Result from tool call
29 result = composio.provider.handle_tool_calls(user_id=user_id, response=completion)
30 print(f"[!] Completion: {completion}")
31 print(f"[!] Tool call result: {result}")
32
33invoke_llm()

Tool List

Tool Name: Fetch Active Scheduled Maintenances

Description

Tool to fetch currently active scheduled maintenances. use when you need to know ongoing maintenance events.

Action Parameters

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get scheduled maintenances

Description

Tool to get the 50 most recent scheduled maintenances (upcoming and completed) from zyte status api. use after confirming you need the latest maintenance schedule for monitoring.

Action Parameters

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Zyte API: Get Unresolved Incidents

Description

Tool to retrieve unresolved incidents from zyte status api. use when you need to check currently open incidents.

Action Parameters

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: List Zyte API status incidents

Description

Tool to list the 50 most recent incidents on the zyte api status page. use after needing current api health or incident summaries.

Action Parameters

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Zyte Status Summary

Description

Tool to get a summary of status indicators, component statuses, unresolved incidents, and scheduled maintenances. use when you need an overview of the current zyte service health.

Action Parameters

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Upcoming Scheduled Maintenances

Description

Tool to retrieve upcoming scheduled maintenance windows. use when you need to list upcoming maintenance events from the zyte api status page.

Action Parameters

page
integer
per_page
integer
sort
string

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Zyte API Components

Description

Tool to fetch the list of zyte api service components and their statuses. use when you need a current snapshot of component health from the zyte status page.

Action Parameters

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Zyte API Status Rollup

Description

Tool to retrieve the overall status rollup for the zyte api. use when you need a current summary of service health before proceeding.

Action Parameters

Action Response

data
objectRequired
error
string
successful
booleanRequired