Skip to content
Submit POI Data
.md

Submit POI Data

POI (Point of Interest) submissions let you upload location data for processing. You can submit by uploading a file or by posting a list, then read back the submission and its status.

Prerequisites

  • A bearer token (Authentication).
  • Your POI segments, categories, and brands - read them first if you need ids.

Read your POI reference lists

# Segments
curl "https://console.intuizi.com/api/v2/my-data/pois/segments/index" \
  -H "Authorization: Bearer <YOUR_TOKEN>" -H "Accept: application/json"

# Categories
curl "https://console.intuizi.com/api/v2/my-data/pois/categories/index" \
  -H "Authorization: Bearer <YOUR_TOKEN>" -H "Accept: application/json"

# Brands
curl "https://console.intuizi.com/api/v2/my-data/pois/brands/index" \
  -H "Authorization: Bearer <YOUR_TOKEN>" -H "Accept: application/json"

Create a submission by list

POST /api/v2/my-data/pois/submissions/create-by-list

curl -X POST "https://console.intuizi.com/api/v2/my-data/pois/submissions/create-by-list" \
  -H "Authorization: Bearer <YOUR_TOKEN>" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json" \
  -d '{ ... }'

See the exact request body in the API Reference.

Create a submission by file

POST /api/v2/my-data/pois/submissions/create-by-file

This endpoint accepts a file upload. Refer to the API Reference for the multipart fields.

Update or replace a brand’s POIs

A submission can also bring a brand’s existing POIs up to date. Every create takes the same three fields for it:

  • key sets how each listed location is matched to the brand’s existing POIs, gps-coordinates when left out. With location-id, a location matches the POI whose id is its location_id, which must be the id of one of your POIs, and remove archives nothing unless at least one location has a location_id.
  • update updates the POI a location matches. Without it, that POI is left as it is. A matched location is never added a second time, and a location that matches nothing is added as a new POI.
  • remove archives every POI the brand had that no location of the submission matches, once the whole submission has been matched, whatever its size. The matched POIs keep their ids. It archives nothing when no location has a value for the key (a location_id, store_id, master_id, or external_id). List every location the brand should keep, in one submission, not the ones to drop.

update and remove take effect when Intuizi approves the submission. The accepted key values and the full rules are in the matching note.

List and read submissions

# List
curl "https://console.intuizi.com/api/v2/my-data/pois/submissions/index" \
  -H "Authorization: Bearer <YOUR_TOKEN>" -H "Accept: application/json"

# Read one
curl "https://console.intuizi.com/api/v2/my-data/pois/submissions/123" \
  -H "Authorization: Bearer <YOUR_TOKEN>" -H "Accept: application/json"

Delete a submission

POST /api/v2/my-data/pois/submissions/delete-by-id

curl -X POST "https://console.intuizi.com/api/v2/my-data/pois/submissions/delete-by-id" \
  -H "Authorization: Bearer <YOUR_TOKEN>" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json" \
  -d '{"id": 123}'

The exact field-level contract for every endpoint above is in the API Reference.

Related

  • My POI Data - the full field-level reference for every POI endpoint, including the presigned upload flow and the optional backfill.
  • Uploads - reserve a presigned slot for large-file submissions.
  • Create an Audience - target the POIs you submitted from the POI dataset.
  • Status Codes - the submission status note.