For the complete documentation index, see llms.txt. This page is also available as Markdown.

Catalogs

List All Catalogs

get

Returns a list of all your product catalogs, which can be filtered by CampaignId or Status.

Authorizations
AuthorizationstringRequired

Use your AccountSID as the username and AuthToken as the password.

Path parameters
AccountSIDstringRequired

Your unique account identifier.

Query parameters
CampaignIdintegerOptional

Filter catalogs by the ID of the program (campaign) they belong to.

Statusstring · enumOptional

Filter catalogs by their current state of use.

Possible values:
Responses
200

A paginated list of catalog objects.

application/json
get/Advertisers/{AccountSID}/Catalogs
cURL
curl -L \
  --url 'https://api.impact.com/Advertisers/{AccountSID}/Catalogs' \
  --user '{AccountSID}:{AuthToken}' \
  --header 'Accept: */*'
200

A paginated list of catalog objects.

{
  "Catalogs": [
    {
      "Id": "99999",
      "Name": "Acme Sports Catalog",
      "Filename": "acme_sports.csv",
      "AdvertiserId": 1000,
      "CampaignId": 1000,
      "Status": "ACTIVE",
      "NumberOfItems": 1000,
      "DateLastUpdated": "2026-01-15T10:00:00-08:00",
      "Currency": "USD",
      "ServiceAreas": [
        "text"
      ],
      "UploadMethod": "IR_SFTP",
      "ShoppingCart": {
        "ShoppingCartType": "SHOPIFY",
        "BaseUrl": "https://acme.example.com",
        "CollectionIds": [
          "text"
        ],
        "CollectionTitles": [
          "text"
        ]
      },
      "ItemsUri": "/Advertisers/<AccountSID>/Catalogs/99999/Items",
      "Uri": "/Advertisers/<AccountSID>/Actions/1000.4636.401482/Items/12345"
    }
  ]
}

Get Catalog Details

get

Retrieves the details of an existing catalog using its unique ID.

Authorizations
AuthorizationstringRequired

Use your AccountSID as the username and AuthToken as the password.

Path parameters
AccountSIDstringRequired

Your unique account identifier.

CatalogIdintegerRequired

Unique identifier for the catalog.

Responses
200

A single catalog object.

application/json
IdstringOptional

Unique identifier for the catalog (the impact.com Catalog Id).

Example: 99999
NamestringOptional

Name of the catalog.

Example: Acme Sports Catalog
FilenamestringOptional

Name of the file that contains the catalog.

Example: acme_sports.csv
AdvertiserIdintegerOptional

Id of the brand (formerly known as advertiser) that owns the catalog.

Example: 1000
CampaignIdintegerOptional

Id of the program (formerly known as campaign) to which the catalog belongs.

Example: 1000
Statusstring · enumOptional

State of use the catalog is in (e.g., ACTIVE, CLOSED, DEACTIVATED, PENDING).

Example: ACTIVEPossible values:
NumberOfItemsintegerOptional

Number of items in the catalog.

Example: 1000
DateLastUpdatedstring · date-timeOptional

Date and time the catalog was last updated (ISO 8601).

Example: 2026-01-15T10:00:00-08:00
CurrencystringOptional

Currency in which the items' prices are listed. See ISO 4217.

Example: USD
ServiceAreasstring[]Optional

List of geographical areas targeted by the catalog.

UploadMethodstring · enumOptional

How the catalog was uploaded (e.g., DIRECT_UPLOAD, IR_SFTP, SHOPPING_CART_PULL).

Example: IR_SFTPPossible values:
ItemsUristring · uri-referenceOptional

URI to view this catalog's items.

Example: /Advertisers/<AccountSID>/Catalogs/99999/Items
Uristring · uri-referenceOptional

Direct URI to this catalog.

Example: /Advertisers/<AccountSID>/Actions/1000.4636.401482/Items/12345
get/Advertisers/{AccountSID}/Catalogs/{CatalogId}
cURL
curl -L \
  --url 'https://api.impact.com/Advertisers/{AccountSID}/Catalogs/{CatalogId}' \
  --user '{AccountSID}:{AuthToken}' \
  --header 'Accept: */*'
200

A single catalog object.

{
  "Id": "99999",
  "Name": "Acme Sports Catalog",
  "Filename": "acme_sports.csv",
  "AdvertiserId": 1000,
  "CampaignId": 1000,
  "Status": "ACTIVE",
  "NumberOfItems": 1000,
  "DateLastUpdated": "2026-01-15T10:00:00-08:00",
  "Currency": "USD",
  "ServiceAreas": [
    "text"
  ],
  "UploadMethod": "IR_SFTP",
  "ShoppingCart": {
    "ShoppingCartType": "SHOPIFY",
    "BaseUrl": "https://acme.example.com",
    "CollectionIds": [
      "text"
    ],
    "CollectionTitles": [
      "text"
    ]
  },
  "ItemsUri": "/Advertisers/<AccountSID>/Catalogs/99999/Items",
  "Uri": "/Advertisers/<AccountSID>/Actions/1000.4636.401482/Items/12345"
}

Update Catalog Pull Settings

put

Programmatically updates a catalog's "Pull from URL" settings to automate data synchronization from a remote file.

Authorizations
AuthorizationstringRequired

Use your AccountSID as the username and AuthToken as the password.

Path parameters
AccountSIDstringRequired

Your unique account identifier.

CatalogIdintegerRequired

Unique identifier for the catalog.

Body
uploadTypestring · enumRequired

Method for retrieving the catalog (e.g., PULL_FROM_URL).

Possible values:
Responses
200

The full catalog object with the updated fields.

application/json
IdstringOptional

Unique identifier for the catalog (the impact.com Catalog Id).

Example: 99999
NamestringOptional

Name of the catalog.

Example: Acme Sports Catalog
FilenamestringOptional

Name of the file that contains the catalog.

Example: acme_sports.csv
AdvertiserIdintegerOptional

Id of the brand (formerly known as advertiser) that owns the catalog.

Example: 1000
CampaignIdintegerOptional

Id of the program (formerly known as campaign) to which the catalog belongs.

Example: 1000
Statusstring · enumOptional

State of use the catalog is in (e.g., ACTIVE, CLOSED, DEACTIVATED, PENDING).

Example: ACTIVEPossible values:
NumberOfItemsintegerOptional

Number of items in the catalog.

Example: 1000
DateLastUpdatedstring · date-timeOptional

Date and time the catalog was last updated (ISO 8601).

Example: 2026-01-15T10:00:00-08:00
CurrencystringOptional

Currency in which the items' prices are listed. See ISO 4217.

Example: USD
ServiceAreasstring[]Optional

List of geographical areas targeted by the catalog.

UploadMethodstring · enumOptional

How the catalog was uploaded (e.g., DIRECT_UPLOAD, IR_SFTP, SHOPPING_CART_PULL).

Example: IR_SFTPPossible values:
ItemsUristring · uri-referenceOptional

URI to view this catalog's items.

Example: /Advertisers/<AccountSID>/Catalogs/99999/Items
Uristring · uri-referenceOptional

Direct URI to this catalog.

Example: /Advertisers/<AccountSID>/Actions/1000.4636.401482/Items/12345
put/Advertisers/{AccountSID}/Catalogs/{CatalogId}
cURL
curl -L \
  --request PUT \
  --url 'https://api.impact.com/Advertisers/{AccountSID}/Catalogs/{CatalogId}' \
  --user '{AccountSID}:{AuthToken}' \
  --header 'Content-Type: application/json' \
  --header 'Accept: */*'
200

The full catalog object with the updated fields.

{
  "Id": "99999",
  "Name": "Acme Sports Catalog",
  "Filename": "acme_sports.csv",
  "AdvertiserId": 1000,
  "CampaignId": 1000,
  "Status": "ACTIVE",
  "NumberOfItems": 1000,
  "DateLastUpdated": "2026-01-15T10:00:00-08:00",
  "Currency": "USD",
  "ServiceAreas": [
    "text"
  ],
  "UploadMethod": "IR_SFTP",
  "ShoppingCart": {
    "ShoppingCartType": "SHOPIFY",
    "BaseUrl": "https://acme.example.com",
    "CollectionIds": [
      "text"
    ],
    "CollectionTitles": [
      "text"
    ]
  },
  "ItemsUri": "/Advertisers/<AccountSID>/Catalogs/99999/Items",
  "Uri": "/Advertisers/<AccountSID>/Actions/1000.4636.401482/Items/12345"
}

Upload a Catalog File

post

Uploads a full catalog file via API, overwriting the existing catalog. This avoids updating items record-by-record.

Prerequisites:

  • The catalog must already exist.

  • The file must be provided as multipart/form-data (field name data), not raw data in the request body.

  • If the catalog uses the Google Merchant Center (GMC) format, the file must be a TXT (tab-delimited) or XML file.

  • If the catalog uses a custom format, the file must be a CSV (comma-delimited) or XML file.

  • The file must be less than 1 GB in size. This limit applies to the file as transferred, so when you upload a compressed file it applies to the compressed size.

Compressed uploads:

  • impact.com supports gzip and standard zip compressed files.

  • Compress large catalogs before you upload them. Because the 1 GB limit applies to the file as transferred, you can upload a catalog of several GB in size once it is compressed.

Authorizations
AuthorizationstringRequired

Use your AccountSID as the username and AuthToken as the password.

Path parameters
AccountSIDstringRequired

Your unique account identifier.

CatalogIdintegerRequired

Unique identifier for the catalog.

Body
datastring · binaryOptional

The catalog file to upload.

Responses
200

The file was uploaded successfully.

application/json
StatusstringOptional

Indicates whether the upload was successful.

Example: OK
post/Advertisers/{AccountSID}/Catalogs/{CatalogId}/Upload
cURL
curl -L \
  --request POST \
  --url 'https://api.impact.com/Advertisers/{AccountSID}/Catalogs/{CatalogId}/Upload' \
  --user '{AccountSID}:{AuthToken}' \
  --header 'Accept: */*'
200

The file was uploaded successfully.

{
  "Status": "OK"
}

Last updated