Instaon Partner API (1.0)

Download OpenAPI specification:Download

The official API to manage Instaon campaigns and assets. Please contact us via our Instaon Partner Program for more information and getting whitelisted.

Introduction

Th API allows you to register a Instaon user and build optimized marketing campaigns. Once a user has been authenticated over the api, you can add business information and start creating campaigns. Marketing campaigns are published to platforms (Google, Facebook, Microsoft, ..) with different goals (Get calls, get website traffic etc..). To publish a given campaign, all required features have to be added to a campaign.

Authentication

httpBearer

Most requests returning user data require a valid bearer token. Users are authenticated with a bearer token in the header of every request.

Security Scheme Type HTTP
HTTP Authorization Scheme bearer

authentication

API calls to register a user in order to obtain a bearer token. Bearer token must be added to every request in order to be able to access personnal data.

Register

Authorizations:
Request Body schema: application/x-www-form-urlencoded
email
required
string
name
required
string
newsletter
required
boolean
password
required
string

Responses

Login (Deprecated in March 2020)

header Parameters
Content-Type
required
string
Example: application/x-www-form-urlencoded
Request Body schema: application/x-www-form-urlencoded
email
required
string
password
required
string

Responses

Login (Password Grant / Client Credentials Grant Flow)

header Parameters
Content-Type
required
string
Example: application/x-www-form-urlencoded
Request Body schema: application/x-www-form-urlencoded
client_id
required
integer <int32>
client_secret
required
string
grant_type
required
string
password
required
string
scope
required
string
username
required
string

Responses

Login (Implicit Grant with Redirect)

query Parameters
client_id
required
integer <int32>
Example: client_id=75
redirect_uri
required
string
Example: redirect_uri=https://dev.instaon.io/app
response_type
required
string
Example: response_type=token

code or token

scope
required
string
state
required
integer <int32>
Example: state=25435353

{{$randomAlphaNumeric}}

Responses

Ask for password recovery mail

Request Body schema: application/x-www-form-urlencoded
email
required
string

Responses

Modify password via mail recovery

Request Body schema: application/x-www-form-urlencoded
password
required
string
password_confirmation
required
string
token
required
string

Responses

profile

Update User

Update user details.

Authorizations:
header Parameters
Content-Type
required
string
Example: application/x-www-form-urlencoded
Request Body schema: application/x-www-form-urlencoded
email
required
string
name
required
string
password
required
string
password_confirmation
required
string

Responses

Get User Details

Get all stored details for given user.

Authorizations:

Responses

Update User Email

Authorizations:
header Parameters
Content-Type
required
string
Example: application/x-www-form-urlencoded
Request Body schema: application/x-www-form-urlencoded
email
required
string
password
required
string

Responses

Change Preferred Currency

Authorizations:
header Parameters
Content-Type
required
string
Example: application/x-www-form-urlencoded
Request Body schema: application/x-www-form-urlencoded
currency
required
string

Responses

Update Username

Authorizations:
header Parameters
Content-Type
required
string
Example: application/x-www-form-urlencoded
Request Body schema: application/x-www-form-urlencoded
name
required
string

Responses

Update User Password

Authorizations:
header Parameters
Content-Type
required
string
Example: application/x-www-form-urlencoded
Request Body schema: application/x-www-form-urlencoded
new_password
required
string
password
required
string

Responses

Update User Address

Authorizations:
header Parameters
Content-Type
required
string
Example: application/x-www-form-urlencoded
Request Body schema: application/x-www-form-urlencoded
address
required
string
city
required
string
company
required
string

Company name (optionnal)

country
required
string

Country Code (see get country list call)

tax
required
string

Tax number (optionnal)

Responses

Remove user card

Remove access to Stripe credit card.

Authorizations:
header Parameters
Content-Type
required
string
Example: application/x-www-form-urlencoded
Request Body schema: application/x-www-form-urlencoded
last_four
required
integer <int32>

Last four numbers

Responses

Get List of Country Codes

Get list of supported countries.

Authorizations:

Responses

media

Get User Media Library

Returns the list of media files that were added to the user's media library

Authorizations:

Responses

Get User Media's biggest file in base-64 encoding

Returns the biggest media file representation in base64

Authorizations:

Responses

Delete User Media

Remove a list of uploaded media files from the media library

Authorizations:
header Parameters
Content-Type
required
string
Example: image/png
Request Body schema: application/x-www-form-urlencoded
mediaId[0]
required
integer <int32>

Responses

Get Image Upload URL

This calls returns a form, that can be used to add media files to a user's media library

Authorizations:

Responses

Upload Image Example

Example of a presigned form to upload media files.

header Parameters
Content-Type
required
string
Example: image/png
Request Body schema: application/x-www-form-urlencoded
file
required
string
key
required
string
Policy
required
string
X-Amz-Algorithm
required
string
X-Amz-Credential
required
string
X-Amz-Date
required
string
x-amz-meta-port
required
integer <int32>
X-Amz-Signature
required
string

Responses

pages

Get Pages for Platform

Get list of pages the user has given access to (ex: Facebook pages)

Authorizations:
path Parameters
platformId
required
integer <int32>
Example: 2

Responses

orders

API calls to read user invoices and manage marketing spend

Get Orders List

Get the list of invoices for the current user

Authorizations:

Responses

Get Order Details

Get details for a given invoice (amount, date, etc)

Authorizations:
path Parameters
orderId
required
integer <int32>
Example: 8967

Responses

payments

API calls to add credit to a user account.

Set Automatic Billing Status

Activate or deactivate auto-billing for the user. Auto-billed users will have new credits automatically billed when they reach zero balance.

Authorizations:
Request Body schema: application/json
active
required
boolean

Responses

Request samples

Content type
application/json
{
  • "active": false
}

Get list of supported currencies

Authorizations:

plans

List of API calls to read and manage user subscriptions

Select Free Plan

Downdgrade user back to free plan.

Authorizations:

Start Stripe Plan Transaction

Get a session id you can use to redirert the user to Stripe Checkout.

Authorizations:
path Parameters
plan
required
string
Example: grow9

available plans:

  • grow9
  • pro99
  • enterprise
query Parameters
return_url
required
string
Example: return_url={{app_url}}

Responses

vouchers

Get User Vouchers

Get list of vouchers that are claimed, accessible or unavalaible for this user.

Authorizations:

Responses

Redeem Voucher

Use a voucher. If claimed succesfully, user will receive credits or paid plan according to voucher settings.

Authorizations:
path Parameters
voucher_code
required
string
Example: {{voucher_code}}

Responses

Stripe

Start Stripe Credit Transaction

Initiate a Stripe transaction for the user to add credit to his account. User will have to redirect to Stripe to authorize the transaction if this is his first time payment.

Authorizations:
path Parameters
amount
required
integer <int32>
Example: 123

Amount in euros

product
required
integer <int32>
Example: 10

Set product type to 10 to add credits

query Parameters
publish_campaign_id
required
string
Example: publish_campaign_id={{test_campaign_id}}

optional, publish campaign directly if payment succeed

return_url
required
string
Example: return_url={{app_url}}

Responses

PayPal

Start PayPal Credit Transaction

Initiate a PayPal transaction for the user to add credit to his account. User will have to redirect to PayPal to authorize the transaction.

Authorizations:
path Parameters
amount
required
integer <int32>
Example: 20
product
required
integer <int32>
Example: 10
query Parameters
return_url
required
string
Example: return_url={{app_url}}

Responses

Stop PayPal Recurring Payments

Stop recurring payments for user.

Authorizations:
path Parameters
product
required
integer <int32>
Example: 10

Type of product purchased (10 = standard recharge)

Responses

Business

Create Business

Add a new business to current user. Businesses need a valid website and are used to publish campaigns.

Authorizations:
Request Body schema: application/x-www-form-urlencoded
website
required
string

Responses

Shopping Products Lists

Shopping products lists are a group of products from an online shop

Get Shopping Products Lists

Authorizations:
path Parameters
businessId
required
string

Create Shopping Products List

Authorizations:
path Parameters
businessId
required
string

Update Shopping Products List

Authorizations:
path Parameters
businessId
required
string

Customer Lists

List of customers associated to a Business. Can be used for re-marketing or other purposes

Set Customer List

Replace all customers in a customer list

Authorizations:
path Parameters
customerListId
required
string
Request Body schema: application/json
stringarray

Responses

Request samples

Content type
application/json
{
  • "customers":
    [
    ]
}

Add to Customer List

Add new customers to an existing customer list

Authorizations:
path Parameters
customerListId
required
string
Request Body schema: application/json

Request samples

Content type
application/json
{
  • "customers":
    [
    ]
}

Get all customer lists

Authorizations:
path Parameters
businessIdInt
required
string

Create a new customer list

Authorizations:
path Parameters
businessIdInt
required
string
Request Body schema: application/json

Request samples

Content type
application/json
{ }

audience

Update Campaign Audience

Authorizations:
path Parameters
campaignId
required
string
Example: {{test_campaign_id}}
Request Body schema: application/json
interests
required
Array of strings
language
required
string
locations
required
Array of strings
required
Array of objects (LocationsArea)
required
Array of objects (LocationsCountry)

Responses

Request samples

Content type
application/json
{
  • "language": "1000",
  • "locations": [ ],
  • "locations_areas":
    [
    ],
  • "locations_countries":
    [
    ],
  • "interests": [ ]
}

DEPRECATED Update Campaign Geolocation

Authorizations:
path Parameters
campaignId
required
string
Example: {{test_campaign_id}}
Request Body schema: application/json
required
Array of objects (Area)
required
Array of objects (Country)

Responses

Request samples

Content type
application/json
{
  • "areas":
    [
    ],
  • "countries":
    [
    ]
}

Update Campaign Phone

Authorizations:
path Parameters
campaignId
required
string
Example: {{test_campaign_id}}
header Parameters
Content-Type
required
string
Example: application/x-www-form-urlencoded
Request Body schema: application/x-www-form-urlencoded
phone_number
required
string

phone number of the business to advertize

Responses

Link Platform Page to Campaign

Authorizations:
path Parameters
campaignId
required
string
Example: {{test_campaign_id}}
header Parameters
Content-Type
required
string
Example: application/x-www-form-urlencoded
Request Body schema: application/x-www-form-urlencoded
platform_page_id
required
integer <int64>

Responses

Update Campaign Website

Authorizations:
path Parameters
campaignId
required
string
Example: {{test_campaign_id}}
header Parameters
Content-Type
required
string
Example: application/x-www-form-urlencoded
Request Body schema: application/x-www-form-urlencoded
description
required
string
url
required
string

Responses

budget

Update Campaign Budget

Authorizations:
path Parameters
campaignId
required
string
Example: {{test_campaign_id}}
header Parameters
Content-Type
required
string
Example: application/x-www-form-urlencoded
Request Body schema: application/x-www-form-urlencoded
daily_budget
required
integer <int32>

Responses

creation

Create a new Campaign

Authorizations:
header Parameters
Content-Type
required
string
Example: application/x-www-form-urlencoded
Request Body schema: application/x-www-form-urlencoded
business_id
required
integer <int32>

Give the business id you want to make a campaign for

goal_type
required
integer <int32>

Give a goal type.: WEB_TRAFFIC = 0; LEADS_CALLS = 1; ONLINE_SALES = 2; OFFLINE_VISITORS = 3; CHAT_MESSAGES = 4;

platform_code
required
integer <int32>

Set platform type: 0 = Google, 1 = Bing, 2 = Facebook

Responses

Duplicate a Campaign

Authorizations:
path Parameters
campaignId
required
string
Example: {{test_campaign_id}}
header Parameters
Content-Type
required
string
Example: application/x-www-form-urlencoded

Responses

Update Draft Campaign Platform and Network

Authorizations:
path Parameters
campaignId
required
string
Example: {{test_campaign_id}}
header Parameters
Content-Type
required
string
Example: application/x-www-form-urlencoded
Request Body schema: application/x-www-form-urlencoded
network_type
required
integer <int32>

0 = Search, 1 = Display, 2 = Shopping

platform_code
required
integer <int32>

0 = Google, 1 = Bing, 2 = Facebook

Responses

Update Draft Campaign Goal

Authorizations:
path Parameters
campaignId
required
string
Example: {{test_campaign_id}}
header Parameters
Content-Type
required
string
Example: application/x-www-form-urlencoded
Request Body schema: application/x-www-form-urlencoded
goal
required
integer <int32>

Responses

Update Draft Campaign Platform Ad Account

Authorizations:
path Parameters
account
required
integer <int64>
Example: 4572760437
campaignId
required
string
Example: {{test_campaign_id}}

Responses

Publish a Draft Campaign

Authorizations:
path Parameters
campaignId
required
string
Example: {{test_campaign_id}}

Responses

display campaigns

Add Display Ad Template To Campaign

Post choice of initial list of keywords for user validation

Authorizations:
path Parameters
campaignId
required
string
Example: {{test_campaign_id}}
header Parameters
Content-Type
required
string
Example: application/json
Request Body schema: application/x-www-form-urlencoded
business_name
required
string
descriptions[0]
required
string
headlines[0]
required
string
headlines[1]
required
string
images[0]
required
integer <int32>

Te id of the media you would like to add to the ad template

long_headline
required
string

Responses

Get Display Ad Template For Campaign

Authorizations:
path Parameters
campaignId
required
string
Example: {{test_campaign_id}}

Responses

search campaigns

Update Campaign Template Ad

Authorizations:
path Parameters
campaignId
required
string
Example: {{test_campaign_id}}
header Parameters
Content-Type
required
string
Example: application/x-www-form-urlencoded
Request Body schema: application/x-www-form-urlencoded
description
required
string

1 to 90 characters

title1
required
string

1 to 30 characters

title2
required
string

1 to 30 characters

title3
required
string

1 to 30 characters. Optional.

Responses

Post initial keywords proposed by user

Get initial list of keywords for user validation

Authorizations:
path Parameters
campaignId
required
string
Example: {{test_campaign_id}}
header Parameters
Content-Type
required
string
Example: application/json
Request Body schema: application/x-www-form-urlencoded
keywords[0]
required
string
keywords[1]
required
string
keywords[2]
required
string

Responses

Get keyword suggestions to validate

Get initial list of keywords for user validation

Authorizations:
path Parameters
campaignId
required
string
Example: {{test_campaign_id}}

Responses

Post validated keywords

Post choice of initial list of keywords for user validation

Authorizations:
path Parameters
campaignId
required
string
Example: {{test_campaign_id}}
Request Body schema: application/json
required
Array of objects (KeywordTable)

Responses

Request samples

Content type
application/json
{
  • "keywordTable":
    [
    ]
}

campaign status

Update Campaign Publishing Status

Authorizations:
path Parameters
campaignId
required
string
Example: {{test_campaign_id}}
header Parameters
Content-Type
required
string
Example: application/x-www-form-urlencoded
Request Body schema: application/x-www-form-urlencoded
status
required
string

status can be ENABLED or PAUSED

Responses

optimization

Get Campaign Keywords Optimization

Authorizations:
path Parameters
campaignId
required
string
Example: {{test_campaign_id}}

Responses

Set Campaign Keywords Optimization

Authorizations:
path Parameters
campaignId
required
string
Example: {{test_campaign_id}}
Request Body schema: application/json
keywordsToAdd
required
Array of strings
keywordsToRemove
required
Array of strings

Responses

Request samples

Content type
application/json
{
  • "keywordsToAdd":
    [
    ],
  • "keywordsToRemove":
    [
    ]
}

Get Campaign Sentences Optimization

Authorizations:
path Parameters
campaignId
required
string
Example: {{test_campaign_id}}

Responses

Response samples

Content type
application/json
{
  • "data":
    {
    }
}

Set Campaign Sentences Optimization

Authorizations:
path Parameters
campaignId
required
string
Example: {{test_campaign_id}}
Request Body schema: application/json
required
Array of objects (Sentence)

Responses

Request samples

Content type
application/json
{
  • "sentences":
    [
    ]
}

campaign reports

Get Campaign Performance Report

Authorizations:
path Parameters
campaignId
required
string
Example: {{test_campaign_id}}
query Parameters
date_end
required
integer <int32>
Example: date_end=20200206
date_start
required
integer <int32>
Example: date_start=20200204

Responses

Response samples

Content type
application/json
{
  • "report":
    {
    },
  • "status": "success"
}

Get Campaign Time Report

Authorizations:
path Parameters
campaignId
required
string
Example: {{test_campaign_id}}
query Parameters
date_end
required
integer <int32>
Example: date_end=20200204
date_start
required
integer <int32>
Example: date_start=20200206

Responses

Response samples

Content type
application/json
{
  • "report":
    {
    },
  • "status": "success"
}

Get Campaign Gender Report

Authorizations:
path Parameters
campaignId
required
string
Example: {{test_campaign_id}}
metric
required
string
Example: impressions
query Parameters
date_end
required
integer <int32>
Example: date_end=20200204
date_start
required
integer <int32>
Example: date_start=20200206

Responses

Response samples

Content type
application/json
{
  • "report":
    {
    },
  • "status": "success"
}

Get Campaign Device Report

Authorizations:
path Parameters
campaignId
required
string
Example: {{test_campaign_id}}
metric
required
string
Example: impressions
query Parameters
date_end
required
integer <int32>
Example: date_end=20200204
date_start
required
integer <int32>
Example: date_start=20200206

Responses

Response samples

Content type
application/json
{
  • "report":
    {
    },
  • "status": "success"
}

Get Campaign Age Report

Authorizations:
path Parameters
campaignId
required
string
Example: {{test_campaign_id}}
metric
required
string
Example: impressions
query Parameters
date_end
required
integer <int32>
Example: date_end=20200204
date_start
required
integer <int32>
Example: date_start=20200206

Responses

Response samples

Content type
application/json
{
  • "report":
    {
    },
  • "status": "success"
}

Get Keywords Report

Authorizations:
path Parameters
campaignId
required
string
Example: {{test_campaign_id}}
query Parameters
date_end
required
integer <int32>
Example: date_end=20200204
date_start
required
integer <int32>
Example: date_start=20200206

Responses

Get Ads Report

Authorizations:
path Parameters
campaignId
required
string
Example: {{test_campaign_id}}
query Parameters
date_end
required
integer <int32>
Example: date_end=20200204
date_start
required
integer <int32>
Example: date_start=20200206

Responses

account reports

suggestions

Suggestions are actions that are recommended to a given user in order to improve marketing results.

Get Suggestions

Get list of suggestions for the user in order to improve his campaigns or setup his account.

Authorizations:

Responses

Skip User Suggestion

Skip a suggestion made to this user.

Authorizations:
path Parameters
suggestionId
required
integer <int32>
Example: 121

Responses

dashboard

Get Dashboard Metrics

Get list of core metrics for the user. These metrics are aggregated among all advertising platforms.

Authorizations:

Responses

Get Latest Blog Articles

Get latest blog articles about digital marketing from Instaon.

Authorizations:

Responses