For restaurants: 2 months free on Starter. No card needed.Claim 2 months free

RevoTab

API reference

Revotab HQ

Platform administration for Revotab staff: accounts, finance, support, content, SEO, emails, jobs, system and security. Admins with two-factor only.

117 endpoints under https://revotab.com/api/v1/hq · how answers look · errors

Accounts

GET/hq/accounts Token

Accounts

Parameters

qquery
string
statusquery
string
planquery
string
GET/hq/accounts/{organization} Token

Get accounts

Parameters

organization*path
integer · The organization ID
POST/hq/accounts/{organization} Token

Update organizations

Parameters

organization*path
integer · The organization ID

Body

plan*
string · one of: starter, pro, premium
subscription_status*
string · one of: trialing, active, past_due, cancelled
trial_ends_at
string | null (date-time)
POST/hq/accounts/{organization}/extend-trial Token

Accounts extend

Parameters

organization*path
integer · The organization ID

Body

days*
integer · min 1 · max 90

Content

GET/hq/content Token

Content

Parameters

tabquery
string
POST/hq/content/categories Token

Create content categories

PUT/hq/content/categories/{category} Token

Update content categories

Parameters

category*path
integer · The category ID
DELETE/hq/content/categories/{category} Token

Delete content categories

Parameters

category*path
integer · The category ID
POST/hq/content/pages Token

Create content pages

GET/hq/content/pages/new Token

Content pages create

GET/hq/content/pages/{page} Token

Get content pages

Parameters

page*path
integer · The page ID
PUT/hq/content/pages/{page} Token

Update content pages

Parameters

page*path
integer · The page ID
DELETE/hq/content/pages/{page} Token

Delete content pages

Parameters

page*path
integer · The page ID
POST/hq/content/posts Token

Create content posts

GET/hq/content/posts/new Token

Content posts create

GET/hq/content/posts/{post} Token

Get content posts

Parameters

post*path
integer · The post ID
PUT/hq/content/posts/{post} Token

Update content posts

Parameters

post*path
integer · The post ID
DELETE/hq/content/posts/{post} Token

Delete content posts

Parameters

post*path
integer · The post ID
POST/hq/content/preview Token

Live preview of the Markdown text, rendered exactly as the website will

Body

body
string | null · max length 200000

Dashboard

GET/hq/dashboard Token

List item

Email Suppressions

DELETE/hq/email-suppressions/{suppression} Token

Delete emails suppressions

Parameters

suppression*path
integer · The suppression ID

Emails

GET/hq/emails Token

Emails

PUT/hq/emails/{key} Token

Update emails

Parameters

key*path
string
DELETE/hq/emails/{key} Token

Emails reset

Parameters

key*path
string
locale*query
string
POST/hq/emails/{key}/preview Token

Emails preview

Parameters

key*path
string
POST/hq/emails/{key}/test Token

Emails test

Parameters

key*path
string

Finance

GET/hq/finance Token

List finance

PUT/hq/finance/accounts/{organization}/billing Token

Update finance billing

Parameters

organization*path
integer · The organization ID

Body

billing_name*
string · max length 160
billing_reg_code
string | null · max length 40
billing_vat_number
string | null · max length 20
billing_address*
string · max length 200
billing_postal_code
string | null · max length 20
billing_city*
string · max length 80
billing_country*
string · one of: AT, BE, BG, CY, CZ, DE, DK, EE, ES, FI, FR, GR, HR, HU, IE, IT, LT, LU, LV, MT, NL, PL, PT, RO, SE, SI, SK, GB, CH, NO, US, AL, TR, RS, MK, UA, AE, CA, AU · min length 2 · max length 2
billing_email
string | null (email) · max length 160
POST/hq/finance/banks Token

Create finance banks

PUT/hq/finance/banks/{bank} Token

Update finance banks

Parameters

bank*path
integer · The bank ID
DELETE/hq/finance/banks/{bank} Token

Delete finance banks

Parameters

bank*path
integer · The bank ID
GET/hq/finance/company Token

Finance company

PUT/hq/finance/company Token

Update finance company

Body

legal_name*
string · max length 160
reg_code*
string · max length 40
vat_number
string | null · max length 20
address*
string · max length 200
postal_code
string | null · max length 20
city*
string · max length 80
country*
string · one of: AT, BE, BG, CY, CZ, DE, DK, EE, ES, FI, FR, GR, HR, HU, IE, IT, LT, LU, LV, MT, NL, PL, PT, RO, SE, SI, SK, GB, CH, NO, US, AL, TR, RS, MK, UA, AE, CA, AU · min length 2 · max length 2
email*
string (email) · max length 160
phone
string | null · max length 40
website
string | null · max length 120
prefix*
string · max length 8
terms_days*
integer · min 0 · max 120
vat_rate*
number · min 0 · max 50
footer
string | null · max length 200
auto_issue
boolean
send_emails
boolean
GET/hq/finance/invoices Token

Finance invoices

Parameters

qquery
string | null
statusquery
string | null
typequery
string | null
monthquery
string | null
POST/hq/finance/invoices Token

Create finance invoices

Body

organization_id
integer | null
buyer
object | null
lines*
object[] · at least 1 · at most 30
supply_from
string | null (date-time)
supply_to
string | null (date-time)
notes
string | null · max length 1000
issue_now
boolean
GET/hq/finance/invoices/new Token

Finance invoices create

GET/hq/finance/invoices/{invoice} Token

Get finance invoices

Parameters

invoice*path
integer · The invoice ID
DELETE/hq/finance/invoices/{invoice} Token

Delete finance invoices

Parameters

invoice*path
integer · The invoice ID
POST/hq/finance/invoices/{invoice}/credit Token

Finance invoices credit

Parameters

invoice*path
integer · The invoice ID

Body

reason*
string · max length 300
POST/hq/finance/invoices/{invoice}/issue Token

Finance invoices issue

Parameters

invoice*path
integer · The invoice ID
POST/hq/finance/invoices/{invoice}/paid Token

Finance invoices paid

Parameters

invoice*path
integer · The invoice ID

Body

paid_on
string | null (date-time)
GET/hq/finance/invoices/{invoice}/pdf Token

Finance invoices pdf

Parameters

invoice*path
integer · The invoice ID
POST/hq/finance/invoices/{invoice}/resend Token

Finance invoices resend

Parameters

invoice*path
integer · The invoice ID
GET/hq/finance/vat Token

Finance vat

GET/hq/finance/vat/csv Token

Finance vat csv

GET/hq/finance/vat/zip Token

Finance vat zip

Job Applications

PUT/hq/job-applications/{application} Token

Update jobs applications

Parameters

application*path
integer · The application ID

Body

status
string · one of: new, reviewing, interview, hired, declined
notes
string | null · max length 5000
DELETE/hq/job-applications/{application} Token

Delete jobs applications

Parameters

application*path
integer · The application ID
GET/hq/job-applications/{application}/cv Token

Jobs applications cv

Parameters

application*path
integer · The application ID

Jobs

GET/hq/jobs Token

Jobs

POST/hq/jobs Token

Create jobs

GET/hq/jobs/applications Token

One inbox for every application, filtered by job and by status

Parameters

statusquery
string
GET/hq/jobs/new Token

Jobs create

GET/hq/jobs/{job} Token

Get jobs

Parameters

job*path
integer · The job ID
PUT/hq/jobs/{job} Token

Update jobs

Parameters

job*path
integer · The job ID
DELETE/hq/jobs/{job} Token

Delete jobs

Parameters

job*path
integer · The job ID

Newsletter

GET/hq/newsletter/export Token

Confirmed newsletter subscribers as CSV, to import into Brevo (or any mailing tool)

Restaurants

GET/hq/restaurants Token

Restaurants

Parameters

qquery
string

Security

GET/hq/security Token

Security

Parameters

levelquery
string

Seo

GET/hq/seo Token

Seo

Parameters

tabquery
string
PUT/hq/seo/ai-key Token

Seo ai save

Body

key*
string · max length 300
DELETE/hq/seo/ai-key Token

Seo ai remove

POST/hq/seo/keywords Token

Create seo keywords

POST/hq/seo/keywords/import Token

Imports Google Search Console > Performance > Queries (Export > CSV, file "Queries.csv"). Updates tracked keywords and can add new queries above an impressions threshold

Body (multipart/form-data)

file*
string (binary) · Maximum file size: 5120 kilobytes.
add_new
boolean
min_impressions
integer | null · min 0
PUT/hq/seo/keywords/{keyword} Token

Update seo keywords

Parameters

keyword*path
integer · The keyword ID
DELETE/hq/seo/keywords/{keyword} Token

Delete seo keywords

Parameters

keyword*path
integer · The keyword ID
POST/hq/seo/landings Token

Create seo landings

GET/hq/seo/landings/new Token

Seo landings create

GET/hq/seo/landings/{landing} Token

Get seo landings

Parameters

landing*path
integer · The landing ID
PUT/hq/seo/landings/{landing} Token

Update seo landings

Parameters

landing*path
integer · The landing ID
DELETE/hq/seo/landings/{landing} Token

Delete seo landings

Parameters

landing*path
integer · The landing ID
POST/hq/seo/landings/{landing}/duplicate Token

Seo landings duplicate

Parameters

landing*path
integer · The landing ID
PUT/hq/seo/leads/{lead} Token

Update seo leads

Parameters

lead*path
integer · The lead ID

Body

status*
string · one of: new, contacted, won, lost
GET/hq/seo/media Token

For the image picker

POST/hq/seo/media Token

Create seo media

Body (multipart/form-data)

files*
string (binary)[] · at least 1 · at most 20
alt
string | null · max length 200
PUT/hq/seo/media/{media} Token

Update seo media

Parameters

media*path
integer · The media ID

Body

alt
string | null · max length 200
DELETE/hq/seo/media/{media} Token

Delete seo media

Parameters

media*path
integer · The media ID
PUT/hq/seo/settings/{section} Token

Seo settings

Parameters

section*path
string

Body

default_og_media_id
integer | null
pages
string[]
string
logo_media_id
integer | null
favicon_media_id
integer | null
logo_icon_media_id
integer | null
theme_color
string
images
string[]
home
object
home.headline_1
string · max length 60
home.headline_2
string · max length 60
home.subtitle
string · max length 260
home.cta_primary
string · max length 30
home.cta_secondary
string · max length 30
home.cta_secondary_url
string
topbar
object
topbar.active
boolean
topbar.link_url
string | null · max length 300
topbar.starts_on
string | null (date-time)
topbar.ends_on
string | null (date-time)
topbar.text
object
topbar.text.
string | null · max length 160
allow_promotion_codes
boolean
offer
object
offer.active
boolean
offer.code
string | null · max length 40
offer.plan
string | null
offer.days
integer | null · min 15 · max 365
offer.ends_on
string | null (date-time)
demo_requests
boolean
ga4_id
string | null
gtm_id
string | null
ads_id
string | null
enhanced_conversions
boolean
consent_mode
string · one of: basic, advanced
consent_banner
boolean
search_console
string | null
track_restaurant_pages
boolean
POST/hq/seo/write Token

Seo write

Body

mode*
string · one of: free, ai
kind*
string · one of: post, page, landing, article, job, site
locale
string | null · one of: en, el,
title
string | null · max length 300
summary
string | null · max length 1000
body
string | null · max length 100000
keyword
string | null · max length 120

Settings

GET/hq/settings Token

Settings

POST/hq/settings/mobile/firebase Token

Store the Firebase service account (the JSON file from Firebase > Project settings > Service accounts)

Body

json*
string · max length 20000
DELETE/hq/settings/mobile/firebase Token

Delete settings mobile firebase

DELETE/hq/settings/mobile/keys/{key} Token

Revoke any restaurant's integration key (abuse, a leaked key)

Parameters

key*path
integer
POST/hq/settings/mobile/test-push Token

A test notification to the admin's own signed-in app devices

PUT/hq/settings/mobile/{section} Token

Settings mobile

Parameters

section*path
string

Body

push
object
push.enabled
boolean
push.events
boolean[]
access
object
access.team_sign_in
boolean
access.guest_accounts
boolean
access.integration_keys
boolean
access.rate_signed_in
integer · min 30 · max 5000
access.rate_anonymous
integer · min 10 · max 1000
PUT/hq/settings/{section} Token

Update settings

Parameters

section*path
string

Body

name
string · max length 80
legal_name
string | null · max length 160
registry_code
string | null · max length 40
vat_number
string | null · max length 40
address
string | null · max length 300
support_email
string (email) · max length 160
billing_email
string (email) · max length 160
open
boolean
trial_days
integer · min 0 · max 90
trial_plan
string
active
boolean
tone
string · one of: info, warning
message
string | null · max length 300

Settings Plans

PUT/hq/settings-plans Token

Settings plans

Body

plans*
string[] · at least 1

Support

GET/hq/support Token

Support

Parameters

viewquery
string
GET/hq/support/articles Token

Support articles

POST/hq/support/articles Token

Create support articles

GET/hq/support/articles/new Token

Support articles create

GET/hq/support/articles/{article} Token

Get support articles

Parameters

article*path
integer · The article ID
PUT/hq/support/articles/{article} Token

Update support articles

Parameters

article*path
integer · The article ID
DELETE/hq/support/articles/{article} Token

Delete support articles

Parameters

article*path
integer · The article ID
POST/hq/support/categories Token

Create support categories

PUT/hq/support/categories/{category} Token

Update support categories

Parameters

category*path
integer · The category ID
DELETE/hq/support/categories/{category} Token

Delete support categories

Parameters

category*path
integer · The category ID
GET/hq/support/replies Token

Support replies

POST/hq/support/replies Token

Create support replies

PUT/hq/support/replies/{reply} Token

Update support replies

Parameters

reply*path
integer · The reply ID
DELETE/hq/support/replies/{reply} Token

Delete support replies

Parameters

reply*path
integer · The reply ID
GET/hq/support/{ticket} Token

Get support

Parameters

ticket*path
integer · The ticket ID
PUT/hq/support/{ticket} Token

Update support

Parameters

ticket*path
integer · The ticket ID

Body

status
string · one of: open, pending, solved
priority
string · one of: low, normal, urgent
topic
string · one of: account, billing, bookings, setup, technical, idea, sales, partner, other
assigned_to
integer | null
POST/hq/support/{ticket}/reply Token

Support reply

Parameters

ticket*path
integer · The ticket ID

Body

message*
string · min length 1 · max length 10000
internal
boolean
solve
boolean
saved_reply_id
integer | null

Support Exit

POST/hq/support-exit Token

Exit

Support Mode

POST/hq/support-mode/{restaurant} Token

Support mode: open a customer's back office without joining their team

Parameters

restaurant*path
integer · The restaurant ID

System

GET/hq/system Token

System

Parameters

logquery
string | null
levelquery
string | null
qquery
string | null
GET/hq/system/backups/{name} Token

System backups download

Parameters

name*path
string
DELETE/hq/system/backups/{name} Token

System backups delete

Parameters

name*path
string
POST/hq/system/backups/{name}/verify Token

System backups verify

Parameters

name*path
string
DELETE/hq/system/jobs/{uuid} Token

System jobs forget

Parameters

uuid*path
string
POST/hq/system/jobs/{uuid}/retry Token

System jobs retry

Parameters

uuid*path
string
GET/hq/system/logs/{name} Token

System logs download

Parameters

name*path
string
DELETE/hq/system/logs/{name} Token

System logs clear

Parameters

name*path
string
POST/hq/system/run/{action} Token

System run

Parameters

action*path
string

Users

GET/hq/users Token

Users

Parameters

qquery
string
POST/hq/users/{user}/admin Token

Users admin

Parameters

user*path
integer · The user ID

* required

For restaurants, cafés, bistros and tavernas

Your tables. Your guests. Your money.