Skip to main content

markee api (DEVELOPMENT-SNAPSHOT)

This api is for markee

workspace

GET Workspace List

returns a list of workspaces

query Parameters
filter
string

a filter for the name

id
integer

limit by space

sort
string

asc or desc for ascending or descending

skip
integer

skip entries

take
integer

take a given number of entries

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "total": 0
}

POST Workspace

create a new workspace

Request Body schema: application/json
id
integer
parentId
required
integer
name
required
string
shortName
required
string
object (SettingsList)

Responses

Request samples

Content type
application/json
{
  • "id": 0,
  • "parentId": 0,
  • "name": "string",
  • "shortName": "string",
  • "customFieldsCompany": {
    }
}

Response samples

Content type
application/json
{
  • "value": 0
}

GET Workspace

returns a workspace

path Parameters
id
required
integer

Responses

Response samples

Content type
application/json
{
  • "id": 0,
  • "parentId": 0,
  • "name": "string",
  • "shortName": "string",
  • "customFieldsCompany": {
    }
}

company

Company CMS

GET Company List

Get a list of companies with their minimum set of information. You can get the companies for a single workspace (defined by the id), the workspace you selected and all underneath (with id paramter and recursive = true) or all companies you allowed to see (leave id and recursive undefined).

The companies are always sorted by their id (ascending), you can use the before,after and take parameter to navigate through the list.

Additionally you can use the filter parameter to filter for the name (fuzzy search), licences and statuses to filter for subscriptions being assigned to at least one location of the company.

query Parameters
filter
string

filter for company name

after
integer

use this when you only interested in company with ids after that one

before
integer

use this when you only interested in company with ids before that one

take
integer

get only x elements

id
integer

id filter of the parental workspace

licences
string

comma separated list of licence names

statuses
string
Enum: "ACTIVE" "PROCESSING" "FAILED" "FINISHED" "EXPIRING"

comma separated statuses filter

recursive
boolean

set to true if you want to search recursively in all workspaces underneath

sort
string
Enum: "asc" "desc"

asc or desc, filter for sorting companies by id

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "total": 0
}

GET Company

Returns the detailed company json object defined by the company id. The result contains all information of the company.

path Parameters
id
required
integer <int64>

Responses

Response samples

Content type
application/json
{
  • "id": 0,
  • "name": "string",
  • "shortName": "string",
  • "legalType": "AG",
  • "contact": {
    },
  • "salesMan": {
    },
  • "tags": [
    ],
  • "externalId": "string",
  • "licences": [
    ],
  • "imprint": "string",
  • "globalImprint": true,
  • "dataPrivacy": "string",
  • "globalDataPrivacy": true,
  • "imprintUrl": "string",
  • "dataPrivacyUrl": "string",
  • "isClaimed": true,
  • "vatNr": "string",
  • "customFieldsCompany": [
    ]
}

PUT Company

Method to update a existing company.

path Parameters
id
required
integer <int64>
Request Body schema: application/json
name
required
string
shortName
string
legalType
string
Enum: "AG" "GbR" "GmbH" "GmbH & Co. KG" "OHG" "UG" "UG & Co. KG" "eG"
salesManId
integer

id of a sales man, defined on workspace level

externalId
string
imprint
string
globalImprint
boolean
dataPrivacy
string
globalDataPrivacy
boolean
imprintUrl
string
dataPrivacyUrl
string
vatNr
string
Array of objects (KeyValueString)

Responses

Request samples

Content type
application/json
{
  • "name": "TestName",
  • "shortName": "test",
  • "legalType": "AG",
  • "externalId": "000122335654"
}

Response samples

Content type
application/json
{
  • "value": 0
}

DELETE Company

A delete method to remove a company and all of it's locations, if there are no active subscriptions.

path Parameters
id
required
integer <int64>

Responses

Response samples

Content type
application/json
{
  • "value": 0
}

POST Company

Create a new company in a workspace. The id you need to set is the parental workspace id

path Parameters
id
required
integer <int64>
Request Body schema: application/json
name
required
string
shortName
string
legalType
string
Enum: "AG" "GbR" "GmbH" "GmbH & Co. KG" "OHG" "UG" "UG & Co. KG" "eG"
object (ContactInsert)
salesManId
integer

id of a sales man, defined on workspace level

externalId
string
object (LocationInsert)
vatNr
string

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "shortName": "string",
  • "legalType": "AG",
  • "contact": {
    },
  • "salesManId": 0,
  • "externalId": "string",
  • "locationInsert": {
    },
  • "vatNr": "string"
}

Response samples

Content type
application/json
{
  • "value": 0
}

GET Grouped Google Attributes

Get grouped google main categories for attributes bulk edit. For the company id and list of locations given as parameter this method finds and returns a list of categories. For each of them it returns a list of locations which have this categorie as main categorie. It returns a list of attributes that belong to that category and a bulk state that indicates if those attributes have the same value for all locations on that list or not.

path Parameters
companyId
required
integer <int64>

Id of the company

query Parameters
locationIds
string

comma seperated list of location ids

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "total": 0
}

location

Location CMS

GET location list

use this method to get a list of locations belonging to a location, containing the minimum set of information. To get more detailled information use the corresponding detail methods.

query Parameters
filter
string

optional filter for the location name

skip
integer

optinal integer to skip the first n results

take
integer

optional filter to get only n results

licences
string

comma seperated list of licence names to filter locations

statuses
string
Enum: "PROCESSING" "ACTIVE" "EXPRING" "EXPIRINGON" "FAILED"

comma seperated list of statuses to filter for locations having subscriptions with this status

id
required
integer <int64>

id of the parental company id

enrich_with
string
Value: "ProfileQuality"

define here with which data you want to enrich the location list response. Be aware, this may have impact in the performance of the call. Multiple values can be used and seperated via a commata

tags
string

filter by tags, which should exist on company level.

sort
string
Enum: "asc" "desc"

sort by column id, asc or desc, default is desc

Responses

Response samples

Content type
application/json
No sample

GET Location Media

To get all the media information for a location. Those are images, urls and everything connected to social meda.

path Parameters
id
required
integer <int64> >= 0

unique id of the location you want to get the media information for

Responses

Response samples

Content type
application/json
{
  • "id": 0,
  • "youtubeUrl": [
    ],
  • "businessLogo": {
    },
  • "customImages": [
    ],
  • "googleProfile": {
    },
  • "googleCover": {
    },
  • "facebookProfile": {
    },
  • "google360": {
    },
  • "facebookUrl": {
    },
  • "tikTokUrl": {
    },
  • "linkedInUrl": {
    },
  • "xingUrl": {
    },
  • "twitterHandle": "string",
  • "reservationsUrl": {
    },
  • "menuUrl": {
    },
  • "orderUrl": {
    },
  • "instagramUrl": {
    },
  • "name": "string",
  • "foursquareExtra": "string",
  • "facebookCover": {
    }
}

PUT location media

Use this method to update all the media information for this location. All null paramters are getting deleted, except for custom images, since these are simply used to update the order in which they appear in the gallery, rather than to add or delete them.

If you want to preserve them, use the get method first to obtain the current set of data and replace only the fields you want.

Sending null for the customImages field will simply cause the api to ignore a new ordering, whereas when sending an array, it should correspond to the extact same content of the array of customImages ids (but could have a different order), so the api can use it to define a new order based on the array sent.

If you want to preserve the order of the images in the gallery, either send null for the customImages field, or send the list of customImages ids in the exact order as they were retrieved from the api.

In case you want to update images or urls, use the corresponding update methods with their unique id you get from the GET call.

path Parameters
id
required
integer <int64> >= 0

unique id of the location you want to get the media information for

Request Body schema: application/json
foursquareExtra
string
twitterHandle
string
customImages
Array of integers

list of unique IDs of gallery images, represents the order in which they should be saved

Responses

Request samples

Content type
application/json
{
  • "foursquareExtra": "string",
  • "twitterHandle": "string",
  • "customImages": [
    ]
}

Response samples

Content type
application/json
{
  • "value": 0
}

GET Location Basic

Returns the detailed basic json object defined by the location id. The result contains the basic set of the location information.

path Parameters
id
required
integer
query Parameters
language
string

language code, ISO 3166-1 alpha-2 , e.g. en. If not defined, the language setting of your user is getting used

Responses

Response samples

Content type
application/json
{
  • "id": 0,
  • "externalId": "string",
  • "name": "string",
  • "categories": [
    ],
  • "address": {
    },
  • "mainPhone": {
    },
  • "alternativePhones": [
    ],
  • "tags": [
    ],
  • "closed": true,
  • "eMail": "string",
  • "website": {
    },
  • "currentOffer": {
    },
  • "currentOfferText": "string",
  • "serviceArea": [
    ],
  • "isClaimed": true
}

PUT Location Basic

Method to update the basic data of a location

path Parameters
id
required
integer
Request Body schema: application/json
name
required
string
externalId
string
required
Array of objects (KeyValueInt)
closed
boolean
eMail
string
currentOfferText
string
Array of objects (KeyValueServiceArea)

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "externalId": "string",
  • "categories": [
    ],
  • "closed": true,
  • "eMail": "string",
  • "currentOfferText": "string",
  • "serviceArea": [
    ]
}

Response samples

Content type
application/json
{
  • "value": 0
}

GET Location Opening Hours

Path param: id of the opening hours get a single opening hour information of a location

path Parameters
id
required
integer

Responses

Response samples

Content type
application/json
{
  • "id": 0,
  • "days": [
    ],
  • "note": "string",
  • "dateInterval": {
    },
  • "openingHoursType": "default",
  • "temporarilyClosedUntil": "2019-08-24"
}

POST Location Opening Hours

Path param: id of the location

create a new opening hour for a location

path Parameters
id
required
integer
Request Body schema: application/json
required
Array of objects (OpeningDayInsert)
note
string
object (DateIntervalInsert)
openingHoursType
required
string
Enum: "default" "customPeriod" "customDate"
temporarilyClosedUntil
string <date>

Responses

Request samples

Content type
application/json
{
  • "days": [
    ],
  • "note": "string",
  • "dateInterval": {
    },
  • "openingHoursType": "default",
  • "temporarilyClosedUntil": "2019-08-24"
}

Response samples

Content type
application/json
{
  • "value": 0
}

DELETE Location Opening Hours

Path param: id of the opening hours

Method to delete the opening hours of a location

path Parameters
id
required
integer

Responses

Response samples

Content type
application/json
{
  • "value": 0
}

PUT Location Opening Hours

Path param: id of the opening hours

Method to update the opening hours of a location. Each day that is not declare will be consider close for openingHoursType : default and customPeriod

path Parameters
id
required
integer
Request Body schema: application/json
required
Array of objects (OpeningDayUpdate)
note
string
object (DateIntervalUpdate)
openingHoursType
required
string
Enum: "default" "customPeriod" "customDate"
temporarilyClosedUntil
string <date>

Responses

Request samples

Content type
application/json
{
  • "days": [
    ],
  • "note": "string",
  • "dateInterval": {
    },
  • "openingHoursType": "default",
  • "temporarilyClosedUntil": "2019-08-24"
}

Response samples

Content type
application/json
{
  • "value": 0
}

GET Location Additional

Returns the additional basic json object defined by the location id. The result contains the additional set of the location information.

path Parameters
id
required
integer

id of the location

Responses

Response samples

Content type
application/json
{
  • "id": 0,
  • "name": "string",
  • "description": "string",
  • "yearOfFoundation": "string",
  • "products": [
    ],
  • "services": [
    ],
  • "specialFields": [
    ],
  • "memberships": [
    ],
  • "trademarks": [
    ],
  • "languages": [
    ],
  • "keywords": [
    ],
  • "paymentMethods": [
    ],
  • "possiblePaymentMethods": [
    ],
  • "imprint": "string",
  • "locationImprint": true,
  • "dataPrivacy": "string",
  • "locationDataPrivacy": true,
  • "imprintUrl": "string",
  • "dataPrivacyUrl": "string",
  • "slogan": "string"
}

PUT Location Additional

Method to update the additional data of a location

path Parameters
id
required
integer

id of the location

Request Body schema: application/json
description
string
yearOfFoundation
string
products
Array of strings
services
Array of strings
specialFields
Array of strings
memberships
Array of strings
trademarks
Array of strings
languages
Array of strings
keywords
Array of strings
paymentMethods
Array of strings
imprint
string
dataPrivacy
string
imprintUrl
string
dataPrivacyUrl
string
slogan
string

Responses

Request samples

Content type
application/json
{
  • "description": "string",
  • "yearOfFoundation": "string",
  • "products": [
    ],
  • "services": [
    ],
  • "specialFields": [
    ],
  • "memberships": [
    ],
  • "trademarks": [
    ],
  • "languages": [
    ],
  • "keywords": [
    ],
  • "paymentMethods": [
    ],
  • "imprint": "string",
  • "dataPrivacy": "string",
  • "imprintUrl": "string",
  • "dataPrivacyUrl": "string",
  • "slogan": "string"
}

Response samples

Content type
application/json
{
  • "value": 0
}

GET Location Products

get a list of connected products for a location

path Parameters
id
required
integer

id of the location

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "total": 0
}

GET Location Google Attributes

Returns the Google Attributes for a location Code language for the parameter is in ISO 3166-1 alpha-2 country code Examples: de,en

query Parameters
locationId
required
integer <int64>

location id

language
required
string

language code

Responses

Response samples

Content type
application/json
{
  • "name": "string",
  • "id": 0,
  • "data": [
    ]
}

PUT Location Google Attributes

Update the Google Attributes for a list of locations. All the locations should have the same main category and should be located in the same country.

path Parameters
ids
required
string

location ids

Request Body schema:
required
Array of objects (GoogleAttributesUpdate)
Array
attributeId
required
string
value
string

Responses

Request samples

Content type
{
  • "data": [
    ]
}

Response samples

Content type
application/json
{
  • "value": 0
}

GET Location Bulk

retuns location Bulk

query Parameters
ids
required
string

the ids of the context

keyFilters
string
Enum: "NAME" "CATEGORIES" "TAG" "EMAIL" "WEBSITE" "DISPLAY_URL" "PHONE_MAIN" "PHONE_FAX" "PHONE_LANDLINE" "PHONE_MOBILE" "CURRENT_OFFER" "CURRENT_OFFER_URL" "DESCRIPTION" "PRODUCTS" "SERVICES" "SPECIAL_FIELDS" "MEMBERSHIP" "BRANDS" "LANGUAGES" "FOUNDING_YEAR" "KEYWORDS" "PAYMENTS_METHODS" "LOGO" "GALLERY" "PANORAMA" "GMB_PROFILE" "GMB_BACKGROUND" "FACEBOOK_PROFILE" "FACEBOOK_BACKGROUND" "TWITTER" "YOUTUBE_URL" "FACEBOOK_URL" "OPENINGHOURS" "SPECIALOPENINGHOURS" "MENU_URL" "ORDER_URL" "RESERVATIONS_URL"

optional list of bulk key you want to filter for. If it's null all keys will be reconsidered , a coma separate list

contextType
required
string
Enum: "Location" "Company"

context of the ids you're passing

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "total": 0
}

PUT Location Bulk

update location Bulk

query Parameters
ids
required
string

id of the locations or the company. Choose multiple location ids for the bulk edit or a single company id

contextType
required
string
Enum: "Location" "Company"

context of the ids you're passing

Request Body schema: application/json
required
Array of objects (LocationBulk)
total
required
integer <int32>

Responses

Request samples

Content type
application/json
{
  • "data": [
    ],
  • "total": 0
}

Response samples

Content type
application/json
{
  • "ids": [
    ],
  • "total": 0
}

DELETE Location

delete method to delete location

path Parameters
id
required
integer

id of the location

Responses

Response samples

Content type
application/json
{
  • "value": 0
}

POST Location

Method to create a location by defining all mandatory fields. If you want to insert some additional, media or social media fields, use the corresponding update methods afterwards.

If a self service user wants to create a new location for her/his company, pinVerification and claimId need to be set. Those need to be triggerd by the /company/claim endpoint via the location main phone number.

Path Param: id: id of the parental company

path Parameters
id
required
integer

id of the location

Request Body schema: application/json
name
required
string
required
Array of objects (KeyValueInt)
required
object (AddressInsert)
required
object (MainPhoneInsert)
claimId
string

self service user need to start a claiming first

pinVerification
string
email
string

email contact for this location

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "categories": [
    ],
  • "address": {
    },
  • "mainPhone": {
    },
  • "claimId": "string",
  • "pinVerification": "string",
  • "email": "string"
}

Response samples

Content type
application/json
{
  • "value": 0
}

GET Location Opening Hours List

get all opening hours information of a location

query Parameters
id
required
integer

id of the location

openingHoursType
string
Enum: "default" "customPeriod" "customDate"

openingHoursType

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "total": 0
}

PUT Bulk Opening Hours

This method will delete openign hours if they exist base on the openingHoursType that is in the request body for locations and post new ones in a bulk function

query Parameters
id
string

location ids

Request Body schema: application/json
required
Array of objects (OpeningDayInsert)
note
string
object (DateIntervalInsert)
openingHoursType
required
string
Enum: "default" "customPeriod" "customDate"
temporarilyClosedUntil
string <date>

Responses

Request samples

Content type
application/json
{
  • "days": [
    ],
  • "note": "string",
  • "dateInterval": {
    },
  • "openingHoursType": "default",
  • "temporarilyClosedUntil": "2019-08-24"
}

Response samples

Content type
application/json
{
  • "ids": [
    ],
  • "total": 0
}

POST Listing Sync GBP Location

This method is used to sync a Google Location data to a Markee location

path Parameters
id
required
integer <int64>

location id

Request Body schema: application/json
title
required
string
required
object (GBPStorefrontAddress)

Object that represents the location's address as it appears on Google.

object (GBPPhoneNumbers)

Object that contains a primary phone number and optional additional phone numbers.

required
object (GBPCategories)

Object that contains a primary category and optional additional categories.

Array of objects (ImageInsert)
websiteUri
string
object (GBPRegularHours)

Object representing the opening hours of a location

object (GBPSpecialHours)

Object representing the special opening hours of a location

labels
Array of strings
object (GBPProfile)

Object representing the description of a location

object (GBPOpenInfo)

Object that contains information about the status of the location.

Responses

Request samples

Content type
application/json
{
  • "title": "string",
  • "storefrontAddress": {
    },
  • "phoneNumbers": {
    },
  • "categories": {
    },
  • "images": [
    ],
  • "websiteUri": "string",
  • "regularHours": {
    },
  • "specialHours": {
    },
  • "labels": [
    ],
  • "profile": {
    },
  • "openInfo": {
    }
}

Response samples

Content type
application/json
{
  • "value": 0
}

miscellaneous

miscellaneous methods

GET Image

Method to get an image for an id

Path Param: id of image

path Parameters
id
required
integer

Responses

Response samples

Content type
application/json
{
  • "id": 0,
  • "fileName": "string",
  • "url": "string",
  • "imageType": "GoogleProfilImage"
}

Post Image

Method to insert an image for some parent (e.g. some location)

Path Param: id of the location the image gets inserted for

path Parameters
id
required
integer
Request Body schema: application/json
imageType
required
string
Enum: "GoogleProfilImage" "GoogleCoverImage" "FacebookProfileImage" "FacebookCoverImage" "BusinessLogo" "Google360" "PerformanceImage" "SocialImage" "ContentImage" "CampaignImage" "EmailLogo" "WhiteLabelLogo" "WhiteLabelFavicon" "UserProfileImage" "CustomImage" "ListingImage" "WebsiteWidgetImage" "SegmentAdImage" "LocalAdLogoImage" "LocalAdSquareMarketingImage" "LocalAdMarketingImage" "MessageImage" "MeinungsmeisterLogo"

define the type of the image

fileType
string
Enum: "jpg" "gif" "png" "ico"

file type in case you have this information

data
string

define either an base64 data representation of the image

url
string

or an url.

Responses

Request samples

Content type
application/json
{
  • "imageType": "GoogleProfilImage",
  • "fileType": "jpg",
  • "data": "string",
  • "url": "string"
}

Response samples

Content type
application/json
{
  • "value": 0
}

Delete Image

remove an image from some parent

Path Param: the id of the image

path Parameters
id
required
integer
query Parameters
parentType
required
string
Enum: "Contact" "Location"

determines the type of parent the url gets connected to

parentId
required
integer <int64>

parent Id the image is connected to (e.g. locationId)

imageType
required
string
Enum: "GoogleProfilImage" "GoogleCoverImage" "FacebookProfileImage" "FacebookCoverImage" "BusinessLogo" "CustomImage" "Google360" "ListingImage" "PerformanceImage" "SocialImage" "ContentImage" "CampaignImage" "EmailLogo" "WhiteLabelLogo" "WhiteLabelFavicon" "UserProfileImage"

the type of the image

Responses

Put Url

thod to update a specific url The following Url type have specific format: Instagram Url format : https://www.instagram.com/[profilenamevariable] Facebook Url format : https://www.facebook.com/[profilenamevariable] Youtube Url format : https://www.youtube.com/watch?v=[code]

Path Param: id of the url

path Parameters
id
required
integer
Request Body schema: application/json
url
required
string
display
string

Responses

Request samples

Content type
application/json
{
  • "url": "string",
  • "display": "string"
}

Response samples

Content type
application/json
{
  • "value": 0
}

Delete Url

Delete a url

Path Param: the id of the url

path Parameters
id
required
integer

Responses

Response samples

Content type
application/json
{
  • "value": 0
}

Post Url

determines the type of parent the url gets connected to

Path Parm: id of the parental location

path Parameters
id
required
integer
query Parameters
parentType
required
string
Enum: "Contact" "Location"

determines the type of parent the url gets connected to

Request Body schema: application/json
urlType
required
string
Enum: "FacebookUrl" "TwitterUrl" "YoutubeUrl" "GooglePlusUrl" "CustomerUrl" "CurrentOffersUrl" "LocationUrl" "MenuUrl" "OrderUrl" "InstagramUrl" "ReservationsUrl" "TikTokUrl" "LinkedInUrl" "XINGUrl"
url
required
string
display
string

Responses

Request samples

Content type
application/json
{
  • "urlType": "FacebookUrl",
  • "url": "string",
  • "display": "string"
}

Response samples

Content type
application/json
{
  • "value": 0
}

Get ParentList

Returns a list of parents for one id of some type. When you want the parents of a location call this method with the location id and the type location

query Parameters
id
required
integer

context id of the current data object

contextType
required
string
Enum: "Company" "Location" "Subscription" "EnhancedContent" "Duplicate"

determines the type of the current context

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "total": 0
}

Get Duplicates

Method to get a list of duplicates

query Parameters
workspaceIds
required
string

list of workspace ids

phone
string

phone number

postCode
string

postcode

city
string

city

street
string

street

house
string

house number

similarityFactor
number <double>

etermines how strict the the data matching should be. A value between zero and one with value one as an exact match.

recursive
required
boolean

return a list of all locations containing to a workspace or also from all it's child workspaces

activeListing
required
boolean

return a list of all locations having only active listing subscriptions

name
string

name of the location

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "total": 0
}

GET Profile Quality

The method offers the data quality (based on the completeness of its data) for a location. The More fields are defined, the higher is the quality value.

There are different use cases, which can be determined by the qualityType Parameter: Scan or Profile The profile use case covers more fields of the locations.

Note: qualityType default value is Scan if not defined

path Parameters
id
required
integer

id of the location

query Parameters
qualityType
string
Enum: "Profile" "Scan"

type of the quality, default scan

Responses

Response samples

Content type
application/json
{
  • "id": 0,
  • "quality": 0,
  • "name": "string",
  • "address": {
    },
  • "phone": {
    },
  • "eMail": "string",
  • "website": "string",
  • "description": true,
  • "logo": true,
  • "galerie": true,
  • "openingHours": true,
  • "paymentMethods": true,
  • "includingProfile": [
    ],
  • "excludingProfile": [
    ]
}

Get Portals

Method to get List of all available portals

query Parameters
take
integer <int32>

take a given number of entries

skip
integer <int32>

skip entries

portalType
string
Enum: "post" "review" "task" "listing" "mueller_medien_paket" "internal"

a filter of the type of the portals

filter
string

social portal names as a comma separated list

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "total": 0
}

GET Country Codes

Method to get List of all available country code language in ISO 3166-1 alpha-2 country code Examples: en_US, de_DE

query Parameters
language
required
string

Regional code

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "total": 0
}

GET States by Country Code

Method to get List of all available states for the given Country Code

query Parameters
countryCode
required
string

Country of interest

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Your GET endpoint

Returns the global paymentMethods if the countryCode is define will return the global plus what is available for that region code

query Parameters
countryCode
string

country code, ISO 3166-1 alpha-2. ex: en,de

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "total": 0
}

GET Youtube Channel

path Parameters
contextType
required
string

parental context

contextId
required
integer <int64>

the id of the parental context

Responses

Response samples

Content type
application/json
{
  • "key": "string",
  • "value": "string"
}

GET Youtube Playlist

path Parameters
contextType
required
string

parental context

contextId
required
integer <int64>

the id of the parental context

youtube_channel
required
string

the Id of the youtube channel

Responses

Response samples

Content type
application/json
[
  • {
    }
]

tag

DELETE Tag

delete a tag, be careful, this also deletes all connections between location and assigned tag

path Parameters
id
required
integer <int64>

the id of the tag

Responses

Response samples

Content type
application/json
{
  • "value": 0
}

POST Tag

Creating tag

path Parameters
id
required
integer <int64>

the id of the tag

Request Body schema: application/json

tag insert

name
required
string

Responses

Request samples

Content type
application/json
{
  • "name": "string"
}

Response samples

Content type
application/json
{
  • "value": 0
}

DELETE Tag Disconnect

remove the tag only from the current location

path Parameters
id
required
integer <int64>

the id of the tag

query Parameters
locationId
required
integer

id of location the tag gets connected to

Responses

Response samples

Content type
application/json
{
  • "value": 0
}

POST Tag Connect

connecting tag and location

path Parameters
id
required
integer <int64>

id of the tag

query Parameters
locationId
required
integer

id of location the tag gets connected to

Responses

Response samples

Content type
application/json
{
  • "value": 0
}

GET Tag List

Returns a list of tags related to a company, containing only the minimal set of information. The search needs to be restricted by a company id and can be limited by some optional query parameter.

query Parameters
filter
string

a filter for the name

sortColumn
string

name of the column which gets sorted, need to be one of the fields of the model schema of the response

sortDirection
string
Enum: "asc" "desc"

asc or desc for ascending or descending

skip
integer

skip entries

take
integer

take a given number of entries

id
required
integer

the id of the parental company

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "total": 0
}

contact

POST Contact

You can define a new contact person for companies with this method. Right now, only one contact person per company is allowed.

path Parameters
id
required
integer <int64>

id of the company

Request Body schema: application/json

contact object

salutation
required
string
firstName
string
lastName
required
string
eMails
required
Array of strings non-empty
mainPhone
required
string

main phone number, format e.g. 49-911-123456

Array of objects (PhoneInsert)

Responses

Request samples

Content type
application/json
{
  • "salutation": "string",
  • "firstName": "string",
  • "lastName": "string",
  • "eMails": [
    ],
  • "mainPhone": "string",
  • "alternativePhones": [
    ]
}

Response samples

Content type
application/json
{
  • "value": 0
}

PUT Contact

Method to update a existing contact. Set all fields mentioned in the model description, only the optional ones can be left out. Some of the contact update fields need to be in a specific format: * emails: represents a list of emails, the minimum length of this list is 1, each email needs to be in a specific format: 'foo@bar.de' * phone, mobile: need to be in a specific format: e.g. '49-123-456789' "

path Parameters
id
required
integer <int64>

id of the company

Request Body schema: application/json

contact object

salutation
required
string
firstName
required
string
lastName
required
string
eMails
required
Array of strings

Responses

Request samples

Content type
application/json
{
  • "salutation": "string",
  • "firstName": "string",
  • "lastName": "string",
  • "eMails": [
    ]
}

Response samples

Content type
application/json
{
  • "value": 0
}

GET Contact

Returns a list of contacts, each representing a sales man of the defined workspace The search needs to be restricted by a workspace id and can be limited by some optional query parameter.

query Parameters
id
required
integer

the id of the parental workspace

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "total": 0
}

phone

GET Phone

returns a list of phone objects for some context

query Parameters
id
required
integer <int32>

id of the parental location / contact

contextType
required
string
Enum: "Contact" "Location"

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "total": 0
}

POST Phone

add an alternative phone to a contact or a location Path Params: id: id of the parental location / contact/ user

path Parameters
id
required
integer
query Parameters
parentType
required
string
Enum: "Location" "Contact" "User"

etermines the type of parent the phone number gets connected to

Request Body schema: application/json
phoneType
required
string
Enum: "landLine" "mobile" "fax"
phone
required
string

format e.g.: 49-911-123456

tracked
required
boolean

is this phone number a call tracking number? (e.g. hotline)

Responses

Request samples

Content type
application/json
{
  • "phoneType": "landLine",
  • "phone": "string",
  • "tracked": true
}

Response samples

Content type
application/json
{
  • "value": 0
}

PUT Phone

Method to update a specific phone Path Param: id: id of the phone

path Parameters
id
required
integer
Request Body schema: application/json
phoneType
required
string
Enum: "landLine" "mobile" "fax"
phone
required
string
tracked
required
boolean

Responses

Request samples

Content type
application/json
{
  • "phoneType": "landLine",
  • "phone": "string",
  • "tracked": true
}

Response samples

Content type
application/json
{
  • "value": 0
}

DELETE Phone

delete a phone and all connections to it Path Param: id: the id of the phone

path Parameters
id
required
integer

Responses

Response samples

Content type
application/json
{
  • "value": 0
}

PUT MainPhone

Method to update a specific main phone

Path Param: id: id of the phone

path Parameters
id
required
integer
Request Body schema: application/json
phone
required
string
tracked
required
boolean
localPhone
string
claimId
string
pinVerification
string

Responses

Request samples

Content type
application/json
{
  • "phone": "string",
  • "tracked": true,
  • "localPhone": "string",
  • "claimId": "string",
  • "pinVerification": "string"
}

address

PUT Address

Method to update an existing address Path Param: id: id of the address

path Parameters
id
required
integer
Request Body schema: application/json
postCode
string
country
required
string
city
required
string
street
required
string
state
string
house
string
additive
string
object (Coordinate)
suppress
boolean

Responses

Request samples

Content type
application/json
{
  • "postCode": "string",
  • "country": "string",
  • "city": "string",
  • "street": "string",
  • "state": "string",
  • "house": "string",
  • "additive": "string",
  • "coordinate": {
    },
  • "suppress": true
}

Response samples

Content type
application/json
{
  • "value": 0
}

POST Address

Method to create a new address

Note: if you use the Location parentType you will add address to a location if you use the BillingAccount parentType you will add addres to a b

Path Param: id: id of the parent

path Parameters
id
required
integer
query Parameters
parentType
required
string
Enum: "BillingAccount" "Location" "Contract"

determines the type of parent the address gets connected to

Request Body schema: application/json
country
required
string
postCode
string
city
required
string
state
string
street
required
string
house
string
additive
string
object (Coordinate)
suppress
boolean

Responses

Request samples

Content type
application/json
{
  • "country": "string",
  • "postCode": "string",
  • "city": "string",
  • "state": "string",
  • "street": "string",
  • "house": "string",
  • "additive": "string",
  • "coordinate": {
    },
  • "suppress": true
}

Response samples

Content type
application/json
{
  • "value": 0
}

DELETE address

Method to delete an addres Path Param: id: id of the address

path Parameters
id
required
integer

Responses

Response samples

Content type
application/json
{
  • "value": 0
}

meta

GET SalutationList

returns a list valid salutations in the language of your own user settings

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "total": 0
}

GET BudgetTypeList

returns a list of budget types

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "total": 0
}

GET CategoryList

Returns a list of categories. You can change the translation by setting the language parameter, but be aware: if there is now translation for a category you will get the german ones. Additionally you can pass a workspace id, a workspace can have a different category set configured.

query Parameters
language
string

language code, ISO 3166-1 alpha-2 , e.g. en. If not defined, the language setting of your user is getting used

workspaceId
integer <int32>

workspace id, if you want to get the category set for a special workspace. If not defined, you will get the default markee category set

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "total": 0
}

enhancedContent

enhanced content methods

GET Enhanced Content

Returns the detailed enhanced content json object defined by the enhanced content id.

Path param: id of the enhanced content

path Parameters
id
required
integer

Responses

Response samples

Content type
application/json
{
  • "id": 0,
  • "name": "string",
  • "locations": [
    ],
  • "contentType": "productsServices",
  • "status": "live",
  • "language": {
    },
  • "published": true
}

POST Enhanced Content

Method to create enhanced content for a company. This content can be linked to locations afterwards

Path param: id of the parent company

path Parameters
id
required
integer
Request Body schema: application/json
name
required
string
contentType
required
string
Enum: "productsServices" "menu" "profile" "events"
required
object (KeyValueInt)

key value, containt an integer as key (e.g. an id) and a value (e.g. a name)

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "contentType": "productsServices",
  • "language": {
    }
}

Response samples

Content type
application/json
{
  • "value": 0
}

PUT Enhanced Content

Method to update enhanced content fields

Path Param: id of the enhanced content id

path Parameters
id
required
integer
Request Body schema: application/json
name
required
string
locationIds
required
Array of integers <int64> [ items <int64 > ]
required
object (KeyValueInt)

key value, containt an integer as key (e.g. an id) and a value (e.g. a name)

published
required
boolean

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "locationIds": [
    ],
  • "language": {
    },
  • "published": true
}

Response samples

Content type
application/json
{
  • "value": 0
}

DELETE Enhanced Content

This method deletes all the data of an enhanced content, including all connections to locations

Path Param: id of the enhanced content

path Parameters
id
required
integer

Responses

Response samples

Content type
application/json
{
  • "value": 0
}

GET Enhanced Content Detail

This method returns the detailed content of an enhanced content. It returns a list with detail elements.

Path Param: id of the enhanced content

path Parameters
id
required
integer
query Parameters
skip
integer

number of element to skip

take
integer

number of element to take

filter
string

filter for the name

sectionIds
string

comma separated list of section ids you can filter

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "total": 0
}

POST Enhanced Content Detail

create a content element for an enhanced content

Path Param: id of the enhanced content

path Parameters
id
required
integer
Request Body schema: application/json
object (KeyValueInt)

key value, containt an integer as key (e.g. an id) and a value (e.g. a name)

name
required
string
description
string
price
number <double>
Array of objects (KeyValueString)
Array of objects (ImageInsert)
url
string
youtubeUrl
string
idCode
string

Responses

Request samples

Content type
application/json
{
  • "section": {
    },
  • "name": "string",
  • "description": "string",
  • "price": 0,
  • "priceOption": [
    ],
  • "images": [
    ],
  • "url": "string",
  • "youtubeUrl": "string",
  • "idCode": "string"
}

Response samples

Content type
application/json
{
  • "value": 0
}

PUT Enhanced Content Detail

Update Enhanced Content Detail

Path Param: id of the enhanced content detail

path Parameters
id
required
integer
Request Body schema: application/json
object (KeyValueInt)

key value, containt an integer as key (e.g. an id) and a value (e.g. a name)

name
required
string
description
string
price
number <double>
Array of objects (KeyValueString)
Array of objects (ImageInsert)
url
string
youtubeUrl
string
idCode
string
priorityOrder
required
integer

Responses

Request samples

Content type
application/json
{
  • "section": {
    },
  • "name": "string",
  • "description": "string",
  • "price": 0,
  • "priceOption": [
    ],
  • "images": [
    ],
  • "url": "string",
  • "youtubeUrl": "string",
  • "idCode": "string",
  • "priorityOrder": 0
}

Response samples

Content type
application/json
{
  • "value": 0
}

GET Enhanced Content Detail Basic

This method returns the priority orders of elements inside of a section

path Parameters
id
required
integer

Section Id

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "total": 0
}

PUT Enhanced Content Detail Order

With this method you can update the order of elements inside of a section. The priorityOrder needs to be unique.

path Parameters
id
required
integer

id of the section

Request Body schema: application/json
Array of objects (EnhancedContentDetailOrder)
Array
id
required
integer <int32>
priorityOrder
required
integer <int32>

Responses

Request samples

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

Response samples

Content type
application/json
{
  • "ids": [
    ],
  • "total": 0
}

GET Enhanced Content Section List

returns all current sections for an enhanced content, including their priorities inside of this content and the number of elements being connected to this section

Path Param: id of the enhanced content

path Parameters
id
required
integer

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "total": 0
}

POST Enhanced Content Section

Create a new section for an existing enhanced content. This section will be the last one initially for this content, use the update method afterwards to set the priorityOrder you want.

Path Param: id of Enhanced Content

path Parameters
id
required
integer
Request Body schema: application/json
name
string
description
string

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "description": "string"
}

Response samples

Content type
application/json
{
  • "value": 0
}

PUT Enhanced Content Section

Method to update the sections for an enhanced content. You need to send the complete list of sections, being available for this content. Sections, being in the system and not getting sent by you will be deleted! In case this sections are having elements connected this will be not possible. Use this method especially to sort the sections by setting their priorityOrder. This order needs to be unique for this list.

Path Param: id of the enhanced content

path Parameters
id
required
integer
Request Body schema: application/json
Array of objects (EnhancedContentSectionUpdate)
Array
id
required
integer <int32>
name
required
string
description
string
priorityOrder
required
integer <int32>

Responses

Request samples

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

Response samples

Content type
application/json
{
  • "ids": [
    ],
  • "total": 0
}

GET Enhanced Content List

Returns the Enhanced Content json object linked to a Company. This list represents just a minimal set of information, to get the detailed information you need to use the corresponding detail methods.

query Parameters
contextIds
required
string

"comma seperated ids of location or company

contextType
required
string
Enum: "Location" "Company"

context type (location,company)

skip
integer <int32>

number of element to skip

take
integer <int32>

number of element to take

contentType
string
Enum: "productsServices" "menu" "profile" "events"

content type filter

status
string
Enum: "live" "not_connected"

status filter

filter
string

name filter

language
string

language filter

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "total": 0
}

DELETE Enhanced Content Detail

delete a detail element from an enhanced content

query Parameters
ids
required
string

ids of the enhanced content detail elements, comma separated

Responses

Response samples

Content type
application/json
{
  • "ids": [
    ],
  • "total": 0
}

claim

POST Start Claim

Use this method to claim a company/location. You can claim an existing company/location by using the corresponding location id or you can trigger it by using the phone number of this location you want to insert.

Request Body schema: application/json
claimType
required
string
Value: "phone"
locationId
integer <int64>
phone
string
dataSetId
string
externalProviderId
string

Responses

Request samples

Content type
application/json
{
  • "claimType": "phone",
  • "locationId": 0,
  • "phone": "string",
  • "dataSetId": "string",
  • "externalProviderId": "string"
}

Response samples

Content type
application/json
{
  • "value": "string"
}

PUT Finish Claim

update the claiming process by setting the correct pin

path Parameters
claimId
required
string <uuid>

claim id, returned by the initialized claiming step

Request Body schema: application/json
pinVerification
required
string

Responses

Request samples

Content type
application/json
{
  • "pinVerification": "string"
}

Response samples

Content type
application/json
{
  • "value": true
}

offer

offer methods

GET Offer

Returns an offer and its products with its settings. Define the offer id you want to get data for in the path as path parameter.

path Parameters
id
required
integer <int64>

contextual id

Responses

Response samples

Content type
application/json
{
  • "id": 0,
  • "products": [
    ],
  • "sellingName": "string",
  • "setupFee": 0,
  • "regularFee": 0,
  • "minimumTerm": {
    },
  • "maximumTerm": {
    },
  • "cycleTerm": {
    },
  • "validFrom": "2019-08-24",
  • "validUntil": "2019-08-24",
  • "product": [
    ],
  • "suppressNotifications": true,
  • "suppressTasks": true
}

POST Offer

Create a new offer for a workspace. Define the workspace id in the path as path parameter.

path Parameters
id
required
integer <int64>

contextual id

Request Body schema: application/json
sellingName
required
string
setupFee
number
regularFee
number
object (PeriodDuration)
object (PeriodDuration)
required
Array of objects (ProductSetting)
suppressNotifications
boolean

indicates if notifications shall be suppressed for all subscriptions which are getting created through a licence of this offer. By default this setting is false

suppressTasks
boolean

indicates if tasks shall be suppressed for all subscriptions which are getting created through a licence of this offer. By default this setting is false

Responses

Request samples

Content type
application/json
{
  • "sellingName": "string",
  • "setupFee": 0,
  • "regularFee": 0,
  • "minimumTerm": {
    },
  • "maximumTerm": {
    },
  • "product": [
    ],
  • "suppressNotifications": true,
  • "suppressTasks": true
}

Response samples

Content type
application/json
{
  • "value": 0
}

PUT Offer

Update an existing offer. Define the offer id you want to update the path as path parameter.

path Parameters
id
required
integer <int64>

contextual id

Request Body schema: application/json
sellingName
required
string
spaceId
required
integer
setupFee
number
regularFee
number
object (PeriodDuration)
object (PeriodDuration)
Array of objects (ProductSetting)
suppressNotifications
boolean

indicates if notifications shall be suppressed for all subscriptions which are getting created through a licence of this offer. By default this setting is false

suppressTasks
boolean

indicates if tasks shall be suppressed for all subscriptions which are getting created through a licence of this offer. By default this setting is false

Responses

Request samples

Content type
application/json
{
  • "sellingName": "string",
  • "spaceId": 0,
  • "setupFee": 0,
  • "regularFee": 0,
  • "minimumTerm": {
    },
  • "maximumTerm": {
    },
  • "product": [
    ],
  • "suppressNotifications": true,
  • "suppressTasks": true
}

Response samples

Content type
application/json
{
  • "value": 0
}

DELETE Offer

Delete an offer Define the offer id you want to delete the path as path parameter.

path Parameters
id
required
integer <int64>

contextual id

Responses

Response samples

Content type
application/json
{
  • "value": 0
}

GET Offer List

Returns a list of product offers of a certain workspace

query Parameters
filter
string

filter for the name

skip
integer

skip n elements

take
integer

take n elements

id
required
integer

id of parental workspace

recursive
required
boolean

returns either the offers for one space or for one space and all its child spaces

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "total": 0
}

GET Offer Product Available

Get product settings. Depending on the context you will get the most abstract product settings on workspae level you can use to create an offer. If licences and subscriptions already have been created you can also get the product settings for those (read only).

query Parameters
id
required
integer <int64>

contextual id

contextType
required
string
Enum: "Workspace" "Licence" "Subscription"

determines the parental context

Responses

Response samples

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