Every API here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for apis
7 MCP tools reach this
find_apisBrowse and filter every API in the catalog.
get_api_artifactsOne API's artifacts, grouped by type.
get_openapiThe primary OpenAPI for this API.
find_similar_apisAPIs that look like this one.
apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
resolveTurn a domain, URL or GitHub org into the provider it belongs to.
find_cohortsEvery scored population of providers in the catalog.
All 92 tools →
Call it yourself
curl for this page
This API
curl "https://apis.io/api/v1/apis/convert-goals-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we
store it to create your key and to recognise you if you sign in with another
provider. See our Privacy Policy and
Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Convert Accounts Goals API
description: 'Move your app forward with the Convert API. The Convert API allows
you to manage your Convert Experiences projects using code. The REST API is
an interface for managing and extending functionality of Convert. For
example, instead of creating and maintaining projects using the Convert
Experiences web dashboard you can create an experiment programmatically.
Additionally, if you prefer to run custom analysis on experiment results you
can leverage the API to pull data from Convert Experiences into your own
workflow. If you do not have a Convert account already, sign up for a free
developer account at https://www.convert.com/api/.
*[Convert API V1](/doc/v1) is still available and documentation can be found [here](/doc/v1) but using it is highly discouraged
as it will be phased out in the future*
'
version: 2.0.0
servers:
- url: https://api.convert.com/api/v2
description: Live API server
- url: https://apidev.convert.com/api/v2
description: DEV API server
- url: http://apidev.convert.com:5000/api/v2
description: DEV mocked API server
tags:
- name: Goals
description: Goals measure how well your site fulfills your target objectives. A goal represents a completed activity, called a conversion, that contributes to the success of your business. Examples of goals include making a purchase (for an ecommerce site), completing a game level (for a mobile gaming site), or submitting a contact information form (for a marketing or lead generation site). Read more information about <a href="https://support.convert.com/hc/en-us/articles/204494109-Goals">Goals</a>.
paths:
/accounts/{account_id}/projects/{project_id}/goals:
post:
operationId: getGoalsList
summary: List goals within a project
description: 'Retrieves a list of all conversion goals defined for a specific project.
Goals are used to measure the success of experiences (e.g., purchases, sign-ups, page views).
Supports filtering by status, type, name, and pagination.
The Knowledge Base article "Goals" describes various goal types like ''Visit a specific page'', ''Revenue goal'', ''Click on a link'', etc.
'
tags:
- Goals
parameters:
- name: account_id
in: path
required: true
description: ID of the account that owns the retrieved/saved data
schema:
type: integer
- name: project_id
description: ID of the project to which save/retrieved data is connected
in: path
required: true
schema:
type: integer
requestBody:
$ref: '#/components/requestBodies/GetGoalsRequest'
responses:
'200':
$ref: '#/components/responses/GoalsListResponse'
default:
$ref: '#/components/responses/ErrorResponse'
/accounts/{account_id}/projects/{project_id}/goals/{goal_id}:
get:
operationId: getGoal
summary: Get details for a specific goal
description: 'Retrieves detailed information about a single conversion goal, identified by its `goal_id`.
This includes its name, type (e.g., ''visits_page'', ''revenue'', ''clicks_link''), configuration settings (like URL for page visit goals, or CSS selector for click goals), and triggering rules.
The `include` parameter can fetch additional data like usage statistics.
'
tags:
- Goals
parameters:
- name: account_id
in: path
required: true
description: ID of the account that owns the retrieved/saved data
schema:
type: integer
- name: project_id
description: ID of the project to which save/retrieved data is connected
in: path
required: true
schema:
type: integer
- name: goal_id
in: path
required: true
description: ID of the goal to be retrieved
schema:
type: integer
- name: include
description: 'Specifies the list of optional fields which would be included in the response.
Otherwise, the fields that can be passed through this parameter would not be included in the response.
Read more in the section related to [Optional Fields](#tag/Optional-Fields)
'
in: query
required: false
schema:
type: array
items:
$ref: '#/components/schemas/GoalOptionalFields'
responses:
'200':
$ref: '#/components/responses/GoalResponse'
default:
$ref: '#/components/responses/ErrorResponse'
/accounts/{account_id}/projects/{project_id}/goals/{goal_key}:
get:
operationId: getGoalByKey
summary: Get goal details by its unique key
description: 'Retrieves detailed information about a single conversion goal, identified by its user-defined `goal_key`.
Useful if you have a human-readable key for a goal. Otherwise, similar to getting a goal by ID.
'
tags:
- Goals
parameters:
- name: account_id
in: path
required: true
description: ID of the account that owns the retrieved/saved data
schema:
type: integer
- name: project_id
description: ID of the project to which save/retrieved data is connected
in: path
required: true
schema:
type: integer
- name: goal_key
in: path
required: true
description: Key of the goal to be retrieved
schema:
type: string
- name: include
description: 'Specifies the list of optional fields which would be included in the response.
Otherwise, the fields that can be passed through this parameter would not be included in the response.
Read more in the section related to [Optional Fields](#tag/Optional-Fields)
'
in: query
required: false
schema:
type: array
items:
$ref: '#/components/schemas/GoalOptionalFields'
responses:
'200':
$ref: '#/components/responses/GoalResponse'
default:
$ref: '#/components/responses/ErrorResponse'
/accounts/{account_id}/projects/{project_id}/goals/add:
post:
operationId: createGoal
summary: Create a new conversion goal
description: 'Defines a new conversion goal within a project.
Requires specifying the goal name and type (e.g., ''visits_page'', ''revenue'', ''clicks_link'', ''submits_form'', ''code_trigger'').
Depending on the type, additional settings are needed, such as the target URL for a page visit goal, or the CSS selector for a click goal.
The Knowledge Base article "Goals" (Use a goal template section) lists various types.
'
tags:
- Goals
parameters:
- name: account_id
in: path
required: true
description: ID of the account that owns the retrieved/saved data
schema:
type: integer
- name: project_id
in: path
required: true
description: ID of the project into which the goal is to be stored
schema:
type: integer
requestBody:
$ref: '#/components/requestBodies/CreateGoalRequest'
responses:
'201':
$ref: '#/components/responses/GoalResponse'
default:
$ref: '#/components/responses/ErrorResponse'
/accounts/{account_id}/projects/{project_id}/goals/{goal_id}/update:
post:
operationId: updateGoal
summary: Update an existing conversion goal
description: 'Modifies the configuration of an existing conversion goal.
This can include changing its name, type, status (active/archived), or specific settings like the target URL or triggering rules.
'
tags:
- Goals
parameters:
- name: account_id
in: path
required: true
description: ID of the account that owns the retrieved/saved data
schema:
type: integer
- name: project_id
in: path
required: true
description: ID of the project to which save/retrieved data is connected
schema:
type: integer
- name: goal_id
in: path
required: true
description: ID of the goal to be updated
schema:
type: integer
requestBody:
$ref: '#/components/requestBodies/UpdateGoalRequest'
responses:
'200':
$ref: '#/components/responses/GoalResponse'
default:
$ref: '#/components/responses/ErrorResponse'
/accounts/{account_id}/projects/{project_id}/goals/{goal_id}/delete:
delete:
operationId: deleteGoal
summary: Delete a conversion goal
description: 'Permanently removes a conversion goal from a project.
This action is irreversible. If the goal is in use by active experiences, consider archiving it instead.
'
tags:
- Goals
parameters:
- name: account_id
in: path
required: true
description: ID of the account that owns the retrieved/saved data
schema:
type: integer
- name: project_id
description: ID of the project to which save/retrieved data is connected
in: path
required: true
schema:
type: integer
- name: goal_id
in: path
required: true
description: ID of the goal to be deleted
schema:
type: integer
responses:
'200':
$ref: '#/components/responses/SuccessResponse'
default:
$ref: '#/components/responses/ErrorResponse'
/accounts/{account_id}/projects/{project_id}/goals/bulk-update:
post:
operationId: bulkGoalsUpdate
summary: Update multiple goals at once
description: 'Allows for changing the status (e.g., active, archived) of multiple goals within a project simultaneously.
Requires a list of goal IDs and the target status.
'
tags:
- Goals
parameters:
- name: account_id
in: path
required: true
description: ID of the account that owns the retrieved/saved data
schema:
type: integer
- name: project_id
description: ID of the project to which save/retrieved data is connected
in: path
required: true
schema:
type: integer
requestBody:
$ref: '#/components/requestBodies/BulkUpdateGoalsRequest'
responses:
'200':
$ref: '#/components/responses/BulkSuccessResponse'
default:
$ref: '#/components/responses/ErrorResponse'
/accounts/{account_id}/projects/{project_id}/goals/bulk-delete:
post:
operationId: bulkGoalsDelete
summary: Delete multiple goals at once
description: 'Permanently removes multiple goals from a project in a single operation.
Requires a list of goal IDs. This action is irreversible.
'
tags:
- Goals
parameters:
- name: account_id
in: path
required: true
description: ID of the account that owns the retrieved/saved data
schema:
type: integer
- name: project_id
description: ID of the project to which save/retrieved data is connected
in: path
required: true
schema:
type: integer
requestBody:
$ref: '#/components/requestBodies/BulkDeleteGoalsRequest'
responses:
'200':
$ref: '#/components/responses/BulkSuccessResponse'
default:
$ref: '#/components/responses/ErrorResponse'
/accounts/{account_id}/projects/{project_id}/goals/{goal_id}/clone:
post:
operationId: cloneGoal
summary: Clone an existing conversion goal
description: 'Creates a new goal as an identical copy of an existing one (specified by `goal_id`).
Useful for creating a similar goal with minor modifications or for templating.
'
tags:
- Goals
parameters:
- name: account_id
in: path
required: true
description: ID of the account that owns the retrieved/saved data
schema:
type: integer
- name: project_id
description: ID of the project to which save/retrieved data is connected
in: path
required: true
schema:
type: integer
- name: goal_id
in: path
required: true
description: ID of the goal to be deleted
schema:
type: integer
- name: include
description: 'Specifies the list of optional fields which would be included in the response.
Otherwise, the fields that can be passed through this parameter would not be included in the response.
Read more in the section related to [Optional Fields](#tag/Optional-Fields)
'
in: query
required: false
schema:
type: array
items:
$ref: '#/components/schemas/GoalOptionalFields'
responses:
'201':
$ref: '#/components/responses/GoalResponse'
default:
$ref: '#/components/responses/ErrorResponse'
components:
schemas:
BaseRuleWithBrowserNameValue:
allOf:
- $ref: '#/components/schemas/BaseRule'
- type: object
properties:
value:
description: Browser name used for matching
type: string
enum:
- chrome
- microsoft_ie
- firefox
- microsoft_edge
- mozilla
- opera
- safari
BaseRuleWithSegmentBucketedValue:
allOf:
- $ref: '#/components/schemas/BaseRule'
- type: object
properties:
value:
description: ID of the segment used for matching
type: number
Pagination:
type: object
properties:
current_page:
description: The current page number being displayed from the paginated set.
type: integer
minimum: 1
items_count:
description: The total number of items available across all pages for the current filter criteria.
type: integer
minimum: 0
items_per_page:
description: The number of items included in the current page of results (matches `results_per_page` from the request).
type: integer
minimum: 0
pages_count:
description: The total number of pages available for the current filter criteria and `results_per_page` setting.
type: integer
minimum: 0
GenericTextKeyValueMatchRule:
allOf:
- $ref: '#/components/schemas/BaseRuleWithStringValue'
- type: object
required:
- rule_type
properties:
rule_type:
$ref: '#/components/schemas/GenericTextKeyValueMatchRulesTypes'
matching:
allOf:
- $ref: '#/components/schemas/BaseMatch'
- type: object
properties:
match_type:
$ref: '#/components/schemas/TextMatchingOptions'
- $ref: '#/components/schemas/GenericKey'
DayOfWeekMatchRule:
allOf:
- $ref: '#/components/schemas/BaseRuleWithDayOfWeekValue'
- type: object
required:
- rule_type
properties:
rule_type:
$ref: '#/components/schemas/DayOfWeekMatchRulesTypes'
matching:
allOf:
- $ref: '#/components/schemas/BaseMatch'
- type: object
properties:
match_type:
$ref: '#/components/schemas/NumericMatchingOptions'
WeatherConditionMatchRulesTypes:
type: string
enum:
- weather_condition
GenericBoolMatchRule:
allOf:
- $ref: '#/components/schemas/BaseRuleWithBooleanValue'
- type: object
required:
- rule_type
properties:
rule_type:
$ref: '#/components/schemas/BoolMatchRulesTypes'
matching:
allOf:
- $ref: '#/components/schemas/BaseMatch'
- type: object
properties:
match_type:
$ref: '#/components/schemas/ChoiceMatchingOptions'
CreateSubmitsFormGoal:
allOf:
- $ref: '#/components/schemas/SubmitsFormGoal'
required:
- name
- type
- settings
TextMatchingOptions:
type: string
enum:
- matches
- regexMatches
- contains
- endsWith
- startsWith
MinuteOfHourMatchRulesTypes:
type: string
enum:
- local_time_minute_of_hour
- project_time_minute_of_hour
SortDirection:
type: object
properties:
sort_direction:
type: string
nullable: true
default: desc
description: 'The direction for sorting the list results, based on the `sort_by` field.
- `asc`: Ascending order (e.g., A-Z, 1-10, oldest to newest).
- `desc`: Descending order (e.g., Z-A, 10-1, newest to oldest).
Defaults to `desc` (newest/highest first) if not specified.
'
enum:
- asc
- desc
GenericTextKeyValueMatchRulesTypes:
type: string
enum:
- generic_text_key_value
BaseRuleWithMinuteOfHourValue:
allOf:
- $ref: '#/components/schemas/BaseRule'
- type: object
properties:
value:
description: Minute of hour used for matching
type: number
minimum: 1
maximum: 60
TextMatchRulesTypes:
type: string
enum:
- url
- url_with_query
- query_string
- campaign
- keyword
- medium
- source_name
- city
- region
- browser_version
- user_agent
- page_tag_page_type
- page_tag_category_id
- page_tag_category_name
- page_tag_product_sku
- page_tag_product_name
- page_tag_customer_id
- page_tag_custom_1
- page_tag_custom_2
- page_tag_custom_3
- page_tag_custom_4
- visitor_id
GoalStatuses:
type: string
description: 'The current status of a goal:
- `active`: The goal is active and will track conversions for experiences it''s attached to.
- `archived`: The goal is archived and will not track new conversions. Its historical data remains accessible in reports for experiences that previously used it. Archived goals can often be cloned or unarchived.
Knowledge Base: "Benefits of Archiving Unused Goals, Locations, and Audiences."
'
enum:
- active
- archived
GenericBoolKeyValueMatchRule:
allOf:
- $ref: '#/components/schemas/BaseRuleWithBooleanValue'
- type: object
required:
- rule_type
properties:
rule_type:
$ref: '#/components/schemas/GenericBoolKeyValueMatchRulesTypes'
matching:
allOf:
- $ref: '#/components/schemas/BaseMatch'
- type: object
properties:
match_type:
$ref: '#/components/schemas/ChoiceMatchingOptions'
- $ref: '#/components/schemas/GenericKey'
CreateAdvancedGoal:
allOf:
- $ref: '#/components/schemas/AdvancedGoal'
required:
- triggering_rule
- name
- type
BaseRuleWithOsValue:
allOf:
- $ref: '#/components/schemas/BaseRule'
- type: object
properties:
value:
description: Operating System name used for matching
type: string
enum:
- android
- iphone
- ipod
- ipad
- windows
- macos
- linux
ScrollPercentageGoalSettings:
type: object
additionalProperties: false
properties:
percentage:
type: number
description: The scroll depth percentage (e.g., 25, 50, 75, 100) that a visitor must reach on a page for this goal to trigger. The page(s) are defined in the goal's `triggering_rule`.
required:
- percentage
BaseRuleWithStringValue:
allOf:
- $ref: '#/components/schemas/BaseRule'
- type: object
properties:
value:
description: The value used to match against 'rule_type' using 'matching'
type: string
GenericNumericKeyValueMatchRule:
allOf:
- $ref: '#/components/schemas/BaseRuleWithNumericValue'
- type: object
required:
- rule_type
properties:
rule_type:
$ref: '#/components/schemas/GenericNumericKeyValueMatchRulesTypes'
matching:
allOf:
- $ref: '#/components/schemas/BaseMatch'
- type: object
properties:
match_type:
$ref: '#/components/schemas/NumericMatchingOptions'
- $ref: '#/components/schemas/GenericKey'
BulkUpdateGoalRequestData:
type: object
description: Request body for bulk updating the status of multiple goals.
additionalProperties: false
properties:
id:
$ref: '#/components/schemas/BulkGoalsIds'
status:
$ref: '#/components/schemas/GoalStatuses'
required:
- id
- status
OnlyCount:
type: object
properties:
onlyCount:
type: boolean
description: 'If set to `true` in a list request, the response will only contain the total count of matching items (`extra.pagination.items_count`)
and will not include the actual item data. Useful for quickly getting totals without fetching full datasets.
'
RuleObject:
type: object
nullable: true
description: 'Defines the logical structure for combining multiple rule conditions. It uses a nested OR -> AND -> OR_WHEN structure.
- The top-level `OR` array means if *any* of its contained AND blocks evaluate to true, the entire rule set is true.
- Each object within the `OR` array has an `AND` array. For this AND block to be true, *all* of its contained OR_WHEN blocks must evaluate to true.
- Each object within the `AND` array has an `OR_WHEN` array. For this OR_WHEN block to be true, *any* of its individual `RuleElement` conditions must evaluate to true.
This structure allows for complex logical expressions like `(CondA AND CondB) OR (CondC AND CondD)`.
'
properties:
OR:
description: An array of AND-blocks. The overall rule matches if any of these AND-blocks match.
type: array
items:
type: object
properties:
AND:
description: An array of OR_WHEN-blocks. This AND-block matches if all its OR_WHEN-blocks match.
type: array
items:
type: object
properties:
OR_WHEN:
description: An array of individual rule elements. This OR_WHEN-block matches if any of its rule elements match.
type: array
items:
$ref: '#/components/schemas/RuleElement'
VisitorTypeMatchRule:
allOf:
- $ref: '#/components/schemas/BaseRuleWithVisitorTypeValue'
- type: object
required:
- rule_type
properties:
rule_type:
$ref: '#/components/schemas/VisitorTypeMatchRulesTypes'
matching:
allOf:
- $ref: '#/components/schemas/BaseMatch'
- type: object
properties:
match_type:
$ref: '#/components/schemas/ChoiceMatchingOptions'
DayOfWeekMatchRulesTypes:
type: string
enum:
- local_time_day_of_week
- project_time_day_of_week
JsConditionMatchRulesTypes:
type: string
enum:
- js_condition
LanguageMatchRulesTypes:
type: string
enum:
- language
CreateGaGoal:
allOf:
- $ref: '#/components/schemas/GaGoal'
required:
- name
- type
BaseMatch:
type: object
properties:
negated:
description: 'If `true`, the logical result of the match is inverted.
For example, if `match_type` is ''contains'' and `value` is ''apple'', `negated: true` means the rule matches if the attribute *does not* contain ''apple''.
'
type: boolean
RuleElement:
oneOf:
- $ref: '#/components/schemas/GenericTextMatchRule'
- $ref: '#/components/schemas/GenericNumericMatchRule'
- $ref: '#/components/schemas/GenericBoolMatchRule'
- $ref: '#/components/schemas/GenericTextKeyValueMatchRule'
- $ref: '#/components/schemas/GenericNumericKeyValueMatchRule'
- $ref: '#/components/schemas/GenericBoolKeyValueMatchRule'
- $ref: '#/components/schemas/CookieMatchRule'
- $ref: '#/components/schemas/CountryMatchRule'
- $ref: '#/components/schemas/LanguageMatchRule'
- $ref: '#/components/schemas/GoalTriggeredMatchRule'
- $ref: '#/components/schemas/SegmentBucketedMatchRule'
- $ref: '#/components/schemas/DayOfWeekMatchRule'
- $ref: '#/components/schemas/HourOfDayMatchRule'
- $ref: '#/components/schemas/MinuteOfHourMatchRule'
- $ref: '#/components/schemas/BrowserNameMatchRule'
- $ref: '#/components/schemas/OsMatchRule'
- $ref: '#/components/schemas/WeatherConditionMatchRule'
- $ref: '#/components/schemas/VisitorTypeMatchRule'
- $ref: '#/components/schemas/JsConditionMatchRule'
discriminator:
propertyName: rule_type
mapping:
url: '#/components/schemas/GenericTextMatchRule'
url_with_query: '#/components/schemas/GenericTextMatchRule'
query_string: '#/components/schemas/GenericTextMatchRule'
campaign: '#/components/schemas/GenericTextMatchRule'
keyword: '#/components/schemas/GenericTextMatchRule'
medium: '#/components/schemas/GenericTextMatchRule'
source_name: '#/components/schemas/GenericTextMatchRule'
avg_time_page: '#/components/schemas/GenericNumericMatchRule'
city: '#/components/schemas/GenericTextMatchRule'
country: '#/components/schemas/CountryMatchRule'
region: '#/components/schemas/GenericTextMatchRule'
days_since_last_visit: '#/components/schemas/GenericNumericMatchRule'
language: '#/components/schemas/LanguageMatchRule'
pages_visited_count: '#/components/schemas/GenericNumericMatchRule'
goal_triggered: '#/components/schemas/GoalTriggeredMatchRule'
visit_duration: '#/components/schemas/GenericNumericMatchRule'
cookie: '#/components/schemas/CookieMatchRule'
visitor_type: '#/components/schemas/VisitorTypeMatchRule'
visits_count: '#/components/schemas/GenericNumericMatchRule'
bucketed_into_experience: '#/components/schemas/GenericBoolMatchRule'
bucketed_into_segment: '#/components/schemas/SegmentBucketedMatchRule'
local_time_day_of_week: '#/components/schemas/DayOfWeekMatchRule'
local_time_hour_of_day: '#/components/schemas/HourOfDayMatchRule'
local_time_minute_of_hour: '#/components/schemas/MinuteOfHourMatchRule'
project_time_day_of_week: '#/components/schemas/DayOfWeekMatchRule'
project_time_hour_of_day: '#/components/schemas/HourOfDayMatchRule'
project_time_minute_of_hour: '#/components/schemas/MinuteOfHourMatchRule'
browser_name: '#/components/schemas/BrowserNameMatchRule'
browser_version: '#/components/schemas/GenericTextMatchRule'
os: '#/components/schemas/OsMatchRule'
user_agent: '#/components/schemas/GenericTextMatchRule'
is_desktop: '#/components/schemas/GenericBoolMatchRule'
is_mobile: '#/components/schemas/GenericBoolMatchRule'
is_tablet: '#/components/schemas/GenericBoolMatchRule'
js_condition: '#/components/schemas/JsConditionMatchRule'
page_tag_page_type: '#/components/schemas/GenericTextMatchRule'
page_tag_category_id: '#/components/schemas/GenericTextMatchRule'
page_tag_category_name: '#/components/schemas/GenericTextMatchRule'
page_tag_product_sku: '#/components/schemas/GenericTextMatchRule'
page_tag_product_name: '#/components/schemas/GenericTextMatchRule'
page_tag_product_price: '#/components/schemas/GenericNumericMatchRule'
page_tag_customer_id: '#/components/schemas/GenericTextMatchRule'
page_tag_custom_1: '#/components/schemas/GenericTextMatchRule'
page_tag_custom_2: '#/components/schemas/GenericTextMatchRule'
page_tag_custom_3: '#/components/schemas/GenericTextMatchRule'
page_tag_custom_4: '#/components/schemas/GenericTextMatchRule'
weather_condition: '#/components/schemas/WeatherConditionMatchRule'
generic_text_key_value: '#/components/schemas/GenericTextKeyValueMatchRule'
generic_numeric_key_value: '#/components/schemas/GenericNumericKeyValueMatchRule'
generic_bool_key_value: '#/components/schemas/GenericBoolKeyValueMatchRule'
GenericNumericMatchRule:
allOf:
- $ref: '#/components/schemas/BaseRuleWithNumericValue'
- type: object
required:
- rule_type
properties:
rule_type:
$ref: '#/components/schemas/NumericMatchRulesTypes'
matching:
allOf:
- $ref: '#/components/schemas/BaseMatch'
- type: object
properties:
match_type:
$ref: '#/components/schemas/NumericMatchingOptions'
GenericTextMatchRule:
allOf:
- $ref: '#/components/schemas/BaseRuleWithStringValue'
- type: object
required:
- rule_type
properties:
rule_type:
$ref: '#/components/schemas/TextMatchRulesTypes'
matching:
allOf:
- $ref: '#/components/schemas/BaseMatch'
- type: object
properties:
match_type:
$ref: '#/components/schemas/TextMatchingOptions'
CookieMatchingOptions:
type: string
enum:
- matches
- regexMatches
- contains
- endsWith
- startsWith
- exists
- doesNotExist
ErrorData:
type: object
properties:
code:
type: integer
format: int32
message:
oneOf:
- type: string
- type: array
items:
type: string
fields:
oneOf:
- type: string
- type: array
items:
type: string
RevenueGoalSettings:
type: object
additionalProperties: false
properties:
triggering_type:
type: string
description: 'How this revenue goal is triggered:
- `manual`: The goal is triggered by a specific JavaScript call (`_conv_q.push(["pushRevenue", ...])`) on the purchase confirmation page, which includes revenue amount and product count. The `triggering_rule` should be empty or not set.
- `ga`: Convert attempts to automatically capture revenue data from a standard Google Analytics E-commerce tracking implementation when the `triggering_rule` (e.g., matching the confirmation page URL) is met.
'
enum:
- manual
- ga
required:
- triggering_type
CountryMatchRulesTypes:
type: string
enum:
- country
HourOfDayMatchRulesTypes:
type: string
enum:
- local_time_hour_of_day
- project_time_hour_of_day
GoalsListResponseData:
type: object
description: Response containing a list of conversion goals defined within a project, along with pagination details if applicable.
properties:
data:
$ref: '#/components/schemas/GoalsList'
extra:
$ref: '#/components/schemas/Extra'
BaseRuleWithGoalTriggeredValue:
allOf:
- $ref: '#/components/schemas/BaseRule'
- type: object
properties:
value:
description: ID of the goal used for m
# --- truncated at 32 KB (65 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/convert/refs/heads/main/openapi/convert-goals-api-openapi.yml