diff --git a/content/api/Demo_API_Portal_2.md b/content/api/Demo_API_Portal_2.md
new file mode 100644
index 0000000000..a4810b6b37
--- /dev/null
+++ b/content/api/Demo_API_Portal_2.md
@@ -0,0 +1,9 @@
+---
+ title: "Demo API Portal 2"
+ link: /platform/hpe-ezmeral-container-platform/home/
+ description: Helps deploy and manage stateful applications on Kubernetes.
+ priority: 4
+ image: '/img/platforms/Aruba.svg'
+ Featured: true
+---
+
\ No newline at end of file
diff --git a/content/api/Demo_API_Portal_3.md b/content/api/Demo_API_Portal_3.md
new file mode 100644
index 0000000000..6ff7e350a8
--- /dev/null
+++ b/content/api/Demo_API_Portal_3.md
@@ -0,0 +1,9 @@
+---
+ title: "Demo API Portal 3"
+ link: /platform/hpe-ezmeral-container-platform/home/
+ description: Helps deploy and manage stateful applications on Kubernetes.
+ priority: 5
+ image: '/img/platforms/Aruba.svg'
+ Featured: true
+---
+
\ No newline at end of file
diff --git a/content/api/Demo_API_Portal_4.md b/content/api/Demo_API_Portal_4.md
new file mode 100644
index 0000000000..c6fe3a0c1c
--- /dev/null
+++ b/content/api/Demo_API_Portal_4.md
@@ -0,0 +1,9 @@
+---
+ title: "Demo API Portal 4"
+ link: /platform/hpe-ezmeral-container-platform/home/
+ description: Helps deploy and manage stateful applications on Kubernetes.
+ priority: 6
+ image: '/img/platforms/Aruba.svg'
+ Featured: true
+---
+
\ No newline at end of file
diff --git a/content/api/HPE_Greenlake_Cloud_Services_API_Portal.md b/content/api/HPE_Greenlake_Cloud_Services_API_Portal.md
new file mode 100644
index 0000000000..43230fea90
--- /dev/null
+++ b/content/api/HPE_Greenlake_Cloud_Services_API_Portal.md
@@ -0,0 +1,9 @@
+---
+ title: "HPE GreenLake Cloud Services API Portal"
+ link: https://developer.greenlake.hpe.com/
+ description: Integrate with HPE GreenLake Cloud Services today!
+ priority: 1
+ image: '/img/platforms/Greenlake.svg'
+ Featured: true
+---
+
\ No newline at end of file
diff --git a/content/api/HPE_Redfish_API_Portal.md b/content/api/HPE_Redfish_API_Portal.md
new file mode 100644
index 0000000000..fccc4f8035
--- /dev/null
+++ b/content/api/HPE_Redfish_API_Portal.md
@@ -0,0 +1,9 @@
+---
+ title: "HPE Redfish API Portal"
+ link: https://redfishdocsproto.redoc.ly/
+ description: Manage your datacenter with Redfish® today!
+ priority: 2
+ image: '/img/api/redfish.svg'
+ Featured: true
+---
+
\ No newline at end of file
diff --git a/content/api/Quote-to-Cash.md b/content/api/Quote-to-Cash.md
new file mode 100644
index 0000000000..841b10d78f
--- /dev/null
+++ b/content/api/Quote-to-Cash.md
@@ -0,0 +1,9 @@
+---
+ title: "Quote to Cash API Portal"
+ link: https://hpeqtc.redoc.ly/
+ description: Integrate with HPE’s Quote to Cash Application for Subscriptions and Traditional Sales!
+ priority: 3
+ image: '/img/api/quote_to_cache.svg'
+ Featured: true
+---
+
\ No newline at end of file
diff --git a/gatsby-config.js b/gatsby-config.js
index 7e517723ac..1ef953478e 100644
--- a/gatsby-config.js
+++ b/gatsby-config.js
@@ -170,6 +170,13 @@ module.exports = {
name: 'contribute',
},
},
+ {
+ resolve: 'gatsby-source-filesystem',
+ options: {
+ path: `${__dirname}/content/api`,
+ name: 'api',
+ },
+ },
{
resolve: 'gatsby-transformer-remark',
options: {
diff --git a/src/components/Header/index.js b/src/components/Header/index.js
index 91ee4e996a..6c905170e5 100644
--- a/src/components/Header/index.js
+++ b/src/components/Header/index.js
@@ -21,6 +21,7 @@ const TextAlignLeft = styled(Box)`
function Header() {
const size = useContext(ResponsiveContext);
const navLinks = [
+ ,
,
+
+
+
+
+ Application programming interfaces simplify development by
+ facilitating communications between apps. Use our APIs to develop
+ innovative solutions that run on HPE Platforms.
+
+
+
+
+
+ {projects.map(({ node }) => (
+
+ ))}
+
+
+
+ );
+}
+ApiPage.propTypes = {
+ data: PropTypes.shape({
+ allMarkdownRemark: PropTypes.shape({
+ edges: PropTypes.arrayOf(
+ PropTypes.shape({
+ node: PropTypes.shape({
+ id: PropTypes.string,
+ frontmatter: PropTypes.shape({
+ title: PropTypes.string.isRequired,
+ category: PropTypes.string.isRequired,
+ description: PropTypes.string.isRequired,
+ image: PropTypes.string,
+ priority: PropTypes.number,
+ }).isRequired,
+ excerpt: PropTypes.string.isRequired,
+ fields: PropTypes.shape({
+ sourceInstanceName: PropTypes.string.isRequired,
+ }),
+ }).isRequired,
+ }).isRequired,
+ ).isRequired,
+ }).isRequired,
+ }).isRequired,
+};
+export default ApiPage;
+export const pageQuery = graphql`
+ query {
+ allMarkdownRemark(
+ filter: { fields: { sourceInstanceName: { eq: "api" } } }
+ sort: { order: ASC, fields: [frontmatter___priority] }
+ ) {
+ edges {
+ node {
+ id
+ rawMarkdownBody
+ fields {
+ slug
+ sourceInstanceName
+ }
+ excerpt
+ frontmatter {
+ title
+ description
+ link
+ image
+ priority
+ }
+ }
+ }
+ }
+ }
+`;
diff --git a/static/admin/config.yml b/static/admin/config.yml
index 047110c5ca..cbd207bf75 100644
--- a/static/admin/config.yml
+++ b/static/admin/config.yml
@@ -217,4 +217,21 @@ collections:
fields:
- {label: Template Type, name: templateType, widget: string }
- {label: Template Name, name: templateName, widget: string }
- - {label: Template Link, name: link, widget: string }
\ No newline at end of file
+ - {label: Template Link, name: link, widget: string }
+# API collection:
+ - name: 'api'
+ label: 'API'
+ folder: 'content/api'
+ extension: 'md'
+ create: true
+ publish: false
+ slug: '{{slug}}'
+ editor:
+ preview: true
+ fields:
+ - { label: 'Title', name: 'title', widget: 'string' }
+ - { label: 'Category', name: 'category', widget: 'string' }
+ - { label: 'Navigation Path', name: 'link', widget: 'string'}
+ - { label: 'Description', name: 'description', widget: 'string'}
+ - { label: 'Priority', name: 'priority', widget: 'number' }
+ - { label: 'Thumbnail Image', name: 'image', widget: 'image', media_folder: '/static/img', public_folder: '/img', hint: 'image to appear on opensource card' }
\ No newline at end of file
diff --git a/static/img/api/ourapis.svg b/static/img/api/ourapis.svg
new file mode 100644
index 0000000000..539e323cf5
--- /dev/null
+++ b/static/img/api/ourapis.svg
@@ -0,0 +1,26 @@
+
diff --git a/static/img/api/quote_to_cache.svg b/static/img/api/quote_to_cache.svg
new file mode 100644
index 0000000000..0e4d5946f5
--- /dev/null
+++ b/static/img/api/quote_to_cache.svg
@@ -0,0 +1,10 @@
+
diff --git a/static/img/api/redfish.svg b/static/img/api/redfish.svg
new file mode 100644
index 0000000000..64e806be2c
--- /dev/null
+++ b/static/img/api/redfish.svg
@@ -0,0 +1,9 @@
+