diff --git a/airbyte-integrations/connectors/source-tiktok-marketing/source_tiktok_marketing/manifest.yaml b/airbyte-integrations/connectors/source-tiktok-marketing/source_tiktok_marketing/manifest.yaml index 3e0b916c82b1..8f9be24897be 100644 --- a/airbyte-integrations/connectors/source-tiktok-marketing/source_tiktok_marketing/manifest.yaml +++ b/airbyte-integrations/connectors/source-tiktok-marketing/source_tiktok_marketing/manifest.yaml @@ -1593,6 +1593,164 @@ streams: - $ref: "#/definitions/ad_groups_reports_lifetime_stream" - $ref: "#/definitions/advertisers_audience_reports_lifetime_stream" +spec: + type: Spec + documentation_url: https://docs.airbyte.com/integrations/sources/tiktok-marketing + connection_specification: + $schema: http://json-schema.org/draft-07/schema# + title: TikTok Marketing Source Spec + additionalProperties: true + type: object + properties: + credentials: + title: Authentication Method + description: Authentication method + default: {} + order: 0 + type: object + oneOf: + - title: OAuth2.0 + type: object + properties: + auth_type: + title: Auth Type + const: oauth2.0 + order: 0 + type: string + app_id: + title: App ID + description: The Developer Application App ID. + airbyte_secret: true + type: string + secret: + title: Secret + description: The Developer Application Secret. + airbyte_secret: true + type: string + access_token: + title: Access Token + description: Long-term Authorized Access Token. + airbyte_secret: true + type: string + advertiser_id: + title: Advertiser ID + description: + The Advertiser ID to filter reports and streams. Let this + empty to retrieve all. + type: string + required: + - app_id + - secret + - access_token + - title: Sandbox Access Token + type: object + properties: + auth_type: + title: Auth Type + const: sandbox_access_token + order: 0 + type: string + advertiser_id: + title: Advertiser ID + description: + The Advertiser ID which generated for the developer's Sandbox + application. + type: string + access_token: + title: Access Token + description: The long-term authorized access token. + airbyte_secret: true + type: string + required: + - advertiser_id + - access_token + start_date: + title: Replication Start Date + description: + "The Start Date in format: YYYY-MM-DD. Any data before this date + will not be replicated. If this parameter is not set, all data will be replicated." + default: "2016-09-01" + pattern: "^[0-9]{4}-[0-9]{2}-[0-9]{2}$" + order: 1 + type: string + format: date + end_date: + title: End Date + description: + The date until which you'd like to replicate data for all incremental + streams, in the format YYYY-MM-DD. All data generated between start_date and + this date will be replicated. Not setting this option will result in always + syncing the data till the current date. + pattern: "^[0-9]{4}-[0-9]{2}-[0-9]{2}$" + order: 2 + type: string + format: date + attribution_window: + title: Attribution Window + description: The attribution window in days. + minimum: 0 + maximum: 364 + default: 3 + order: 3 + type: integer + include_deleted: + title: Include Deleted Data in Reports + description: Set to active if you want to include deleted data in reports. + default: false + order: 4 + type: boolean + advanced_auth: + auth_flow_type: oauth2.0 + predicate_key: + - credentials + - auth_type + predicate_value: oauth2.0 + oauth_config_specification: + complete_oauth_output_specification: + title: CompleteOauthOutputSpecification + type: object + properties: + access_token: + title: Access Token + path_in_connector_config: + - credentials + - access_token + type: string + required: + - access_token + complete_oauth_server_input_specification: + title: CompleteOauthServerInputSpecification + type: object + properties: + app_id: + title: App Id + type: string + secret: + title: Secret + type: string + required: + - app_id + - secret + complete_oauth_server_output_specification: + title: CompleteOauthServerOutputSpecification + type: object + properties: + app_id: + title: App Id + path_in_connector_config: + - credentials + - app_id + type: string + secret: + title: Secret + path_in_connector_config: + - credentials + - secret + type: string + required: + - app_id + - secret + metadata: autoImportSchema: advertiser_ids: true diff --git a/airbyte-integrations/connectors/source-tiktok-marketing/source_tiktok_marketing/spec.json b/airbyte-integrations/connectors/source-tiktok-marketing/source_tiktok_marketing/spec.json deleted file mode 100644 index 5751d01fdedb..000000000000 --- a/airbyte-integrations/connectors/source-tiktok-marketing/source_tiktok_marketing/spec.json +++ /dev/null @@ -1,166 +0,0 @@ -{ - "documentationUrl": "https://docs.airbyte.com/integrations/sources/tiktok-marketing", - "changelogUrl": "https://docs.airbyte.com/integrations/sources/tiktok-marketing", - "connectionSpecification": { - "title": "TikTok Marketing Source Spec", - "type": "object", - "properties": { - "credentials": { - "title": "Authentication Method", - "description": "Authentication method", - "default": {}, - "order": 0, - "type": "object", - "oneOf": [ - { - "title": "OAuth2.0", - "type": "object", - "properties": { - "auth_type": { - "title": "Auth Type", - "const": "oauth2.0", - "order": 0, - "type": "string" - }, - "app_id": { - "title": "App ID", - "description": "The Developer Application App ID.", - "airbyte_secret": true, - "type": "string" - }, - "secret": { - "title": "Secret", - "description": "The Developer Application Secret.", - "airbyte_secret": true, - "type": "string" - }, - "access_token": { - "title": "Access Token", - "description": "Long-term Authorized Access Token.", - "airbyte_secret": true, - "type": "string" - }, - "advertiser_id": { - "title": "Advertiser ID", - "description": "The Advertiser ID to filter reports and streams. Let this empty to retrieve all.", - "type": "string" - } - }, - "required": ["app_id", "secret", "access_token"] - }, - { - "title": "Sandbox Access Token", - "type": "object", - "properties": { - "auth_type": { - "title": "Auth Type", - "const": "sandbox_access_token", - "order": 0, - "type": "string" - }, - "advertiser_id": { - "title": "Advertiser ID", - "description": "The Advertiser ID which generated for the developer's Sandbox application.", - "type": "string" - }, - "access_token": { - "title": "Access Token", - "description": "The long-term authorized access token.", - "airbyte_secret": true, - "type": "string" - } - }, - "required": ["advertiser_id", "access_token"] - } - ] - }, - "start_date": { - "title": "Replication Start Date", - "description": "The Start Date in format: YYYY-MM-DD. Any data before this date will not be replicated. If this parameter is not set, all data will be replicated.", - "default": "2016-09-01", - "pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}$", - "order": 1, - "type": "string", - "format": "date" - }, - "end_date": { - "title": "End Date", - "description": "The date until which you'd like to replicate data for all incremental streams, in the format YYYY-MM-DD. All data generated between start_date and this date will be replicated. Not setting this option will result in always syncing the data till the current date.", - "pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}$", - "order": 2, - "type": "string", - "format": "date" - }, - "attribution_window": { - "title": "Attribution Window", - "description": "The attribution window in days.", - "minimum": 0, - "maximum": 364, - "default": 3, - "order": 3, - "type": "integer" - }, - "include_deleted": { - "title": "Include Deleted Data in Reports", - "description": "Set to active if you want to include deleted data in reports.", - "default": false, - "order": 4, - "type": "boolean" - } - } - }, - "supportsIncremental": true, - "supported_destination_sync_modes": ["overwrite", "append", "append_dedup"], - "advanced_auth": { - "auth_flow_type": "oauth2.0", - "predicate_key": ["credentials", "auth_type"], - "predicate_value": "oauth2.0", - "oauth_config_specification": { - "complete_oauth_output_specification": { - "title": "CompleteOauthOutputSpecification", - "type": "object", - "properties": { - "access_token": { - "title": "Access Token", - "path_in_connector_config": ["credentials", "access_token"], - "type": "string" - } - }, - "required": ["access_token"] - }, - "complete_oauth_server_input_specification": { - "title": "CompleteOauthServerInputSpecification", - "type": "object", - "properties": { - "app_id": { - "title": "App Id", - "type": "string" - }, - "secret": { - "title": "Secret", - "type": "string" - } - }, - "required": ["app_id", "secret"] - }, - "complete_oauth_server_output_specification": { - "title": "CompleteOauthServerOutputSpecification", - "type": "object", - "properties": { - "app_id": { - "title": "App Id", - "path_in_connector_config": ["credentials", "app_id"], - "type": "string" - }, - "secret": { - "title": "Secret", - "path_in_connector_config": ["credentials", "secret"], - "type": "string" - } - }, - "required": ["app_id", "secret"] - } - } - }, - "additionalProperties": true -}