Amazon-Ads authentication and configuration
This page documents the authentication and configuration options for the Amazon-Ads agent connector.
Authentication
Open source execution
In open source mode, you provide API credentials directly to the connector.
OAuth
| Field Name | Type | Required | Description |
|---|---|---|---|
client_id | str | Yes | The client ID of your Amazon Ads API application |
client_secret | str | Yes | The client secret of your Amazon Ads API application |
refresh_token | str | Yes | The refresh token obtained from the OAuth authorization flow |
from airbyte_agent_amazon-ads import AmazonAdsConnector
from airbyte_agent_amazon-ads.models import AmazonAdsAuthConfig
connector = AmazonAdsConnector(
auth_config=AmazonAdsAuthConfig(
client_id="<The client ID of your Amazon Ads API application>",
client_secret="<The client secret of your Amazon Ads API application>",
refresh_token="<The refresh token obtained from the OAuth authorization flow>"
)
)
Token
This authentication method isn't available for this connector.
Hosted execution
In hosted mode, you first create a connector via the Airbyte API (providing your OAuth or Token credentials), then execute operations using either the Python SDK or API. If you need a step-by-step guide, see the hosted execution tutorial.
OAuth
Create a connector with OAuth credentials:
curl -X POST 'https://api.airbyte.ai/v1/integrations/connectors' \
-H 'Authorization: Bearer <SCOPED_TOKEN>' \
-H 'Content-Type: application/json' \
-d '{
"external_user_id": "<EXTERNAL_USER_ID>",
"connector_type": "Amazon-Ads",
"name": "My Amazon-Ads Connector",
"credentials": {
"client_id": "<The client ID of your Amazon Ads API application>",
"client_secret": "<The client secret of your Amazon Ads API application>",
"refresh_token": "<The refresh token obtained from the OAuth authorization flow>"
}
}'
Token
This authentication method isn't available for this connector.
Execution
After creating the connector, execute operations using either the Python SDK or API.
Python SDK
from airbyte_agent_amazon-ads import AmazonAdsConnector
connector = AmazonAdsConnector(
external_user_id="<your-scoped-token>",
airbyte_client_id="<your-client-id>",
airbyte_client_secret="<your-client-secret>"
)
@agent.tool_plain # assumes you're using Pydantic AI
@AmazonAdsConnector.describe
async def amazon-ads_execute(entity: str, action: str, params: dict | None = None):
return await connector.execute(entity, action, params or {})
API
curl -X POST 'https://api.airbyte.ai/api/v1/connectors/sources/<connector_id>/execute' \
-H 'Authorization: Bearer <SCOPED_TOKEN>' \
-H 'Content-Type: application/json' \
-d '{"entity": "<entity>", "action": "<action>", "params": {}}'
Configuration
The Amazon-Ads connector requires the following configuration variables. These variables are used to construct the base API URL. Pass them via the config parameter when initializing the connector.
| Variable | Type | Required | Default | Description |
|---|---|---|---|---|
region_url | string | Yes | https://advertising-api.amazon.com | The Amazon Ads API endpoint URL based on region: |
- NA (North America): https://advertising-api.amazon.com
- EU (Europe): https://advertising-api-eu.amazon.com
- FE (Far East): https://advertising-api-fe.amazon.com |