{
  "status": 200,
  "apps": [
    {
      "details": {
        "title": "Youtube",
        "icon": "mdi-social:youtube",
        "color": "red",
        "author": "Google, Youtube LLC",
        "description": "The most popular online video sharing and remix site.",
        "status": "available",
        "tags": ["video"],
        "tos": [
          {
            "title": "YouTube Terms of Service",
            "link": "https://www.youtube.com/t/terms"
          },
          {
            "title": "Google Privacy Policy",
            "link": "https://policies.google.com/privacy"
          }
        ]
      },
      "connection": {
        "protocol": "https",
        "url": "www.googleapis.com/youtube/v3",
        "data": {
          "key": "AIzaSyAF9zKXv-fxus9GNqn40SHzTn6F8A7h-Yo"
        },
        "operations": {
          "browse": {
            "method": "GET",
            "endPoint": "search",
            "pagination": {
              "style": "page",
              "props": {
                "previous": "prevPageToken",
                "next": "nextPageToken",
                "total_items": "pageInfo.totalResults"
              }
            },
            "search": {
              "q": {
                "title": "Search",
                "type": "string"
              }
            },
            "data": {
              "part": "snippet",
              "type": "video",
              "maxResults": "20"
            },
            "resultMap": {
              "defaultGizmoType": "video",
              "items": "items",
              "preview": {
                "title": "snippet.title",
                "details": "snippet.description",
                "image": "snippet.thumbnails.default.url",
                "id": "id.videoId"
              },
              "gizmo": {
                "title": "snippet.title",
                "description": "snippet.description",
                "id": "id.videoId",
                "_url_source": "https://www.youtube.com/watch?v=<%= id %>",
                "caption": "snippet.description",
                "citation": "snippet.channelTitle"
              }
            }
          }
        }
      }
    },
    {
      "details": {
        "title": "Vimeo",
        "icon": "av:play-circle-filled",
        "color": "blue",
        "author": "Vimeo Inc.",
        "description": "A high quality video sharing community.",
        "status": "available",
        "tags": ["video"]
      },
      "connection": {
        "protocol": "https",
        "url": "api.vimeo.com",
        "data": {
          "access_token": "0a718b853bad87571d52e9fb554e0a43"
        },
        "operations": {
          "browse": {
            "method": "GET",
            "endPoint": "videos",
            "pagination": {
              "style": "link",
              "props": {
                "first": "paging.first",
                "next": "paging.next",
                "previous": "paging.previous",
                "last": "paging.last"
              }
            },
            "search": {
              "query": {
                "title": "Search",
                "type": "string"
              }
            },
            "data": {
              "direction": "asc",
              "sort": "alphabetical",
              "filter": "CC",
              "per_page": "20"
            },
            "resultMap": {
              "defaultGizmoType": "video",
              "items": "data",
              "preview": {
                "title": "name",
                "details": "description",
                "image": "pictures.sizes.1.link",
                "id": "id"
              },
              "gizmo": {
                "_url_source": "https://vimeo.com<%= id %>",
                "id": "uri",
                "title": "title",
                "caption": "description",
                "description": "description",
                "citation": "user.name"
              }
            }
          }
        }
      }
    },
    {
      "details": {
        "title": "Flickr",
        "icon": "image:collections",
        "color": "pink",
        "author": "Yahoo",
        "description": "The original photo sharing platform on the web.",
        "status": "available",
        "rating": "0",
        "tags": ["images"]
      },
      "connection": {
        "protocol": "https",
        "url": "api.flickr.com",
        "data": {
          "api_key": "43ccc969703b7afd4e2a1b16f02ce84e"
        },
        "operations": {
          "browse": {
            "method": "GET",
            "endPoint": "services/rest",
            "pagination": {
              "style": "page",
              "props": {
                "per_page": "photos.perpage",
                "total_pages": "photos.pages",
                "page": "photos.page"
              }
            },
            "search": {
              "text": {
                "title": "Search",
                "type": "string"
              },
              "safe_search": {
                "title": "Safe results",
                "type": "string",
                "value": "1",
                "component": {
                  "name": "select",
                  "valueProperty": "value",
                  "slot": "<option value='1'>Safe</option><option value='2'>Moderate</option><option value='3'>Restricted</option>"
                }
              },
              "license": {
                "title": "License type",
                "type": "string",
                "value": "",
                "component": {
                  "name": "select",
                  "valueProperty": "value",
                  "slot": "<option value=''>Any</option><option value='0'>All Rights Reserved</option><option value='4'>Attribution License</option><option value='6'>Attribution-NoDerivs License</option><option value='3'>Attribution-NonCommercial-NoDerivs License</option><option value='2'>Attribution-NonCommercial License</option><option value='1'>Attribution-NonCommercial-ShareAlike License</option><option value='5'>Attribution-ShareAlike License</option><option value='7'>No known copyright restrictions</option><option value='8'>United States Government Work</option><option value='9'>Public Domain Dedication (CC0)</option><option value='10'>Public Domain Mark</option>"
                }
              }
            },
            "data": {
              "method": "flickr.photos.search",
              "safe_search": "1",
              "format": "json",
              "per_page": "20",
              "nojsoncallback": "1",
              "extras": "license,description,url_l,url_s"
            },
            "resultMap": {
              "defaultGizmoType": "image",
              "items": "photos.photo",
              "preview": {
                "title": "title",
                "details": "description._content",
                "image": "url_s",
                "id": "id"
              },
              "gizmo": {
                "title": "title",
                "source": "url_l",
                "alt": "description._content"
              }
            }
          }
        }
      }
    },
    {
      "details": {
        "title": "NASA",
        "icon": "places:all-inclusive",
        "color": "blue",
        "author": "US Government",
        "description": "The cozmos through one simple API.",
        "status": "available",
        "tags": ["images"]
      },
      "connection": {
        "protocol": "https",
        "url": "images-api.nasa.gov",
        "operations": {
          "browse": {
            "method": "GET",
            "endPoint": "search",
            "pagination": {
              "style": "page",
              "props": {
                "page": "page"
              }
            },
            "search": {
              "q": {
                "title": "Search",
                "type": "string"
              }
            },
            "data": {
              "media_type": "image"
            },
            "resultMap": {
              "defaultGizmoType": "image",
              "items": "collection.items",
              "preview": {
                "title": "data.0.title",
                "details": "data.0.description",
                "image": "links.0.href",
                "id": "links.0.href"
              },
              "gizmo": {
                "id": "links.0.href",
                "source": "links.0.href",
                "title": "data.0.title",
                "caption": "data.0.description",
                "description": "data.0.description",
                "citation": "data.0.photographer",
                "type": "data.0.media_type"
              }
            }
          }
        }
      }
    },
    {
      "details": {
        "title": "Giphy",
        "icon": "gif",
        "color": "green",
        "author": "Giphy",
        "description": "Crowd sourced memes via animated gifs.",
        "status": "available",
        "tags": ["images"]
      },
      "connection": {
        "protocol": "https",
        "url": "api.giphy.com",
        "data": {
          "api_key": "mr3blNkTT0HeTvtyPPT4TIftqUSgyHoO"
        },
        "operations": {
          "browse": {
            "method": "GET",
            "endPoint": "v1/gifs/search",
            "pagination": {
              "style": "offset",
              "props": {
                "offset": "pagination.offset",
                "total": "pagination.total_count",
                "count": "pagination.count"
              }
            },
            "search": {
              "q": {
                "title": "Search",
                "type": "string"
              },
              "rating": {
                "title": "Rating",
                "type": "string",
                "component": {
                  "name": "select",
                  "slot": "<option value='Y'>Y</option><option value='G'>G</option><option value='PG'>PG</option><option value='PG-13'>PG-13</option><option value='R'>R</option>"
                }
              },
              "lang": {
                "title": "Language",
                "type": "string",
                "component": {
                  "name": "select",
                  "slot": "<option value='en'>en</option><option value='es'>es</option><option value='pt'>pt</option><option value='id'>id</option><option value='fr'>fr</option><option value='ar'>ar</option><option value='tr'>tr</option><option value='th'>th</option><option value='vi'>vi</option><option value='de'>de</option><option value='it'>it</option><option value='ja'>ja</option><option value='zh-CN'>zh-CN</option><option value='zh-TW'>zh-TW</option><option value='ru'>ru</option><option value='ko'>ko</option><option value='pl'>pl</option><option value='nl'>nl</option><option value='ro'>ro</option><option value='hu'>hu</option><option value='sv'>sv</option><option value='cs'>cs</option><option value='hi'>hi</option><option value='bn'>bn</option><option value='da'>da</option><option value='fa'>fa</option><option value='tl'>tl</option><option value='fi'>fi</option><option value='iw'>iw</option><option value='ms'>ms</option><option value='no'>no</option><option value='uk'>uk</option>"
                }
              }
            },
            "data": {
              "limit": "20",
              "lang": "en"
            },
            "resultMap": {
              "defaultGizmoType": "image",
              "items": "data",
              "preview": {
                "title": "title",
                "details": "description",
                "image": "images.preview_gif.url",
                "id": "id"
              },
              "gizmo": {
                "source": "images.original.url",
                "source2": "images.480w_still.url",
                "id": "id",
                "title": "title",
                "alt": "title",
                "caption": "user.display_name",
                "citation": "user.display_name"
              }
            }
          }
        }
      }
    },
    {
      "details": {
        "title": "Sketchfab",
        "icon": "icons:3d-rotation",
        "color": "purple",
        "author": "Sketchfab",
        "description": "3D sharing community.",
        "status": "available",
        "rating": "0",
        "tags": ["3D models"]
      },
      "connection": {
        "protocol": "https",
        "url": "api.sketchfab.com",
        "data": {
          "type": "models"
        },
        "operations": {
          "browse": {
            "method": "GET",
            "endPoint": "v3/search",
            "pagination": {
              "style": "page",
              "props": {
                "per_page": "photos.perpage",
                "total_pages": "photos.pages",
                "page": "photos.page"
              }
            },
            "search": {
              "q": {
                "title": "Search",
                "type": "string"
              },
              "license": {
                "title": "License type",
                "type": "string",
                "value": "",
                "component": {
                  "name": "select",
                  "valueProperty": "value",
                  "slot": "<option value=''>Any</option><option value='by'>Attribution</option><option value='by-sa'>Attribution ShareAlike</option><option value='by-nd'>Attribution NoDerivatives</option><option value='by-nc'>Attribution-NonCommercial</option><option value='by-nc-sa'>Attribution NonCommercial ShareAlike</option><option value='by-nc-nd'>Attribution NonCommercial NoDerivatives</option><option value='cc0'>Public Domain Dedication (CC0)</option>"
                }
              }
            },
            "resultMap": {
              "defaultGizmoType": "video",
              "items": "results",
              "preview": {
                "title": "name",
                "details": "description._content",
                "image": "thumbnails.images.2.url",
                "id": "uid"
              },
              "gizmo": {
                "title": "name",
                "source": "embedUrl",
                "alt": "description"
              }
            }
          }
        }
      }
    },
    {
      "details": {
        "title": "Unsplash",
        "icon": "image:collections",
        "color": "grey",
        "author": "Unsplash",
        "description": "Crowd sourced, open photos",
        "status": "available",
        "tags": ["images"]
      },
      "connection": {
        "protocol": "https",
        "url": "api.unsplash.com",
        "data": {
          "client_id": "0e1fa3a203724415c10c03581e8db8a43e8bc8906ad934e0f321d28be16281ff"
        },
        "operations": {
          "browse": {
            "method": "GET",
            "endPoint": "search/photos",
            "pagination": {
              "style": "link",
              "props": {
                "first": "paging.first",
                "next": "paging.next",
                "previous": "paging.previous",
                "last": "paging.last"
              }
            },
            "search": {
              "query": {
                "title": "Search",
                "type": "string"
              }
            },
            "data": {},
            "resultMap": {
              "defaultGizmoType": "image",
              "items": "results",
              "preview": {
                "title": "tags.0.title",
                "details": "description",
                "image": "urls.thumb",
                "id": "id"
              },
              "gizmo": {
                "id": "id",
                "source": "urls.regular",
                "alt": "description",
                "caption": "description",
                "citation": "user.name"
              }
            }
          }
        }
      }
    },
    {
      "details": {
        "title": "Wikipedia",
        "icon": "account-balance",
        "color": "grey",
        "author": "Wikimedia",
        "description": "Encyclopedia of the world.",
        "status": "available",
        "tags": ["encyclopedia"]
      },
      "connection": {
        "protocol": "https",
        "url": "en.wikipedia.org",
        "data": {
          "action": "query",
          "list": "search",
          "format": "json",
          "origin": "*"
        },
        "operations": {
          "browse": {
            "method": "GET",
            "endPoint": "w/api.php",
            "pagination": {
              "style": "offset",
              "props": {
                "offset": "sroffset"
              }
            },
            "search": {
              "srsearch": {
                "title": "Search",
                "type": "string"
              }
            },
            "data": {},
            "resultMap": {
              "image": "https://en.wikipedia.org/static/images/project-logos/enwiki.png",
              "defaultGizmoType": "wikipedia",
              "items": "query.search",
              "preview": {
                "title": "title",
                "details": "snippet",
                "id": "title"
              },
              "gizmo": {
                "_url_source": "https://en.wikipedia.org/wiki/<%= id %>",
                "id": "title",
                "title": "title",
                "caption": "snippet",
                "description": "snippet"
              }
            }
          }
        }
      }
    },
    {
      "details": {
        "title": "Local files",
        "icon": "perm-media",
        "color": "light-blue",
        "author": "HAXCMS",
        "description": "HAXCMS integration for HAX",
        "tags": ["Uploads"]
      },
      "connection": {
        "protocol": "http",
        "url": "",
        "operations": {
          "browse": {
            "method": "GET",
            "endPoint": "/elements/haxcms-elements/demo/system/listFiles",
            "pagination": {
              "style": "link",
              "props": {
                "first": "page.first",
                "next": "page.next",
                "previous": "page.previous",
                "last": "page.last"
              }
            },
            "search": {
              "q": {
                "title": "Search",
                "type": "string"
              }
            },
            "data": {
              "__HAXAPPENDUPLOADENDPOINT__": true
            },
            "resultMap": {
              "defaultGizmoType": "image",
              "items": "list",
              "preview": {
                "title": "name",
                "details": "mime",
                "image": "url",
                "id": "uuid"
              },
              "gizmo": {
                "source": "url",
                "id": "uuid",
                "title": "name",
                "type": "type"
              }
            }
          },
          "add": {
            "method": "POST",
            "endPoint": "system/saveFile",
            "acceptsGizmoTypes": [
              "image",
              "video",
              "audio",
              "pdf",
              "svg",
              "document",
              "csv"
            ],
            "resultMap": {
              "item": "data.file",
              "defaultGizmoType": "image",
              "gizmo": {
                "source": "url",
                "id": "uuid"
              }
            }
          }
        }
      }
    }
  ],
  "stax": [
    {
      "details": {
        "title": "Two column Article",
        "image": "",
        "author": "HAXTheWeb core team",
        "description": "Content with media to right",
        "status": "available",
        "rating": "0",
        "tags": ["media"]
      },
      "stax": [
        {
          "tag": "grid-plate",
          "properties": {
            "disableResponsive": true,
            "layout": "2-1"
          },
          "content": "<h2 data-design-treatment=\"vert\" data-primary=\"15\" slot=\"col-1\">Scanning Process / Software</h2><p slot=\"col-1\">The following stages of the process involves aligning the various scans to create\n    a coherent, detailed 3D model using Artec Studio 17 software. The point cloud is\n    converted into a mesh, which is a solid 3D model, and the texture data captured by\n    the scanner is mapped back onto the mesh to add color, markings, and other details.\n    The final 3D model can be exported into other software platforms, such as Blender\n    and Instant Mesh, both of which are open-source.</p>\n\n    <p data-hax-layout=\"true\" =\"true\"=\"\" slot=\"col-1\">To optimize the model for web use, it must be reduced significantly in size. To\n    achieve this, the polygon count is reduced using Instant Mesh, and the resulting\n    low-polygon model is unwrapped, and the texture and additional details are added\n    through a process called “baking” onto the model using normal mapping. This is a\n    commonly used technique in film and video game production to reduce file sizes, processing\n    power, and other resources required.</p>\n\n <media-image citation=\"3D scanner and software shown scanning an ODL coffee mug.\" accent-color=\"grey\" size=\"wide\" offset=\"none\" slot=\"col-2\" source=\"https://bones.courses.science.psu.edu/assets/images/scanning-page-images/scanner-odl.jpg\" card box></media-image>"
        }
      ]
    }
  ],
  "autoloader": {
    "multiple-choice": "@haxtheweb/multiple-choice/multiple-choice.js",
    "example-hax-element": "@haxtheweb/example-hax-element/example-hax-element.js",
    "true-false-question": "@haxtheweb/multiple-choice/lib/true-false-question.js",
    "short-answer-question": "@haxtheweb/multiple-choice/lib/short-answer-question.js",
    "sorting-question": "@haxtheweb/sorting-question/sorting-question.js",
    "tagging-question": "@haxtheweb/tagging-question/tagging-question.js",
    "tableau-embed": "@haxtheweb/tableau-embed/tableau-embed.js",
    "matching-question": "@haxtheweb/matching-question/matching-question.js",
    "mark-the-words": "@haxtheweb/mark-the-words/mark-the-words.js",
    "fill-in-the-blanks": "@haxtheweb/fill-in-the-blanks/fill-in-the-blanks.js",
    "haxcms-site-disqus": "@haxtheweb/disqus-embed/lib/haxcms-site-disqus.js",
    "discord-embed": "@haxtheweb/discord-embed/discord-embed.js",
    "page-anchor": "@haxtheweb/page-break/lib/page-anchor.js",
    "collection-list": "@haxtheweb/collection-list/collection-list.js",
    "collection-item": "@haxtheweb/collection-list/lib/collection-item.js",
    "page-section": "@haxtheweb/page-section/page-section.js",
    "simple-cta": "@haxtheweb/simple-cta/simple-cta.js",
    "spotify-embed": "@haxtheweb/spotify-embed/spotify-embed.js",
    "media-image": "@haxtheweb/media-image/media-image.js",
    "simple-icon": "@haxtheweb/simple-icon/simple-icon.js",
    "play-list": "@haxtheweb/play-list/play-list.js",
    "inline-audio": "@haxtheweb/inline-audio/inline-audio.js",
    "audio-player": "@haxtheweb/audio-player/audio-player.js",
    "moar-sarcasm": "@haxtheweb/moar-sarcasm/moar-sarcasm.js",
    "learning-component": "@haxtheweb/course-design/lib/learning-component.js",
    "simple-tags": "@haxtheweb/simple-fields/lib/simple-tags.js",
    "twitter-embed": "@haxtheweb/twitter-embed/twitter-embed.js",
    "self-check": "@haxtheweb/self-check/self-check.js",
    "course-model": "@haxtheweb/course-model/course-model.js",
    "stop-note": "@haxtheweb/stop-note/stop-note.js",
    "video-player": "@haxtheweb/video-player/video-player.js",
    "a11y-collapse": "@haxtheweb/a11y-collapse/a11y-collapse.js",
    "accent-card": "@haxtheweb/accent-card/accent-card.js",
    "author-card": "@haxtheweb/author-card/author-card.js",
    "a11y-gif-player": "@haxtheweb/a11y-gif-player/a11y-gif-player.js",
    "code-sample": "@haxtheweb/code-sample/code-sample.js",
    "ebook-button": "@haxtheweb/course-design/lib/ebook-button.js",
    "worksheet-download": "@haxtheweb/course-design/lib/worksheet-download.js",
    "image-compare-slider": "@haxtheweb/image-compare-slider/image-compare-slider.js",
    "license-element": "@haxtheweb/license-element/license-element.js",
    "ai-usage-license": "@haxtheweb/ai-usage-license/ai-usage-license.js",
    "lrn-math": "@haxtheweb/lrn-math/lrn-math.js",
    "vocab-term": "@haxtheweb/vocab-term/vocab-term.js",
    "meme-maker": "@haxtheweb/meme-maker/meme-maker.js",
    "grid-plate": "@haxtheweb/grid-plate/grid-plate.js",
    "lrndesign-timeline": "@haxtheweb/lrndesign-timeline/lrndesign-timeline.js",
    "person-testimonial": "@haxtheweb/person-testimonial/person-testimonial.js",
    "place-holder": "@haxtheweb/place-holder/place-holder.js",
    "q-r": "@haxtheweb/q-r/q-r.js",
    "wikipedia-query": "@haxtheweb/wikipedia-query/wikipedia-query.js",
    "date-card": "@haxtheweb/date-card/date-card.js",
    "h5p-element": "@haxtheweb/h5p-element/h5p-element.js",
    "md-block": "@haxtheweb/md-block/md-block.js",
    "page-break": "@haxtheweb/page-break/page-break.js",
    "rpg-character": "@haxtheweb/rpg-character/rpg-character.js",
    "site-random-content": "@haxtheweb/haxcms-elements/lib/ui-components/site/site-random-content.js",
    "flash-card": "@haxtheweb/flash-card/flash-card.js",
    "image-gallery": "@haxtheweb/image-gallery/image-gallery.js",
    "media-playlist": "@haxtheweb/media-playlist/media-playlist.js"
  }
}
