Importing Intent Activities

Importing Intent Activities

This guide will walk you through importing intent activities into Demandbase by using the Data Import API.


Step 1: Create an Import Job

Make a POST request to the /job endpoint:

  • entityType should be intent_activity.
  • source should be CSV.
  • Omit activity_type_id for intent imports.

Example:

curl --location 'https://uapi.demandbase.com/import/v1/job' \
--header 'Authorization: Bearer <YOUR_API_TOKEN>' \
--header 'Content-Type: application/json' \
--data '{
    "dataImportName": "Your Data Import Name",
    "entityType": "intent_activity",
    "source": "CSV"
}'

For more details, see the POST /job documentation.

Step 2: Upload Your CSV File

Use the job id from your creation response, and make a PUT request to /job/\{id\}/data. Attach your CSV file in the request body.

Example:

curl --location --request PUT 'https://uapi.demandbase.com/import/v1/job/{id}/data' \
--header 'Authorization: Bearer <YOUR_API_TOKEN>' \
--header 'Content-Type: text/csv' \
--data-binary '@path_to_csv.csv'

Consult the PUT /job/{id}/data documentation for more information.

Step 3: Track the Job Status

Once you upload the data, follow the progress by making a GET request to /job/\{id\}:

curl --location 'https://uapi.demandbase.com/import/v1/job/{id}' \
--header 'Authorization: Bearer <YOUR_API_TOKEN>'

You’ll see a state field that reflects whether the job is processing, completed, or failed.

📘

Important: Even after the job is marked completed, it can take about one day for the newly uploaded data to be fully processed and available (similar to other activity data imports).

Step 4: Categories & CSV Templates

Using the Generic template enables you to specify a category in the “Source” column of each record. This "category" manifests as a new category of activities in Demandbase.

📘

Important: Use the following generic CSV template for intent activities import:

SourceTopicDomainDate
intentActivitySourceintentTopiccompanydomain.com10-10-2024


Known Limitations

  • UI Visibility Intent data uploaded via this API will not appear in the Demandbase UI (e.g., the “Imported Data” tab) at this time. This functionality is planned for a future release.
  • Processing Delay As noted, even after a job’s completed status is returned, expect up to one day for data to propagate throughout all relevant Demandbase systems.