Base URL
All Search Signals requests use:Authentication
All requests require a valid 1eye API key.$API_KEY as the environment variable containing your API key.
For more information, see Authentication.
Endpoint
Related Endpoints
Use List Signals for straightforward retrieval and Search Signals for advanced filtering using multiple conditions.
1. Search Request
Search Signals accepts a JSON request body containing structured filtering criteria. The same request structure is used by Search Buyers.Example Request
Find Website Signals representing visits to Snowbricks’ pricing page.Request Body
Parameters
How Filtering Works
Each filter rule specifies:- Field – Which Signal attribute to search.
- Operator – How the attribute should be compared.
- Value – The value to compare against.
/pricing.
Combining Multiple Rules
Usefilter.match to control how conditions are combined.
For example:
/pricing.
The all operator is the standard matching mode for combining Signal Type with other search conditions.
Result Limit
limit controls the maximum number of Signals returned in a response.
- Default: 100
- Maximum: 1,000
- Minimum: 1
2. Signal Type Filtering
1eye captures three types of buying Signals.
Search Signals supports searching one, multiple, or all three types.
Signal Type is a standard filter inside
filter.rules. There is no separate signal_types request parameter.
2.1 Search Website Signals
Usesignal_type with the eq operator.
2.2 Search Market Signals
2.3 Search LinkedIn Signals
2.4 Search Multiple Signal Types
Use thein operator to search multiple Signal types in one request.
For example, search Website and Market Signals:
2.5 Search All Signal Types
To search across all three Signal types, omit thesignal_type filter.
For example:
Important
You do not need separate endpoints to search different Signal types. The same endpoint supports every combination:3. Signal Triggers
Every Signal represents an activity that has already occurred. A Signal has two important attributes:type– Identifies the Signal channel.trigger– Identifies the activity that occurred.
Supported Triggers
Trigger Filtering
Use thetrigger field with eq or in.
For example:
Trigger Validation
A trigger must be compatible with the selected Signal type. For example: Valid:researched_topic is a Market trigger, not a Website trigger.
Searching Multiple Triggers
Use thein operator.
For example, search Market Signals involving topic research or competitor evaluation:
Important
When filtering bytrigger, include a compatible signal_type rule.
This ensures that trigger values are interpreted consistently across Website, Market, and LinkedIn Signals.
4. Common Signal Filters
Search Signals supports filtering by attributes shared across compatible Signal types. These filters help identify activity associated with particular companies, Buyers, ICPs, Personas, and time periods.Common Filter Fields
A filter is available only when the corresponding attribute is supported by the selected Signal types.
Example: Signals from an ICP
Find Website and Market Signals associated with Snowbricks’ Cloud-Native SaaS ICP.Example: Signals from a Company
Find buying activity associated with Acme Analytics, a fictional prospective Snowbricks customer.5. Website Signal Filters
Website Signals represent activity captured on your website. Examples include page visits, form submissions, and abandoned forms. Search Website Signals using URL, page, form, device, browser, and attribution criteria.Website Filter Fields
Device Types
Supported values:Example: Pricing Page Visits
Find visitors who viewed Snowbricks’ pricing page.Example: Demo Form Submissions
Find Website Signals representing form submissions on Snowbricks’ demo page.Example: Visitors from Google Ads
Find Website Signals attributed to Google Ads campaigns using UTM tracking.URL Matching
Website Signal Search supports several URL comparison operators:eq– Match an exact URL value.in– Match any URL in a supplied set.contains– Match URLs containing specified text.starts_with– Match URLs beginning with specified text.
Important
Website-specific filters should be combined with:6. Market Signal Filters
Market Signals capture external buying-intent activity related to relevant topics, products, and competitors. For example, Snowbricks might identify potential customers researching lakehouse architecture, cloud data warehousing, or competing data platforms.Market Triggers
Market Filter Fields
Common company, ICP, and Persona filters may also be combined with Market-specific filters where supported.
Example: Lakehouse Research
Find Market Signals involving research into lakehouse architecture.Example: Competitor Evaluations
Find Market Signals where potential Buyers evaluated competitors.How Market Signal Search Works
Search operates on Market Signals already captured by 1eye. It does not:- Initiate new market research.
- Generate additional intent data.
- Enrich new Buyers.
- Create historical Market Signals.
7. LinkedIn Signal Filters
LinkedIn Signals represent activity captured from LinkedIn, including company-page follows and post engagement. These Signals can help identify people engaging with companies and conversations relevant to your business.LinkedIn Triggers
LinkedIn Filter Fields
Common company, ICP, and Persona filters may also be combined with LinkedIn filters where supported.
Example: Followed Company Pages
Find LinkedIn Signals representing company-page follows.Example: LinkedIn Post Engagement
Find LinkedIn Signals representing reactions or comments on posts.Important
LinkedIn Signal Search operates only on activity already available in 1eye. It does not perform live LinkedIn searches, discover new followers, or generate additional LinkedIn Signals.8. Cross-Channel Signal Search
One of the key capabilities of Search Signals is the ability to search multiple buying-intent channels in a single request. For example, Snowbricks might want to identify recent Website and Market Signals from companies matching its ideal customer profile.Example: Website + Market Signals
Example: Multiple Signal Types and Triggers
Find Website page visits and Market topic research activity.Filter Compatibility
When multiple Signal types are selected:- Shared filters can be applied across all selected types.
- Type-specific filters must be compatible with every selected type.
- Trigger values must belong to the selected Signal types.
- Incompatible filter combinations return validation errors.
Global Results
Cross-channel searches return one combined Signal collection. Results are globally sorted by Signal occurrence time. For example:
Results are not grouped into separate Website, Market, and LinkedIn collections.
9. Search Operators
Search Signals supports structured comparisons using field-specific operators.Field-Specific Validation
Not every operator is supported by every field. For example:signal_typesupportseqandin.triggersupportseqandin.urlsupportseq,in,contains, andstarts_with.signal_atsupports datetime operators.company_namesupports string comparisons.
Value Types
Values must match the field’s expected type. String400 Bad Request.
10. Timestamp Filters
Search Signals supports filtering by Signal occurrence time and creation time.Signal Occurrence Time
Usesignal_at when searching buying activities during a specific time period.
The filter maps to the Signal’s public captured_at timestamp.
Example: Recent Buying Activity
Find Signals captured on or after October 1, 2026.Datetime Operators
Timestamps use UTC in ISO 8601 format.
11. Response Structure
Search Signals returns the same Signal objects as the existing List Signals API. There is no separate Search Signal response model.Example Response
200 OK The following abbreviated example illustrates a response containing multiple Signal types.Response Fields
Search Signals preserves the existing Signal object, including:- Signal identifier.
- Signal type.
- Signal trigger.
- Associated Buyer and company information, where available.
- Signal occurrence timestamp.
- Website-specific information.
- Market-specific information.
- LinkedIn-specific information.
- Applicable system-generated metadata.
null, consistent with the existing Signal API.
For complete Signal object definitions, see Retrieve a Signal.
Empty Results
If no Signals match the search, the API returns: 200 OK12. Pagination & Sorting
Search Signals uses cursor-based pagination, consistent with the existing 1eye Public API.Pagination
- Default page size: 100.
- Maximum page size: 1,000.
- Results are returned in pages.
- Each response includes
pagination.next_cursor. - A
nullnext cursor indicates the end of the result set.
Sorting
Search results follow the existing public Signal sorting conventions. Default ordering:Cross-Type Sorting
When searching multiple Signal types, results are sorted globally. For example:13. Search Signals vs. Search Buyers
Search Signals and Search Buyers serve different purposes.Search Signals
Searches existing Signal records using attributes such as:- Signal type.
- Activity trigger.
- Website URL.
- Form URL.
- Market topic.
- LinkedIn activity.
- Company or ICP association.
- Signal timestamp.
Search Buyers
Searches existing Buyer Intelligence using attributes such as:- Contact information.
- Company characteristics.
- ICP and Persona matches.
- Target List memberships.
- Aggregated Signal Counts.
- Attribution.
Example
Question: Find Website Signals involving visits to Snowbricks’ pricing page. Use Search Signals:14. Filter Validation
Search Signals validates every supplied filter against the selected Signal types.Requirements
- Fields must be supported by Signal Search.
- Operators must be valid for the selected field.
- Values must use the expected type.
- Enum values must be recognized.
- Trigger values must be compatible with the selected Signal types.
- Type-specific filters must be compatible with every selected Signal type.
- Unsupported conditions must not be silently ignored.
Invalid Signal Type
For example:instagram is not a supported Signal type.
Invalid Trigger Combination
For example:researched_topic is a Market trigger.
Incompatible Filter
For example:utm_source is a Website-specific attribute.
Missing Values
When a Signal lacks a particular attribute:- Missing fields do not satisfy positive comparisons.
- Null values are not interpreted as zero.
- Unsupported fields are not silently ignored.
15. Error Handling
Search Signals uses the standard 1eye API error format.Invalid Filter
Unsupported filters or incompatible Signal-type combinations return400 Bad Request.
Example Error
400 Bad RequestCommon Validation Errors
- Unsupported Signal type.
- Unsupported trigger.
- Invalid Signal type/trigger combination.
- Unknown filter field.
- Unsupported operator.
- Invalid value type.
- Invalid enum value.
- Missing or malformed filter rules.
- Invalid result limit.
- Invalid pagination cursor.
- Incompatible type-specific filters.
16. Rate Limits & Credits
Rate Limits
Search Signals requests count toward your workspace API rate limits. Rate limits are shared across all API keys belonging to the same workspace. If a workspace exceeds its rate limit, the API returns: 429 Too Many Requests Follow theRetry-After header when provided.
See Rate Limits.
Credits
Search Signals does not consume additional 1eye credits. The API searches existing Signal Intelligence already available in your workspace. It does not:- Generate new Website Signals.
- Generate new Market Signals.
- Generate new LinkedIn Signals.
- Resolve new Buyers.
- Enrich contacts or companies.
- Trigger REEM evaluations.
- Perform live LinkedIn or Market research.
- Recalculate historical buying activity.
- Initiate Destination workflows.
17. Best Practices
Always Specify Signal Type for Channel-Specific Searches
When searching for Website, Market, or LinkedIn-specific attributes, include an explicitsignal_type filter.
This improves clarity and ensures your filters apply to compatible Signals.
Use Triggers to Find Meaningful Activities
Combine Signal Type and Trigger to search for specific activities. Examples:- Website +
visited_page - Website +
filled_form - Market +
researched_topic - Market +
evaluated_competitor - LinkedIn +
followed_page - LinkedIn +
commented_post
Use Cross-Channel Searches for Broader Intelligence
Omitsignal_type when searching for activity across all three channels using shared filters.
For example, search all activity associated with a specific company or ICP.
Combine Filters to Narrow Results
Usematch: "all" to combine Signal Type, Trigger, Company, ICP, and time conditions.
This helps reduce irrelevant results and identify specific buying activities.
Use Time Filters for Recency
Recent buying activity is often more actionable than older activity. Usesignal_at to search for Signals captured during a relevant time period.