Submissions
POI submissions are batches of point-of-interest locations you import into your company’s data. You can list them, read a single one, create them by file upload or by an inline list of locations, and delete a submission that is still waiting for Intuizi’s review.
All submission endpoints are authenticated and JSON-only. Reads use the read rate bucket (120 requests/min); creates and deletes use the write bucket (30 requests/min).
List Submissions
GET /api/v2/my-data/pois/submissions/index
Lists the POI submissions for the authenticated user’s company, with optional search and sort.
Auth: bearer token + Accept: application/json. Rate limit: read bucket.
Query parameters
| Field | Type | Required | Description |
|---|---|---|---|
q | string | No | Free-text search on the submission name. |
sortBy | string | No | Sort field. One of name, status, created_at, updated_at. |
orderBy | string | No | Sort direction. One of asc, desc. |
curl "https://console.intuizi.com/api/v2/my-data/pois/submissions/index?q=Hilton&sortBy=status&orderBy=desc" \
-H "Authorization: Bearer <YOUR_TOKEN>" \
-H "Accept: application/json"Response
{
"status": "success",
"code": 200,
"message": "Resource fetched successfully.",
"data": [
{
"id": 1,
"name": "Virgin train Stations POIs",
"pois_imported": 123,
"pois_imported_count": 123,
"company": { "id": 123, "name": "Company Name" },
"user": { "id": 123, "name": "John Doe" },
"status": { "id": 1, "name": "Waiting" },
"brand": { "id": 123, "name": "Virgin" },
"actions": { "key": "gps-coordinates", "remove": 0, "update": 1 },
"backfill": { "requested": false, "status": null, "job_id": null },
"geocoding": null,
"not_imported_url": null,
"created_at": "2025-01-01 12:00:00",
"updated_at": "2025-01-01 12:00:00"
}
]
}Get Submission
GET /api/v2/my-data/pois/submissions/{id}
Retrieves a single submission owned by the authenticated user’s company.
Auth: bearer token + Accept: application/json. Rate limit: read bucket.
Path parameters
| Field | Type | Required | Description |
|---|---|---|---|
id | integer | Yes | The submission id to fetch. |
curl "https://console.intuizi.com/api/v2/my-data/pois/submissions/123" \
-H "Authorization: Bearer <YOUR_TOKEN>" \
-H "Accept: application/json"Response
{
"status": "success",
"code": 200,
"message": "Resource fetched successfully.",
"data": [
{
"id": 1,
"name": "Virgin train Stations POIs",
"pois_imported": 123,
"pois_imported_count": 123,
"company": { "id": 123, "name": "Company Name" },
"user": { "id": 123, "name": "John Doe" },
"status": { "id": 1, "name": "Waiting" },
"brand": { "id": 123, "name": "Virgin" },
"actions": { "key": "gps-coordinates", "remove": 0, "update": 1 },
"backfill": { "requested": false, "status": null, "job_id": null },
"geocoding": null,
"not_imported_url": null,
"created_at": "2025-01-01 12:00:00",
"updated_at": "2025-01-01 12:00:00"
}
]
}A new submission starts at status 4 Importing and moves to 1 Waiting on
its own once Intuizi has read its locations, and geocoded the ones that came
without coordinates (see
Locations without coordinates). When it reads them, Intuizi checks
every row of the file again, and a submission whose file fails those checks
moves from 4 Importing straight to 3 Disabled. From Waiting, Intuizi reviews
it by hand: an approved submission becomes 2 Imported, and only then do its
locations appear in List POIs. A submission with
locations past the limit may go back to 4 Importing while Intuizi’s team
completes them, and returns to 1 Waiting (see
Files past the limit). A declined one
becomes 3 Disabled. The review is not automatic, so do not poll for
Imported as if it were a processing step. See
Status Codes.
Create Submission by File
POST /api/v2/my-data/pois/submissions/create-by-file
Creates a submission from an uploaded CSV file of locations. For large files, browser clients, or JSON-only integrations, use the presigned upload flow with Create Submission by Upload instead - both doors accept the same files and produce the same submission.
Auth: bearer token + Accept: application/json. Because this is a file
upload, send Content-Type: multipart/form-data (not JSON). Rate limit: write
bucket (30 requests/min).
Body (multipart form fields)
| Field | Type | Required | Description |
|---|---|---|---|
name | string | Yes | The submission name. |
brand_id | integer | Yes | The brand id the POIs belong to. Must exist. |
locations_file | file | Yes | A CSV of locations with a .csv or .txt extension, up to 50 MB. The first row is the header row. A file that starts with a UTF-8 byte order mark, as a spreadsheet writes when it saves as CSV UTF-8, is accepted. So is a file in Windows-1252, as Excel for Windows writes when it saves as CSV (Comma delimited): its accented letters are stored as UTF-8. Save a file in any other encoding as CSV UTF-8. Required headers: longitude and latitude, or the address columns: address1 with zip_code, or with city and state (see Locations without coordinates). A country|alpha_2 or country|alpha_3 column is required too, unless the file has longitude and latitude: a row with coordinates may take its country from its point (see Locations without an address). Optional headers: location_id, store_id, name, address1, address2, city, state, zip_code, dma_desc, polygon, sqft, is_verified, max_trade_area|miles or max_trade_area|meters, external_id, master_id, placekey, h3_index, h3_index_integer, category_taxonomy, and sub_category_taxonomy. A file with any other header is rejected. A location_id value must be the id of one of your POIs, as a whole number (101 or 101.0). |
update | boolean | No | Update the brand’s existing POIs that a listed location matches (see key). As a multipart form field, send 1 or 0 (the string true is rejected). |
remove | boolean | No | Archive the brand’s existing POIs that no listed location matches (see key), and keep the matched ones, updated only with update. Applied once, over the whole submission - see the note below this table. As a multipart form field, send 1 or 0 (the string true is rejected). |
key | string | No | How each listed location is matched to the brand’s existing POIs. One of location-id, gps-coordinates, store-id, master-id, external-id. Defaults to gps-coordinates when left out or null. location-id matches a location’s location_id column to the id of one of the brand’s POIs. With update or remove, a file with rows without coordinates cannot use gps-coordinates. |
Matching. Locations are matched, and update and remove applied, when
Intuizi approves the submission, not when it is created, and the same way on
all three creates. A listed location that matches an existing POI of the
brand is never added a second time: with update it updates that POI, and
without update the POI is left as it is. A location that matches nothing is
added as a new POI.
remove is applied once, after every location of the submission has been
matched, whatever the submission’s size. Every POI the brand had before the
approval that no location matches is archived. The POIs a location matches
keep their ids, and the POIs the submission adds are kept. A submission whose
locations carry values for its key but match no POI archives every POI the
brand had. One that holds no location at all, or in which no location has a
value for its key (a location_id, store_id, master_id, or
external_id, a blank value counting as none), archives nothing. Each
remove submission archives every POI of the brand that it does not list,
so send every location the brand should keep in one submission, not the
ones to drop. If an approval is
interrupted part way, its locations are still imported but remove is not
applied. Send the remove submission again to apply it.
With the location-id key, a location matches the brand’s POI whose id is
its location_id, the id that List POIs
returns. A location with no location_id, or with one that is not the id of
one of the brand’s POIs, matches nothing and is added as a new POI. A
remove submission in which no location has a location_id names no POI to
keep, so it archives nothing.
curl -X POST "https://console.intuizi.com/api/v2/my-data/pois/submissions/create-by-file" \
-H "Authorization: Bearer <YOUR_TOKEN>" \
-H "Accept: application/json" \
-F "name=Virgin train Stations POIs" \
-F "brand_id=123" \
-F "key=gps-coordinates" \
-F "update=1" \
-F "locations_file=@locations.csv"Response
{
"status": "success",
"code": 201,
"message": "Resource created successfully.",
"data": [
{
"value": 123,
"text": "Virgin train Stations POIs"
}
]
}Create Submission by Upload
POST /api/v2/my-data/pois/submissions/create-by-upload
Creates a submission from a file previously uploaded through the presigned
upload flow: reserve an upload with purpose
poi_submission, PUT the CSV to the returned URL, then call this endpoint
with the upload_reference. The file requirements are the same as
Create Submission by File,
and the response is identical. The reference is one-shot - a second create
with the same reference is rejected.
The create checks the start of the file and rejects the file for a problem it
finds there. Intuizi checks every row when it reads the locations, and a
submission whose file fails that check moves to 3 Disabled.
Auth: bearer token + Accept: application/json + Content-Type: application/json. Rate limit: write bucket (30 requests/min). Optional:
Idempotency-Key header makes this create safe to retry - see
Idempotency.
Body
| Field | Type | Required | Description |
|---|---|---|---|
name | string | Yes | The submission name. |
brand_id | integer | Yes | The brand id the POIs belong to. Must exist. |
upload_reference | string | Yes | The upload_reference from Create an Upload (purpose poi_submission), after the file was PUT to the presigned URL. |
update | boolean | No | Update the brand’s existing POIs that a listed location matches (see key). |
remove | boolean | No | Archive the brand’s existing POIs that no listed location matches (see key), and keep the matched ones, updated only with update. Applied once, over the whole submission - see the matching note under Create Submission by File. |
key | string | No | How each listed location is matched to the brand’s existing POIs. One of location-id, gps-coordinates, store-id, master-id, external-id. Defaults to gps-coordinates when left out or null. location-id matches a location’s location_id to the id of one of the brand’s POIs - see the matching note under Create Submission by File. |
curl -X POST "https://console.intuizi.com/api/v2/my-data/pois/submissions/create-by-upload" \
-H "Authorization: Bearer <YOUR_TOKEN>" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{
"name": "Virgin train Stations POIs",
"brand_id": 123,
"upload_reference": "upl_01k0p3v9example"
}'Response
{
"status": "success",
"code": 201,
"message": "Resource created successfully.",
"data": [
{
"value": 123,
"text": "Virgin train Stations POIs"
}
]
}Create Submission by List
POST /api/v2/my-data/pois/submissions/create-by-list
Creates a submission from an inline list of location objects (no file upload).
Auth: bearer token + Accept: application/json + Content-Type: application/json. Rate limit: write bucket (30 requests/min).
Body
| Field | Type | Required | Description |
|---|---|---|---|
name | string | Yes | The submission name (max 255 chars). |
brand_id | integer | Yes | The brand id the POIs belong to. Must exist. |
country_isocode | string | No | ISO code standard for locations[].country. One of alpha_2, alpha_3. Defaults to alpha_3. |
update | boolean | No | Update the brand’s existing POIs that a listed location matches (see key). |
remove | boolean | No | Archive the brand’s existing POIs that no listed location matches (see key), and keep the matched ones, updated only with update. Applied once, over the whole submission - see the matching note under Create Submission by File. |
key | string | No | How each listed location is matched to the brand’s existing POIs. One of location-id, gps-coordinates, store-id, master-id, external-id. Defaults to gps-coordinates when left out or null. location-id matches a location’s location_id to the id of one of the brand’s POIs - see the matching note under Create Submission by File. |
locations | object[] | Yes | The list of location objects (see below). |
Each entry in locations[]:
| Field | Type | Required | Description |
|---|---|---|---|
country | string | Without coordinates | 2- or 3-letter ISO country code, matching country_isocode. A location with both coordinates may leave it out: Intuizi takes it from the point. See Locations without an address. |
longitude | number | Without an address | Longitude, between -180 and 180, not 0. Give both coordinates, or leave out both and give an address: address1, plus zip_code (or city and state). See Locations without coordinates. |
latitude | number | Without an address | Latitude, between -90 and 90, not 0. Give both coordinates, or leave out both and give an address. |
location_id | integer | No | The id of one of your POIs, as List POIs returns it. With the location-id key, the location matches the brand’s POI with this id, and with no match it is added as a new POI. |
store_id | string | No | Your reference store id. |
name | string | No | POI name (max 255 chars). |
address1 | string | Without coordinates | Address line 1, such as 1560 Broadway. |
address2 | string | No | Address line 2. |
city | string | Without coordinates or zip_code | City. |
state | string | Without coordinates or zip_code | State. |
zip_code | string | Without coordinates, or city and state | ZIP/postal code. |
dma_desc | string | No | DMA description. |
polygon | string | No | WKT polygon. |
sqft | number | No | Polygon square footage. |
is_verified | boolean | No | Whether the POI is verified. |
max_trade_area | number | No | Max trade-area radius in miles (min 0.1). |
external_id | string | No | External id. |
master_id | string | No | Master id. |
category_taxonomy | string | No | Category taxonomy label. |
sub_category_taxonomy | string | No | Sub-category taxonomy label. |
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 '{
"name": "Starbucks NYC",
"brand_id": 123,
"country_isocode": "alpha_3",
"locations": [
{
"store_id": "ST-NY-001",
"name": "Starbucks Times Square",
"address1": "1560 Broadway",
"city": "New York",
"state": "NY",
"zip_code": "10036",
"country": "USA",
"longitude": -73.9855,
"latitude": 40.7580
}
]
}'Response
{
"status": "success",
"code": 201,
"message": "Resource created successfully.",
"data": [
{
"value": 123,
"text": "Starbucks NYC"
}
]
}Backfill (optional)
Any of the three creates above can optionally request a historical visitation backfill for the submission’s brand. POI locations only start accumulating visitation from the day they are added; a backfill makes the historical signal for the submission’s brand available for a chosen window. The submission and its backfill are requested in a single call. The backfill is submitted as soon as Intuizi has read the submission’s locations (status Waiting), before they are imported, so it covers the locations the brand already has at that point and not the ones in this submission. Deleting the submission does not cancel it.
Backfills are a gated capability: they require additional permissions that
need to be approved by your Account Manager. A create that requests a backfill
while your account is not enabled returns 403; a create without a backfill is
unaffected.
Add these fields to the create body (they work the same on create-by-file,
create-by-upload, and create-by-list):
| Field | Type | Required | Description |
|---|---|---|---|
backfill | boolean | No | Set true to request a backfill for this submission’s brand. |
backfill_recency | string | With backfill | The window. One of last_30_days, last_90_days, last_180_days, last_full_month, or custom. |
backfill_start_date | string | With custom | Window start, YYYY-MM-DD. By default the earliest available date is 2024-01-01; an earlier start is raised to that floor. |
backfill_end_date | string | With custom | Window end, YYYY-MM-DD. On or after backfill_start_date and not later than today. |
Presets are measured from today and resolve to concrete UTC dates server-side.
last_full_month is the whole previous calendar month. Only custom requires
backfill_start_date / backfill_end_date.
curl -X POST "https://console.intuizi.com/api/v2/my-data/pois/submissions/create-by-upload" \
-H "Authorization: Bearer <YOUR_TOKEN>" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{
"name": "Virgin train Stations POIs",
"brand_id": 123,
"upload_reference": "upl_01k0p3v9example",
"backfill": true,
"backfill_recency": "last_90_days"
}'Backfill status on the submission read
When a submission requested a backfill, Get Submission
carries a backfill block so you can follow it:
{
"backfill": {
"requested": true,
"status": "queued",
"job_id": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee"
}
}requested reflects whether the submission asked for a backfill. job_id and
status populate once the submission has reached Waiting and the backfill has
been submitted. status is a string that progresses to a terminal value
(succeeded, warning, failed, cancelled, or completed_with_errors).
For a submission with no backfill, requested is false and the other fields
are null.
Locations without coordinates
A location may leave out longitude and latitude when it gives an address:
address1, plus zip_code (or city and state), plus the country. Intuizi
geocodes it while the submission is at 4 Importing, before the review, the
same way on every create.
- A location Intuizi places with enough confidence gets the point of its address.
- A location it places with less certainty is flagged for the review, for example when the city or state you sent does not match the address it found but the ZIP code does.
- A location it cannot place has no point: its address was not found, or it matched too loosely, for example with a ZIP code that does not match. Approving the submission does not import it, and it never changes the POI it matches. Add its coordinates, or correct the address, and submit it again.
Nothing you send is changed: the name, the address, and every other field are kept as they are. A location that gives coordinates is never moved.
A file or list may hold any number of locations without coordinates: past the first 10,000 lookups, the rest waits for Intuizi’s team (see Files past the limit).
With update or remove, locations without coordinates cannot be matched on
gps-coordinates, the default key: a point Intuizi geocoded is not a stable
key. Match them on location-id, store-id, master-id, or external-id
instead. Create Submission by File and Create Submission by List reject a
create that would match them on gps-coordinates.
Create Submission by Upload
checks only the start of the file when it creates the submission. A file with a
location without coordinates further on that gps-coordinates would have to
match moves to 3 Disabled when Intuizi reads the locations.
Locations without an address
A location that gives longitude and latitude may leave out its country and
any of address1, city, state, and zip_code. Intuizi fills the empty
ones from the point while the submission is at 4 Importing, before the
review, the same way on every create:
address1from the street address at the point, when there is one near it.city,state,zip_code, and the country from the place the point is in. In the United States and Canada,stateis the 2-letter code, such asNY, and elsewhere the name of the region.
Only empty fields are filled. The name and every value you send are kept, and the point never moves. A field there is no value for at the point, such as a state in a country without states, is left empty without a flag. When the point lies in another country than the one you give, nothing is filled and the location is flagged: the point or the country is likely wrong. A location whose address could be filled only in part, or from an address more than 150 m from the point, is flagged for the review, and so is one with no street address near its point, or whose address could not be looked up at the time. A location left without a country is not imported: add the country and submit it again.
Locations without a country take the lookups of the file with the locations
without coordinates, before the locations that only miss address fields, each
in the order of the file. A location past the first 10,000 lookups waits for
Intuizi’s team (see Files past the limit), and
reverse.over_limit on the submission read counts it.
Checks of locations
While the submission is at 4 Importing, Intuizi also checks the locations
before the review, the same way on every create. A location that gives
longitude, latitude, and its whole address (address1, city, state,
zip_code, and the country) is checked against where that address lies. A
point within the location’s trade area, or 150 m, matches its address. A point
farther away is flagged for the review, and so is a location whose address
could not be placed. When the point lies at the address with latitude and
longitude swapped, the check says so.
A check never moves the point, changes a value, or keeps a location out of the import. A location with coordinates and only part of its address is filled, not checked (see Locations without an address).
The checks take what the other lookups of the file leave of its first 10,000,
the earliest locations of the file first. The checks past that wait for
Intuizi’s team like the rest (see Files past the limit),
and check.over_limit on the submission read counts them. The checks also stop
when the time Intuizi gives the import runs out: check.not_checked counts the
locations not checked then. The checks can add up to ten minutes to the import.
Files past the limit
A file or list is never refused for the number of locations Intuizi has to
look up. A file gets the first 10,000 lookups by itself, while the submission
is at 4 Importing: first the locations that need one to be imported (no
coordinates, or no country), then the address fields to fill, then the checks
of the locations that give their coordinates and their whole address, each in
the order of the file (see Limits).
Nothing past that is looked up by itself. The submission reaches the review,
and Intuizi’s team decides whether to complete the rest. While it does, the
submission is back at 4 Importing, and it returns to 1 Waiting when the
locations are done. If the team stops before the end, the locations in
progress are completed first. The submission then returns to 1 Waiting as
well, and the state is waiting again for the locations not completed yet.
The pending block of the
submission read says how many locations
wait, and in what state:
| State | Meaning |
|---|---|
waiting | Locations past the limit wait for Intuizi’s team. |
running | Intuizi’s team is completing them. |
done | Every location past the limit was completed. |
skipped | The submission was approved without them. |
A rejected submission has no pending block: nothing waits for it.
A location past the limit that is not completed stays as you sent it: one with coordinates and a country is imported without the address fields it missed or its check, and one without coordinates or a country is not imported. Add the coordinates and the countries, or submit the rest in smaller files.
not_imported_url on the submission read links a CSV of the locations that are
not imported, in the columns of the import, with the reason in its last column,
geocode_result. Correct them, take that column off, and submit them again.
The link is valid for an hour: read the submission again for a new one. It is
null when every location can be imported.
Geocoding on the submission read
Get Submission and
List Submissions carry a geocoding
block once Intuizi has read the locations: forward for the locations without
coordinates, reverse for the locations with coordinates that missed address
fields, check for the locations checked against their address (see
Checks of locations), and pending for the locations
past the limit (see
Files past the limit). A block is left out when no
location needed it. Next to geocoding, not_imported_url links the CSV of
the locations not imported.
{
"geocoding": {
"forward": {
"geocoded": 118,
"flagged": 6,
"not_imported": 1502,
"low_confidence": 1,
"not_found": 1,
"failed": 0,
"missing_address": 0,
"over_limit": 1500
},
"reverse": {
"filled": 40,
"flagged": 3,
"not_imported": 1,
"approximate": 2,
"no_address": 1,
"failed": 0,
"no_country": 1,
"other_country": 0,
"unchanged": 0,
"over_limit": 0
},
"check": {
"match": 812,
"near": 9,
"mismatch": 4,
"swapped": 1,
"address_not_found": 3,
"flagged": 17,
"not_checked": 0,
"over_limit": 0
},
"pending": {
"state": "waiting",
"locations": 1500
}
},
"not_imported_url": "https://..."
}| Field | Type | Description |
|---|---|---|
forward.geocoded | integer | Locations that got the point of their address, the flagged ones included. |
forward.flagged | integer | Of those, the ones placed with less certainty. |
forward.not_imported | integer | Locations left without a point, which the approval does not import: low_confidence plus not_found plus failed plus missing_address plus over_limit. |
forward.low_confidence | integer | Locations whose address matched too loosely to be placed. |
forward.not_found | integer | Locations whose address was not found. |
forward.failed | integer | Locations that could not be geocoded at the time. Submit them again. When Intuizi’s team completes a file past the limit, it tries them again. |
forward.missing_address | integer | Locations without coordinates whose address could not be read, for example a country cell left empty. |
forward.over_limit | integer | Locations without coordinates past the first 10,000 lookups of the file, not looked up (see Files past the limit). |
reverse.filled | integer | Locations with coordinates whose empty address fields were all filled from the point. |
reverse.flagged | integer | Locations with coordinates imported with a flag, with the fields they have: approximate plus no_address plus other_country plus the failed ones that have a country. |
reverse.not_imported | integer | Locations left without a country, which the approval does not import: no_country plus the failed and over_limit ones without a country. |
reverse.approximate | integer | Locations whose empty fields were filled in part, or from an address more than 150 m from the point. |
reverse.no_address | integer | Locations with no street address near the point to fill from. |
reverse.failed | integer | Locations whose address could not be looked up at the time. Those without a country are not imported: submit them again. When Intuizi’s team completes a file past the limit, it tries them again. |
reverse.no_country | integer | Locations without a country for which none was found at the point. |
reverse.other_country | integer | Locations whose point lies in another country than the one you give. Nothing was filled: check the point and the country. |
reverse.unchanged | integer | Locations whose empty fields have no value at the point, such as a state in a country without states. They are left as you sent them. |
reverse.over_limit | integer | Locations with coordinates past the first 10,000 lookups of the file, not looked up. Those with a country are imported as you sent them, those without are not. |
check.match | integer | Locations whose point lies within the trade area of their address, or 150 m. |
check.near | integer | Locations whose point lies within 1,000 m of their address, outside its trade area. Flagged. |
check.mismatch | integer | Locations whose point lies farther from their address. Flagged. |
check.swapped | integer | Locations whose point lies at their address with latitude and longitude swapped. Flagged. |
check.address_not_found | integer | Locations whose address could not be placed to check the point. Flagged. |
check.flagged | integer | Of the locations checked, the flagged ones: near plus mismatch plus swapped plus address_not_found. They are imported as you sent them. |
check.not_checked | integer | Locations with coordinates and a whole address that were not checked: past the time of the import, or not answered at the time. |
check.over_limit | integer | Locations with coordinates and a whole address past the first 10,000 lookups of the file, not checked. They are imported as you sent them. |
pending.state | string | waiting, running, done, or skipped (see Files past the limit). |
pending.locations | integer | Locations with a lookup past the limit, still to do. |
not_imported_url | string or null | On the submission, next to geocoding: a link, valid for an hour, to a CSV of the locations not imported with the reason. null when every location can be imported. |
geocoding is null before Intuizi has read the locations, and when none of
them needed a lookup or a check.
Delete Submission
POST /api/v2/my-data/pois/submissions/delete-by-id
Deletes a submission by id. Only a submission at status 1 Waiting is
eligible: Intuizi has read its locations and not yet reviewed it. Deleting it
does not cancel a backfill it requested.
Auth: bearer token + Accept: application/json + Content-Type: application/json. Rate limit: write bucket (30 requests/min).
Body
| Field | Type | Required | Description |
|---|---|---|---|
id | integer | Yes | The submission id to delete. Must be a submission at status 1 Waiting owned by your company. |
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 }'Response
{
"status": "success",
"code": 200,
"message": "Resource deleted successfully.",
"data": []
}Failed requests use the shared error envelope - see Errors.