API - concepts
The API of Apiviz backend deals with several distinct concepts :
- configuration’s collections : the several aspects to take innto account when you customize a dataviz website with Apiviz
- models : the set of every document in every colleection corresponding to an UUID
COLLECTIONS AND CONFIGURATIONS
Schemas
Every collection and sometimes each document could have a specific schema corresponding to its own purppose. Still some fields are usually present for each document :
- example :
{ "field" : "app_languages",
"app_version" : "1.0.0",
"help" : "The languages and default locale for your ApiViz instance",
[...]
"apiviz_front_uuid" : "c5efafab-1733-4ad1-9eb8-d529bc87c481",
"is_default" : True
}
Collections
the global
collection
contains global configuration variables of your Apiviz’s instance
app_languages
:app_basic_dict
:app_screen_tabs
:app_logo
:app_title
:app_description
:app_keywords
:app_welcome
:app_pitch
:app_code
:app_indexing
:app_analytics
:app_support
:
the navbar
collection
One document to describe your navbar
app_navbar
:
the footer
collection
One document to describe your navbar
app_footer
:
the tabs
collection
You can register several tabs and point on their individual tab_uri
the endpoints
collection
Endpoints are a crucial part of an Apiviz configuration. You can add as many new datasets, data filters as you want ; but there are also some fields designed for authentication only
the routes
collection
the styles
collection
The documents allowing to customize the styles and colors of your Apiviz’s instance
app_colors
:app_typo
:app_banners
:app_search_default_images_sets
:
the socials
collection
app_twitter
:app_facebook
:app_github
:
Edit a configuration
MODELS
A model is defined by all documents in every collection corresponding to a specific UUID (aka apiviz_front_uuid
)
Reusable models
A resusable model is a model whose app_title
’s document has the field can_be_used_as_model
as true
.
- example :
{ "field" : "app_title",
"app_version" : "1.0.0",
"help" : "Choose a title for your ApiViz instance",
"content" : "SoNum",
"can_be_used_as_model" : True,
"image_preview" : "https://raw.githubusercontent.com/co-demos/apiviz-frontend/master/documentation/screenshots/map-view-sonum-03.png",
"apiviz_front_uuid" : "c5efafab-1733-4ad1-9eb8-d529bc87c481",
"is_default" : True
}
Create a new model from another
From the Apiviz website generator you can use a resuable model to create a complete and brand new model : it will use your new UUID and copy-paste the chosen template juste updating the UUID onn each document