Jump to: navigation, search

API Special Interest Group/Current Design/Service Catalog

The format of the service catalog needs to be fixed. The de facto standard is currently DevStack. We need to define a proper format for the service catalog.

Examples From The Wild

TryStack (RDO)

{
    "access": {
        "metadata": {
            "is_admin": 0,
            "roles": [
                "9fe2ff9ee4384b1894a90878d3e92bab"
            ]
        },
        "serviceCatalog": [
            {
                "endpoints": [
                    {
                        "adminURL": "http://10.100.0.222:8774/v2/f9828a18c6484624b571e85728780ba8",
                        "id": "0eb78b6d3f644438aea327d9c57b7b5a",
                        "internalURL": "http://10.100.0.222:8774/v2/f9828a18c6484624b571e85728780ba8",
                        "publicURL": "http://8.21.28.222:8774/v2/f9828a18c6484624b571e85728780ba8",
                        "region": "RegionOne"
                    }
                ],
                "endpoints_links": [],
                "name": "nova",
                "type": "compute"
            },
            {
                "endpoints": [
                    {
                        "adminURL": "http://10.100.0.222:9696/",
                        "id": "3f4b6015a2f9481481ca03dace8acf32",
                        "internalURL": "http://10.100.0.222:9696/",
                        "publicURL": "http://8.21.28.222:9696/",
                        "region": "RegionOne"
                    }
                ],
                "endpoints_links": [],
                "name": "neutron",
                "type": "network"
            },
            {
                "endpoints": [
                    {
                        "adminURL": "http://10.100.0.222:8776/v2/f9828a18c6484624b571e85728780ba8",
                        "id": "16f6416588f64946bdcdf4a431a8f252",
                        "internalURL": "http://10.100.0.222:8776/v2/f9828a18c6484624b571e85728780ba8",
                        "publicURL": "http://8.21.28.222:8776/v2/f9828a18c6484624b571e85728780ba8",
                        "region": "RegionOne"
                    }
                ],
                "endpoints_links": [],
                "name": "cinder_v2",
                "type": "volumev2"
            },
            {
                "endpoints": [
                    {
                        "adminURL": "http://10.100.0.222:8779/v1.0/f9828a18c6484624b571e85728780ba8",
                        "id": "be48765ae31e425cb06036b1ebab694a",
                        "internalURL": "http://10.100.0.222:8779/v1.0/f9828a18c6484624b571e85728780ba8",
                        "publicURL": "http://8.21.28.222:8779/v1.0/f9828a18c6484624b571e85728780ba8",
                        "region": "RegionOne"
                    }
                ],
                "endpoints_links": [],
                "name": "trove",
                "type": "database"
            },
            {
                "endpoints": [
                    {
                        "adminURL": "http://10.100.0.222:9292",
                        "id": "1adfcb5414304f3596fb81edb2dfb514",
                        "internalURL": "http://10.100.0.222:9292",
                        "publicURL": "http://8.21.28.222:9292",
                        "region": "RegionOne"
                    }
                ],
                "endpoints_links": [],
                "name": "glance",
                "type": "image"
            },
            {
                "endpoints": [
                    {
                        "adminURL": "http://10.100.0.222:8774/v3",
                        "id": "14187733d29845e5993d9b4e0f2df4fc",
                        "internalURL": "http://10.100.0.222:8774/v3",
                        "publicURL": "http://8.21.28.222:8774/v3",
                        "region": "RegionOne"
                    }
                ],
                "endpoints_links": [],
                "name": "novav3",
                "type": "computev3"
            },
            {
                "endpoints": [
                    {
                        "adminURL": "http://10.100.0.222:8777",
                        "id": "350f3b91d73f4b3ab8a061c94ac31fbb",
                        "internalURL": "http://10.100.0.222:8777",
                        "publicURL": "http://8.21.28.222:8777",
                        "region": "RegionOne"
                    }
                ],
                "endpoints_links": [],
                "name": "ceilometer",
                "type": "metering"
            },
            {
                "endpoints": [
                    {
                        "adminURL": "http://10.100.0.222:8000/v1/",
                        "id": "2198b0d32a604e75a5cc1e13276a813d",
                        "internalURL": "http://10.100.0.222:8000/v1/",
                        "publicURL": "http://8.21.28.222:8000/v1/",
                        "region": "RegionOne"
                    }
                ],
                "endpoints_links": [],
                "name": "heat-cfn",
                "type": "cloudformation"
            },
            {
                "endpoints": [
                    {
                        "adminURL": "http://10.100.0.222:8776/v1/f9828a18c6484624b571e85728780ba8",
                        "id": "7c193c4683d849ca8e8db493722a4d8c",
                        "internalURL": "http://10.100.0.222:8776/v1/f9828a18c6484624b571e85728780ba8",
                        "publicURL": "http://8.21.28.222:8776/v1/f9828a18c6484624b571e85728780ba8",
                        "region": "RegionOne"
                    }
                ],
                "endpoints_links": [],
                "name": "cinder",
                "type": "volume"
            },
            {
                "endpoints": [
                    {
                        "adminURL": "http://10.100.0.222:8773/services/Admin",
                        "id": "11fac8254be74d7d906110f0069e5748",
                        "internalURL": "http://10.100.0.222:8773/services/Cloud",
                        "publicURL": "http://8.21.28.222:8773/services/Cloud",
                        "region": "RegionOne"
                    }
                ],
                "endpoints_links": [],
                "name": "nova_ec2",
                "type": "ec2"
            },
            {
                "endpoints": [
                    {
                        "adminURL": "http://10.100.0.222:8004/v1/f9828a18c6484624b571e85728780ba8",
                        "id": "38fa4f9afce34d4ca0f5e0f90fd758dd",
                        "internalURL": "http://10.100.0.222:8004/v1/f9828a18c6484624b571e85728780ba8",
                        "publicURL": "http://8.21.28.222:8004/v1/f9828a18c6484624b571e85728780ba8",
                        "region": "RegionOne"
                    }
                ],
                "endpoints_links": [],
                "name": "heat",
                "type": "orchestration"
            },
            {
                "endpoints": [
                    {
                        "adminURL": "http://10.100.0.222:35357/v2.0",
                        "id": "256cdf78ecb04051bf0f57ec11070222",
                        "internalURL": "http://10.100.0.222:5000/v2.0",
                        "publicURL": "http://8.21.28.222:5000/v2.0",
                        "region": "RegionOne"
                    }
                ],
                "endpoints_links": [],
                "name": "keystone",
                "type": "identity"
            }
        ],
        "token": {
            "audit_ids": [
                "gsjrNoqFSQeuLUo0QeJprQ"
            ],
            "expires": "2014-12-15T15:09:29Z",
            "id": "MIITAQYJKoZIhvcNAQcCoIIS8jCCEu4CAQExCTAHBgUrDgMCGjCCEVcGCSqGSIb3DQEHAaCCEUgEghFEeyJhY2Nlc3MiOiB7InRva2VuIjogeyJpc3N1ZWRfYXQiOiAiMjAxNC0xMi0xNVQxNDowOToyOS43OTQ1MjciLCAiZXhwaXJlcyI6ICIyMDE0LTEyLTE1VDE1OjA5OjI5WiIsICJpZCI6ICJwbGFjZWhvbGRlciIsICJ0ZW5hbnQiOiB7ImRlc2NyaXB0aW9uIjogIkF1dG8gY3JlYXRlZCBhY2NvdW50IiwgImVuYWJsZWQiOiB0cnVlLCAiaWQiOiAiZjk4MjhhMThjNjQ4NDYyNGI1NzFlODU3Mjg3ODBiYTgiLCAibmFtZSI6ICJmYWNlYm9vazUyMTExMzI2NyJ9LCAiYXVkaXRfaWRzIjogWyJnc2pyTm9xRlNRZXVMVW8wUWVKcHJRIl19LCAic2VydmljZUNhdGFsb2ciOiBbeyJlbmRwb2ludHMiOiBbeyJhZG1pblVSTCI6ICJodHRwOi8vMTAuMTAwLjAuMjIyOjg3NzQvdjIvZjk4MjhhMThjNjQ4NDYyNGI1NzFlODU3Mjg3ODBiYTgiLCAicmVnaW9uIjogIlJlZ2lvbk9uZSIsICJpbnRlcm5hbFVSTCI6ICJodHRwOi8vMTAuMTAwLjAuMjIyOjg3NzQvdjIvZjk4MjhhMThjNjQ4NDYyNGI1NzFlODU3Mjg3ODBiYTgiLCAiaWQiOiAiMGViNzhiNmQzZjY0NDQzOGFlYTMyN2Q5YzU3YjdiNWEiLCAicHVibGljVVJMIjogImh0dHA6Ly84LjIxLjI4LjIyMjo4Nzc0L3YyL2Y5ODI4YTE4YzY0ODQ2MjRiNTcxZTg1NzI4NzgwYmE4In1dLCAiZW5kcG9pbnRzX2xpbmtzIjogW10sICJ0eXBlIjogImNvbXB1dGUiLCAibmFtZSI6ICJub3ZhIn0sIHsiZW5kcG9pbnRzIjogW3siYWRtaW5VUkwiOiAiaHR0cDovLzEwLjEwMC4wLjIyMjo5Njk2LyIsICJyZWdpb24iOiAiUmVnaW9uT25lIiwgImludGVybmFsVVJMIjogImh0dHA6Ly8xMC4xMDAuMC4yMjI6OTY5Ni8iLCAiaWQiOiAiM2Y0YjYwMTVhMmY5NDgxNDgxY2EwM2RhY2U4YWNmMzIiLCAicHVibGljVVJMIjogImh0dHA6Ly84LjIxLjI4LjIyMjo5Njk2LyJ9XSwgImVuZHBvaW50c19saW5rcyI6IFtdLCAidHlwZSI6ICJuZXR3b3JrIiwgIm5hbWUiOiAibmV1dHJvbiJ9LCB7ImVuZHBvaW50cyI6IFt7ImFkbWluVVJMIjogImh0dHA6Ly8xMC4xMDAuMC4yMjI6ODc3Ni92Mi9mOTgyOGExOGM2NDg0NjI0YjU3MWU4NTcyODc4MGJhOCIsICJyZWdpb24iOiAiUmVnaW9uT25lIiwgImludGVybmFsVVJMIjogImh0dHA6Ly8xMC4xMDAuMC4yMjI6ODc3Ni92Mi9mOTgyOGExOGM2NDg0NjI0YjU3MWU4NTcyODc4MGJhOCIsICJpZCI6ICIxNmY2NDE2NTg4ZjY0OTQ2YmRjZGY0YTQzMWE4ZjI1MiIsICJwdWJsaWNVUkwiOiAiaHR0cDovLzguMjEuMjguMjIyOjg3NzYvdjIvZjk4MjhhMThjNjQ4NDYyNGI1NzFlODU3Mjg3ODBiYTgifV0sICJlbmRwb2ludHNfbGlua3MiOiBbXSwgInR5cGUiOiAidm9sdW1ldjIiLCAibmFtZSI6ICJjaW5kZXJfdjIifSwgeyJlbmRwb2ludHMiOiBbeyJhZG1pblVSTCI6ICJodHRwOi8vMTAuMTAwLjAuMjIyOjg3NzkvdjEuMC9mOTgyOGExOGM2NDg0NjI0YjU3MWU4NTcyODc4MGJhOCIsICJyZWdpb24iOiAiUmVnaW9uT25lIiwgImludGVybmFsVVJMIjogImh0dHA6Ly8xMC4xMDAuMC4yMjI6ODc3OS92MS4wL2Y5ODI4YTE4YzY0ODQ2MjRiNTcxZTg1NzI4NzgwYmE4IiwgImlkIjogImJlNDg3NjVhZTMxZTQyNWNiMDYwMzZiMWViYWI2OTRhIiwgInB1YmxpY1VSTCI6ICJodHRwOi8vOC4yMS4yOC4yMjI6ODc3OS92MS4wL2Y5ODI4YTE4YzY0ODQ2MjRiNTcxZTg1NzI4NzgwYmE4In1dLCAiZW5kcG9pbnRzX2xpbmtzIjogW10sICJ0eXBlIjogImRhdGFiYXNlIiwgIm5hbWUiOiAidHJvdmUifSwgeyJlbmRwb2ludHMiOiBbeyJhZG1pblVSTCI6ICJodHRwOi8vMTAuMTAwLjAuMjIyOjkyOTIiLCAicmVnaW9uIjogIlJlZ2lvbk9uZSIsICJpbnRlcm5hbFVSTCI6ICJodHRwOi8vMTAuMTAwLjAuMjIyOjkyOTIiLCAiaWQiOiAiMWFkZmNiNTQxNDMwNGYzNTk2ZmI4MWVkYjJkZmI1MTQiLCAicHVibGljVVJMIjogImh0dHA6Ly84LjIxLjI4LjIyMjo5MjkyIn1dLCAiZW5kcG9pbnRzX2xpbmtzIjogW10sICJ0eXBlIjogImltYWdlIiwgIm5hbWUiOiAiZ2xhbmNlIn0sIHsiZW5kcG9pbnRzIjogW3siYWRtaW5VUkwiOiAiaHR0cDovLzEwLjEwMC4wLjIyMjo4Nzc0L3YzIiwgInJlZ2lvbiI6ICJSZWdpb25PbmUiLCAiaW50ZXJuYWxVUkwiOiAiaHR0cDovLzEwLjEwMC4wLjIyMjo4Nzc0L3YzIiwgImlkIjogIjE0MTg3NzMzZDI5ODQ1ZTU5OTNkOWI0ZTBmMmRmNGZjIiwgInB1YmxpY1VSTCI6ICJodHRwOi8vOC4yMS4yOC4yMjI6ODc3NC92MyJ9XSwgImVuZHBvaW50c19saW5rcyI6IFtdLCAidHlwZSI6ICJjb21wdXRldjMiLCAibmFtZSI6ICJub3ZhdjMifSwgeyJlbmRwb2ludHMiOiBbeyJhZG1pblVSTCI6ICJodHRwOi8vMTAuMTAwLjAuMjIyOjg3NzciLCAicmVnaW9uIjogIlJlZ2lvbk9uZSIsICJpbnRlcm5hbFVSTCI6ICJodHRwOi8vMTAuMTAwLjAuMjIyOjg3NzciLCAiaWQiOiAiMzUwZjNiOTFkNzNmNGIzYWI4YTA2MWM5NGFjMzFmYmIiLCAicHVibGljVVJMIjogImh0dHA6Ly84LjIxLjI4LjIyMjo4Nzc3In1dLCAiZW5kcG9pbnRzX2xpbmtzIjogW10sICJ0eXBlIjogIm1ldGVyaW5nIiwgIm5hbWUiOiAiY2VpbG9tZXRlciJ9LCB7ImVuZHBvaW50cyI6IFt7ImFkbWluVVJMIjogImh0dHA6Ly8xMC4xMDAuMC4yMjI6ODAwMC92MS8iLCAicmVnaW9uIjogIlJlZ2lvbk9uZSIsICJpbnRlcm5hbFVSTCI6ICJodHRwOi8vMTAuMTAwLjAuMjIyOjgwMDAvdjEvIiwgImlkIjogIjIxOThiMGQzMmE2MDRlNzVhNWNjMWUxMzI3NmE4MTNkIiwgInB1YmxpY1VSTCI6ICJodHRwOi8vOC4yMS4yOC4yMjI6ODAwMC92MS8ifV0sICJlbmRwb2ludHNfbGlua3MiOiBbXSwgInR5cGUiOiAiY2xvdWRmb3JtYXRpb24iLCAibmFtZSI6ICJoZWF0LWNmbiJ9LCB7ImVuZHBvaW50cyI6IFt7ImFkbWluVVJMIjogImh0dHA6Ly8xMC4xMDAuMC4yMjI6ODc3Ni92MS9mOTgyOGExOGM2NDg0NjI0YjU3MWU4NTcyODc4MGJhOCIsICJyZWdpb24iOiAiUmVnaW9uT25lIiwgImludGVybmFsVVJMIjogImh0dHA6Ly8xMC4xMDAuMC4yMjI6ODc3Ni92MS9mOTgyOGExOGM2NDg0NjI0YjU3MWU4NTcyODc4MGJhOCIsICJpZCI6ICI3YzE5M2M0NjgzZDg0OWNhOGU4ZGI0OTM3MjJhNGQ4YyIsICJwdWJsaWNVUkwiOiAiaHR0cDovLzguMjEuMjguMjIyOjg3NzYvdjEvZjk4MjhhMThjNjQ4NDYyNGI1NzFlODU3Mjg3ODBiYTgifV0sICJlbmRwb2ludHNfbGlua3MiOiBbXSwgInR5cGUiOiAidm9sdW1lIiwgIm5hbWUiOiAiY2luZGVyIn0sIHsiZW5kcG9pbnRzIjogW3siYWRtaW5VUkwiOiAiaHR0cDovLzEwLjEwMC4wLjIyMjo4NzczL3NlcnZpY2VzL0FkbWluIiwgInJlZ2lvbiI6ICJSZWdpb25PbmUiLCAiaW50ZXJuYWxVUkwiOiAiaHR0cDovLzEwLjEwMC4wLjIyMjo4NzczL3NlcnZpY2VzL0Nsb3VkIiwgImlkIjogIjExZmFjODI1NGJlNzRkN2Q5MDYxMTBmMDA2OWU1NzQ4IiwgInB1YmxpY1VSTCI6ICJodHRwOi8vOC4yMS4yOC4yMjI6ODc3My9zZXJ2aWNlcy9DbG91ZCJ9XSwgImVuZHBvaW50c19saW5rcyI6IFtdLCAidHlwZSI6ICJlYzIiLCAibmFtZSI6ICJub3ZhX2VjMiJ9LCB7ImVuZHBvaW50cyI6IFt7ImFkbWluVVJMIjogImh0dHA6Ly8xMC4xMDAuMC4yMjI6ODAwNC92MS9mOTgyOGExOGM2NDg0NjI0YjU3MWU4NTcyODc4MGJhOCIsICJyZWdpb24iOiAiUmVnaW9uT25lIiwgImludGVybmFsVVJMIjogImh0dHA6Ly8xMC4xMDAuMC4yMjI6ODAwNC92MS9mOTgyOGExOGM2NDg0NjI0YjU3MWU4NTcyODc4MGJhOCIsICJpZCI6ICIzOGZhNGY5YWZjZTM0ZDRjYTBmNWUwZjkwZmQ3NThkZCIsICJwdWJsaWNVUkwiOiAiaHR0cDovLzguMjEuMjguMjIyOjgwMDQvdjEvZjk4MjhhMThjNjQ4NDYyNGI1NzFlODU3Mjg3ODBiYTgifV0sICJlbmRwb2ludHNfbGlua3MiOiBbXSwgInR5cGUiOiAib3JjaGVzdHJhdGlvbiIsICJuYW1lIjogImhlYXQifSwgeyJlbmRwb2ludHMiOiBbeyJhZG1pblVSTCI6ICJodHRwOi8vMTAuMTAwLjAuMjIyOjM1MzU3L3YyLjAiLCAicmVnaW9uIjogIlJlZ2lvbk9uZSIsICJpbnRlcm5hbFVSTCI6ICJodHRwOi8vMTAuMTAwLjAuMjIyOjUwMDAvdjIuMCIsICJpZCI6ICIyNTZjZGY3OGVjYjA0MDUxYmYwZjU3ZWMxMTA3MDIyMiIsICJwdWJsaWNVUkwiOiAiaHR0cDovLzguMjEuMjguMjIyOjUwMDAvdjIuMCJ9XSwgImVuZHBvaW50c19saW5rcyI6IFtdLCAidHlwZSI6ICJpZGVudGl0eSIsICJuYW1lIjogImtleXN0b25lIn1dLCAidXNlciI6IHsidXNlcm5hbWUiOiAiZmFjZWJvb2s1MjExMTMyNjciLCAicm9sZXNfbGlua3MiOiBbXSwgImlkIjogImVlMGRmOTRlMzlmOTQyOGRhOTM1NjU5YTc4OGViNDJmIiwgInJvbGVzIjogW3sibmFtZSI6ICJfbWVtYmVyXyJ9XSwgIm5hbWUiOiAiZmFjZWJvb2s1MjExMTMyNjcifSwgIm1ldGFkYXRhIjogeyJpc19hZG1pbiI6IDAsICJyb2xlcyI6IFsiOWZlMmZmOWVlNDM4NGIxODk0YTkwODc4ZDNlOTJiYWIiXX19fTGCAYEwggF9AgEBMFwwVzELMAkGA1UEBhMCVVMxDjAMBgNVBAgMBVVuc2V0MQ4wDAYDVQQHDAVVbnNldDEOMAwGA1UECgwFVW5zZXQxGDAWBgNVBAMMD3d3dy5leGFtcGxlLmNvbQIBATAHBgUrDgMCGjANBgkqhkiG9w0BAQEFAASCAQAj4owcR9kU2xYAPZ4CqLWm+bCIz6qTofTeRT5Hi0Z-QPOki-HZgHkKRdhSmYVkWwZvty74O7iNN-hG+oiUbf6Z9fcUdr-RSAasVZGqnDma5BLPbTQQzE2JQqYv2Ejgl+EQJnPVhnfxL4LN+NU6xDvYHjKEjV4mNTVwj4mzLLJFFNqBx3VziFc6aeih7psS06cg92WJwg-6Uct-o0hhXcfDrikWaCtA3K4SxAyx3AJxjlDtL3PLRFBs3GhflNubnBcA5ra7w-qDhKU8B1Q8v9eFywKMCZBQ56Wmkt+aBIcpkHBfdf4UuJqJr9T0lg15DCxNJ+gPJRMZex53aQ02P7lw",
            "issued_at": "2014-12-15T14:09:29.794527",
            "tenant": {
                "description": "Auto created account",
                "enabled": true,
                "id": "f9828a18c6484624b571e85728780ba8",
                "name": "facebook521113267"
            }
        },
        "user": {
            "id": "ee0df94e39f9428da935659a788eb42f",
            "name": "facebook521113267",
            "roles": [
                {
                    "name": "_member_"
                }
            ],
            "roles_links": [],
            "username": "facebook521113267"
        }
    }
}

Rackspace Public Cloud

{
  "access": {
    "user": {
      "RAX-AUTH:defaultRegion": "DFW",
      "name": "useranme",
      "roles": [
        {
          "name": "checkmate",
          "description": "Checkmate Access role",
          "id": "10000150"
        },
        {
          "name": "object-store:default",
          "description": "A Role that allows a user access to keystone Service methods",
          "id": "5",
          "tenantId": "MossoCloudFS_ID"
        },
        {
          "name": "compute:default",
          "description": "A Role that allows a user access to keystone Service methods",
          "id": "6",
          "tenantId": "TENANT_ID"
        },
        {
          "name": "identity:user-admin",
          "description": "User Admin Role.",
          "id": "3"
        }
      ],
      "id": "USER_ID"
    },
    "serviceCatalog": [
      {
        "type": "rax:object-cdn",
        "endpoints": [
          {
            "publicURL": "https://cdn5.clouddrive.com/v1/MossoCloudFS_ID",
            "tenantId": "MossoCloudFS_ID",
            "region": "IAD"
          },
          {
            "publicURL": "https://cdn4.clouddrive.com/v1/MossoCloudFS_ID",
            "tenantId": "MossoCloudFS_ID",
            "region": "SYD"
          },
          {
            "publicURL": "https://cdn1.clouddrive.com/v1/MossoCloudFS_ID",
            "tenantId": "MossoCloudFS_ID",
            "region": "DFW"
          },
          {
            "publicURL": "https://cdn6.clouddrive.com/v1/MossoCloudFS_ID",
            "tenantId": "MossoCloudFS_ID",
            "region": "HKG"
          },
          {
            "publicURL": "https://cdn2.clouddrive.com/v1/MossoCloudFS_ID",
            "tenantId": "MossoCloudFS_ID",
            "region": "ORD"
          }
        ],
        "name": "cloudFilesCDN"
      },
      {
        "type": "object-store",
        "endpoints": [
          {
            "internalURL": "https://snet-storage101.iad3.clouddrive.com/v1/MossoCloudFS_ID",
            "publicURL": "https://storage101.iad3.clouddrive.com/v1/MossoCloudFS_ID",
            "tenantId": "MossoCloudFS_ID",
            "region": "IAD"
          },
          {
            "internalURL": "https://snet-storage101.syd2.clouddrive.com/v1/MossoCloudFS_ID",
            "publicURL": "https://storage101.syd2.clouddrive.com/v1/MossoCloudFS_ID",
            "tenantId": "MossoCloudFS_ID",
            "region": "SYD"
          },
          {
            "internalURL": "https://snet-storage101.dfw1.clouddrive.com/v1/MossoCloudFS_ID",
            "publicURL": "https://storage101.dfw1.clouddrive.com/v1/MossoCloudFS_ID",
            "tenantId": "MossoCloudFS_ID",
            "region": "DFW"
          },
          {
            "internalURL": "https://snet-storage101.hkg1.clouddrive.com/v1/MossoCloudFS_ID",
            "publicURL": "https://storage101.hkg1.clouddrive.com/v1/MossoCloudFS_ID",
            "tenantId": "MossoCloudFS_ID",
            "region": "HKG"
          },
          {
            "internalURL": "https://snet-storage101.ord1.clouddrive.com/v1/MossoCloudFS_ID",
            "publicURL": "https://storage101.ord1.clouddrive.com/v1/MossoCloudFS_ID",
            "tenantId": "MossoCloudFS_ID",
            "region": "ORD"
          }
        ],
        "name": "cloudFiles"
      },
      {
        "type": "volume",
        "endpoints": [
          {
            "publicURL": "https://syd.blockstorage.api.rackspacecloud.com/v1/TENANT_ID",
            "tenantId": "TENANT_ID",
            "region": "SYD"
          },
          {
            "publicURL": "https://dfw.blockstorage.api.rackspacecloud.com/v1/TENANT_ID",
            "tenantId": "TENANT_ID",
            "region": "DFW"
          },
          {
            "publicURL": "https://ord.blockstorage.api.rackspacecloud.com/v1/TENANT_ID",
            "tenantId": "TENANT_ID",
            "region": "ORD"
          },
          {
            "publicURL": "https://iad.blockstorage.api.rackspacecloud.com/v1/TENANT_ID",
            "tenantId": "TENANT_ID",
            "region": "IAD"
          },
          {
            "publicURL": "https://hkg.blockstorage.api.rackspacecloud.com/v1/TENANT_ID",
            "tenantId": "TENANT_ID",
            "region": "HKG"
          }
        ],
        "name": "cloudBlockStorage"
      },
      {
        "type": "image",
        "endpoints": [
          {
            "publicURL": "https://iad.images.api.rackspacecloud.com/v2",
            "tenantId": "TENANT_ID",
            "region": "IAD"
          },
          {
            "publicURL": "https://ord.images.api.rackspacecloud.com/v2",
            "tenantId": "TENANT_ID",
            "region": "ORD"
          },
          {
            "publicURL": "https://hkg.images.api.rackspacecloud.com/v2",
            "tenantId": "TENANT_ID",
            "region": "HKG"
          },
          {
            "publicURL": "https://dfw.images.api.rackspacecloud.com/v2",
            "tenantId": "TENANT_ID",
            "region": "DFW"
          },
          {
            "publicURL": "https://syd.images.api.rackspacecloud.com/v2",
            "tenantId": "TENANT_ID",
            "region": "SYD"
          }
        ],
        "name": "cloudImages"
      },
      {
        "type": "rax:queues",
        "endpoints": [
          {
            "internalURL": "https://snet-hkg.queues.api.rackspacecloud.com/v1/TENANT_ID",
            "publicURL": "https://hkg.queues.api.rackspacecloud.com/v1/TENANT_ID",
            "tenantId": "TENANT_ID",
            "region": "HKG"
          },
          {
            "internalURL": "https://snet-ord.queues.api.rackspacecloud.com/v1/TENANT_ID",
            "publicURL": "https://ord.queues.api.rackspacecloud.com/v1/TENANT_ID",
            "tenantId": "TENANT_ID",
            "region": "ORD"
          },
          {
            "internalURL": "https://snet-syd.queues.api.rackspacecloud.com/v1/TENANT_ID",
            "publicURL": "https://syd.queues.api.rackspacecloud.com/v1/TENANT_ID",
            "tenantId": "TENANT_ID",
            "region": "SYD"
          },
          {
            "internalURL": "https://snet-dfw.queues.api.rackspacecloud.com/v1/TENANT_ID",
            "publicURL": "https://dfw.queues.api.rackspacecloud.com/v1/TENANT_ID",
            "tenantId": "TENANT_ID",
            "region": "DFW"
          },
          {
            "internalURL": "https://snet-iad.queues.api.rackspacecloud.com/v1/TENANT_ID",
            "publicURL": "https://iad.queues.api.rackspacecloud.com/v1/TENANT_ID",
            "tenantId": "TENANT_ID",
            "region": "IAD"
          }
        ],
        "name": "cloudQueues"
      },
      {
        "type": "rax:bigdata",
        "endpoints": [
          {
            "publicURL": "https://iad.bigdata.api.rackspacecloud.com/v1.0/TENANT_ID",
            "tenantId": "TENANT_ID",
            "region": "IAD"
          },
          {
            "publicURL": "https://dfw.bigdata.api.rackspacecloud.com/v1.0/TENANT_ID",
            "tenantId": "TENANT_ID",
            "region": "DFW"
          },
          {
            "publicURL": "https://ord.bigdata.api.rackspacecloud.com/v1.0/TENANT_ID",
            "tenantId": "TENANT_ID",
            "region": "ORD"
          }
        ],
        "name": "cloudBigData"
      },
      {
        "type": "orchestration",
        "endpoints": [
          {
            "publicURL": "https://hkg.orchestration.api.rackspacecloud.com/v1/TENANT_ID",
            "tenantId": "TENANT_ID",
            "region": "HKG"
          },
          {
            "publicURL": "https://dfw.orchestration.api.rackspacecloud.com/v1/TENANT_ID",
            "tenantId": "TENANT_ID",
            "region": "DFW"
          },
          {
            "publicURL": "https://ord.orchestration.api.rackspacecloud.com/v1/TENANT_ID",
            "tenantId": "TENANT_ID",
            "region": "ORD"
          },
          {
            "publicURL": "https://iad.orchestration.api.rackspacecloud.com/v1/TENANT_ID",
            "tenantId": "TENANT_ID",
            "region": "IAD"
          },
          {
            "publicURL": "https://syd.orchestration.api.rackspacecloud.com/v1/TENANT_ID",
            "tenantId": "TENANT_ID",
            "region": "SYD"
          }
        ],
        "name": "cloudOrchestration"
      },
      {
        "type": "compute",
        "endpoints": [
          {
            "versionId": "2",
            "versionList": "https://syd.servers.api.rackspacecloud.com/",
            "versionInfo": "https://syd.servers.api.rackspacecloud.com/v2",
            "publicURL": "https://syd.servers.api.rackspacecloud.com/v2/TENANT_ID",
            "tenantId": "TENANT_ID",
            "region": "SYD"
          },
          {
            "versionId": "2",
            "versionList": "https://dfw.servers.api.rackspacecloud.com/",
            "versionInfo": "https://dfw.servers.api.rackspacecloud.com/v2",
            "publicURL": "https://dfw.servers.api.rackspacecloud.com/v2/TENANT_ID",
            "tenantId": "TENANT_ID",
            "region": "DFW"
          },
          {
            "versionId": "2",
            "versionList": "https://iad.servers.api.rackspacecloud.com/",
            "versionInfo": "https://iad.servers.api.rackspacecloud.com/v2",
            "publicURL": "https://iad.servers.api.rackspacecloud.com/v2/TENANT_ID",
            "tenantId": "TENANT_ID",
            "region": "IAD"
          },
          {
            "versionId": "2",
            "versionList": "https://hkg.servers.api.rackspacecloud.com/",
            "versionInfo": "https://hkg.servers.api.rackspacecloud.com/v2",
            "publicURL": "https://hkg.servers.api.rackspacecloud.com/v2/TENANT_ID",
            "tenantId": "TENANT_ID",
            "region": "HKG"
          },
          {
            "versionId": "2",
            "versionList": "https://ord.servers.api.rackspacecloud.com/",
            "versionInfo": "https://ord.servers.api.rackspacecloud.com/v2",
            "publicURL": "https://ord.servers.api.rackspacecloud.com/v2/TENANT_ID",
            "tenantId": "TENANT_ID",
            "region": "ORD"
          }
        ],
        "name": "cloudServersOpenStack"
      },
      {
        "type": "rax:autoscale",
        "endpoints": [
          {
            "publicURL": "https://ord.autoscale.api.rackspacecloud.com/v1.0/TENANT_ID",
            "tenantId": "TENANT_ID",
            "region": "ORD"
          },
          {
            "publicURL": "https://dfw.autoscale.api.rackspacecloud.com/v1.0/TENANT_ID",
            "tenantId": "TENANT_ID",
            "region": "DFW"
          },
          {
            "publicURL": "https://hkg.autoscale.api.rackspacecloud.com/v1.0/TENANT_ID",
            "tenantId": "TENANT_ID",
            "region": "HKG"
          },
          {
            "publicURL": "https://iad.autoscale.api.rackspacecloud.com/v1.0/TENANT_ID",
            "tenantId": "TENANT_ID",
            "region": "IAD"
          },
          {
            "publicURL": "https://syd.autoscale.api.rackspacecloud.com/v1.0/TENANT_ID",
            "tenantId": "TENANT_ID",
            "region": "SYD"
          }
        ],
        "name": "autoscale"
      },
      {
        "type": "rax:database",
        "endpoints": [
          {
            "publicURL": "https://syd.databases.api.rackspacecloud.com/v1.0/TENANT_ID",
            "tenantId": "TENANT_ID",
            "region": "SYD"
          },
          {
            "publicURL": "https://dfw.databases.api.rackspacecloud.com/v1.0/TENANT_ID",
            "tenantId": "TENANT_ID",
            "region": "DFW"
          },
          {
            "publicURL": "https://ord.databases.api.rackspacecloud.com/v1.0/TENANT_ID",
            "tenantId": "TENANT_ID",
            "region": "ORD"
          },
          {
            "publicURL": "https://iad.databases.api.rackspacecloud.com/v1.0/TENANT_ID",
            "tenantId": "TENANT_ID",
            "region": "IAD"
          },
          {
            "publicURL": "https://hkg.databases.api.rackspacecloud.com/v1.0/TENANT_ID",
            "tenantId": "TENANT_ID",
            "region": "HKG"
          }
        ],
        "name": "cloudDatabases"
      },
      {
        "type": "rax:backup",
        "endpoints": [
          {
            "publicURL": "https://iad.backup.api.rackspacecloud.com/v1.0/TENANT_ID",
            "tenantId": "TENANT_ID",
            "region": "IAD"
          },
          {
            "publicURL": "https://hkg.backup.api.rackspacecloud.com/v1.0/TENANT_ID",
            "tenantId": "TENANT_ID",
            "region": "HKG"
          },
          {
            "publicURL": "https://syd.backup.api.rackspacecloud.com/v1.0/TENANT_ID",
            "tenantId": "TENANT_ID",
            "region": "SYD"
          },
          {
            "publicURL": "https://dfw.backup.api.rackspacecloud.com/v1.0/TENANT_ID",
            "tenantId": "TENANT_ID",
            "region": "DFW"
          },
          {
            "publicURL": "https://ord.backup.api.rackspacecloud.com/v1.0/TENANT_ID",
            "tenantId": "TENANT_ID",
            "region": "ORD"
          }
        ],
        "name": "cloudBackup"
      },
      {
        "type": "network",
        "endpoints": [
          {
            "publicURL": "https://iad.networks.api.rackspacecloud.com/v2.0",
            "tenantId": "TENANT_ID",
            "region": "IAD"
          },
          {
            "publicURL": "https://lon.networks.api.rackspacecloud.com/v2.0",
            "tenantId": "TENANT_ID",
            "region": "LON"
          },
          {
            "publicURL": "https://ord.networks.api.rackspacecloud.com/v2.0",
            "tenantId": "TENANT_ID",
            "region": "ORD"
          },
          {
            "publicURL": "https://syd.networks.api.rackspacecloud.com/v2.0",
            "tenantId": "TENANT_ID",
            "region": "SYD"
          },
          {
            "publicURL": "https://dfw.networks.api.rackspacecloud.com/v2.0",
            "tenantId": "TENANT_ID",
            "region": "DFW"
          },
          {
            "publicURL": "https://hkg.networks.api.rackspacecloud.com/v2.0",
            "tenantId": "TENANT_ID",
            "region": "HKG"
          }
        ],
        "name": "cloudNetworks"
      },
      {
        "type": "rax:cloudmetrics",
        "endpoints": [
          {
            "publicURL": "https://global.metrics.api.rackspacecloud.com/v2.0/TENANT_ID",
            "tenantId": "TENANT_ID",
            "region": "IAD"
          }
        ],
        "name": "cloudMetrics"
      },
      {
        "type": "rax:load-balancer",
        "endpoints": [
          {
            "publicURL": "https://syd.loadbalancers.api.rackspacecloud.com/v1.0/TENANT_ID",
            "tenantId": "TENANT_ID",
            "region": "SYD"
          },
          {
            "publicURL": "https://iad.loadbalancers.api.rackspacecloud.com/v1.0/TENANT_ID",
            "tenantId": "TENANT_ID",
            "region": "IAD"
          },
          {
            "publicURL": "https://ord.loadbalancers.api.rackspacecloud.com/v1.0/TENANT_ID",
            "tenantId": "TENANT_ID",
            "region": "ORD"
          },
          {
            "publicURL": "https://hkg.loadbalancers.api.rackspacecloud.com/v1.0/TENANT_ID",
            "tenantId": "TENANT_ID",
            "region": "HKG"
          },
          {
            "publicURL": "https://dfw.loadbalancers.api.rackspacecloud.com/v1.0/TENANT_ID",
            "tenantId": "TENANT_ID",
            "region": "DFW"
          }
        ],
        "name": "cloudLoadBalancers"
      },
      {
        "type": "rax:feeds",
        "endpoints": [
          {
            "internalURL": "https://atom.prod.hkg1.us.ci.rackspace.net/TENANT_ID",
            "publicURL": "https://hkg.feeds.api.rackspacecloud.com/TENANT_ID",
            "tenantId": "TENANT_ID",
            "region": "HKG"
          },
          {
            "internalURL": "https://atom.prod.syd2.us.ci.rackspace.net/TENANT_ID",
            "publicURL": "https://syd.feeds.api.rackspacecloud.com/TENANT_ID",
            "tenantId": "TENANT_ID",
            "region": "SYD"
          },
          {
            "internalURL": "https://atom.prod.iad3.us.ci.rackspace.net/TENANT_ID",
            "publicURL": "https://iad.feeds.api.rackspacecloud.com/TENANT_ID",
            "tenantId": "TENANT_ID",
            "region": "IAD"
          },
          {
            "internalURL": "https://atom.prod.dfw1.us.ci.rackspace.net/TENANT_ID",
            "publicURL": "https://dfw.feeds.api.rackspacecloud.com/TENANT_ID",
            "tenantId": "TENANT_ID",
            "region": "DFW"
          },
          {
            "internalURL": "https://atom.prod.ord1.us.ci.rackspace.net/TENANT_ID",
            "publicURL": "https://ord.feeds.api.rackspacecloud.com/TENANT_ID",
            "tenantId": "TENANT_ID",
            "region": "ORD"
          }
        ],
        "name": "cloudFeeds"
      },
      {
        "type": "rax:monitor",
        "endpoints": [
          {
            "publicURL": "https://monitoring.api.rackspacecloud.com/v1.0/TENANT_ID",
            "tenantId": "TENANT_ID"
          }
        ],
        "name": "cloudMonitoring"
      },
      {
        "type": "rax:dns",
        "endpoints": [
          {
            "publicURL": "https://dns.api.rackspacecloud.com/v1.0/TENANT_ID",
            "tenantId": "TENANT_ID"
          }
        ],
        "name": "cloudDNS"
      },
      {
        "type": "compute",
        "endpoints": [
          {
            "versionId": "1.0",
            "versionList": "https://servers.api.rackspacecloud.com/",
            "versionInfo": "https://servers.api.rackspacecloud.com/v1.0",
            "publicURL": "https://servers.api.rackspacecloud.com/v1.0/TENANT_ID",
            "tenantId": "TENANT_ID"
          }
        ],
        "name": "cloudServers"
      }
    ],
    "token": {
      "RAX-AUTH:authenticatedBy": [
        "PASSWORD"
      ],
      "tenant": {
        "name": "TENANT_ID",
        "id": "TENANT_ID"
      },
      "expires": "2014-12-11T03:26:57.420Z",
      "id": "TOKEN_ID"
    }
  }
}

HP Public Cloud

Rackspace Private Cloud

{
    "access": {
        "metadata": {
            "is_admin": 0,
            "roles": [
                "9fe2ff9ee4384b1894a90878d3e92bab"
            ]
        },
        "serviceCatalog": [
            {
                "endpoints": [
                    {
                        "adminURL": "http://10.1.41.11:8774/v2/97a0d8ffb4e94b638911cb727dea0303",
                        "id": "1019ab0c4a75458d8eb0943f8f7c351e",
                        "internalURL": "http://10.1.41.11:8774/v2/97a0d8ffb4e94b638911cb727dea0303",
                        "publicURL": "http://162.242.149.143:8774/v2/97a0d8ffb4e94b638911cb727dea0303",
                        "region": "RegionOne"
                    }
                ],
                "endpoints_links": [],
                "name": "nova",
                "type": "compute"
            },
            {
                "endpoints": [
                    {
                        "adminURL": "http://10.1.41.11:9696",
                        "id": "46bdbe77bcf5422f9e5a7b2f1c33049c",
                        "internalURL": "http://10.1.41.11:9696",
                        "publicURL": "http://162.242.149.143:9696",
                        "region": "RegionOne"
                    }
                ],
                "endpoints_links": [],
                "name": "neutron",
                "type": "network"
            },
            {
                "endpoints": [
                    {
                        "adminURL": "http://10.1.41.11:8776/v2/97a0d8ffb4e94b638911cb727dea0303",
                        "id": "0358456c01e4448a94b00743f188b5ac",
                        "internalURL": "http://10.1.41.11:8776/v2/97a0d8ffb4e94b638911cb727dea0303",
                        "publicURL": "http://162.242.149.143:8776/v2/97a0d8ffb4e94b638911cb727dea0303",
                        "region": "RegionOne"
                    }
                ],
                "endpoints_links": [],
                "name": "cinderv2",
                "type": "volumev2"
            },
            {
                "endpoints": [
                    {
                        "adminURL": "http://10.1.41.11:8774/v3",
                        "id": "87e6e460ee6045359b8ae7d9d2e7e425",
                        "internalURL": "http://10.1.41.11:8774/v3",
                        "publicURL": "http://162.242.149.143:8774/v3",
                        "region": "RegionOne"
                    }
                ],
                "endpoints_links": [],
                "name": "novav3",
                "type": "computev3"
            },
            {
                "endpoints": [
                    {
                        "adminURL": "http://10.1.41.11:3333",
                        "id": "8770c350bd954b9f9e47b4938ec2c573",
                        "internalURL": "http://10.1.41.11:3333",
                        "publicURL": "http://162.242.149.143:3333",
                        "region": "RegionOne"
                    }
                ],
                "endpoints_links": [],
                "name": "s3",
                "type": "s3"
            },
            {
                "endpoints": [
                    {
                        "adminURL": "http://10.1.41.11:9292",
                        "id": "56697a043f064fe386d1f99aaa0bb1f9",
                        "internalURL": "http://10.1.41.11:9292",
                        "publicURL": "http://162.242.149.143:9292",
                        "region": "RegionOne"
                    }
                ],
                "endpoints_links": [],
                "name": "glance",
                "type": "image"
            },
            {
                "endpoints": [
                    {
                        "adminURL": "http://10.1.41.11:8000/v1",
                        "id": "037dcc32e8d14c1a9b6939581abd50a9",
                        "internalURL": "http://10.1.41.11:8000/v1",
                        "publicURL": "http://162.242.149.143:8000/v1",
                        "region": "RegionOne"
                    }
                ],
                "endpoints_links": [],
                "name": "heat",
                "type": "cloudformation"
            },
            {
                "endpoints": [
                    {
                        "adminURL": "http://10.1.41.11:8776/v1/97a0d8ffb4e94b638911cb727dea0303",
                        "id": "0aea040756854ad7a547855cd11d2e46",
                        "internalURL": "http://10.1.41.11:8776/v1/97a0d8ffb4e94b638911cb727dea0303",
                        "publicURL": "http://162.242.149.143:8776/v1/97a0d8ffb4e94b638911cb727dea0303",
                        "region": "RegionOne"
                    }
                ],
                "endpoints_links": [],
                "name": "cinder",
                "type": "volume"
            },
            {
                "endpoints": [
                    {
                        "adminURL": "http://10.1.41.11:8773/services/Admin",
                        "id": "7c8d97d9dfb4482b9088d6d10b519576",
                        "internalURL": "http://10.1.41.11:8773/services/Cloud",
                        "publicURL": "http://162.242.149.143:8773/services/Cloud",
                        "region": "RegionOne"
                    }
                ],
                "endpoints_links": [],
                "name": "ec2",
                "type": "ec2"
            },
            {
                "endpoints": [
                    {
                        "adminURL": "http://10.1.41.11:8004/v1/97a0d8ffb4e94b638911cb727dea0303",
                        "id": "1a7ad7dde34e4e1cba5f3e2b7e19e28a",
                        "internalURL": "http://10.1.41.11:8004/v1/97a0d8ffb4e94b638911cb727dea0303",
                        "publicURL": "http://162.242.149.143:8004/v1/97a0d8ffb4e94b638911cb727dea0303",
                        "region": "RegionOne"
                    }
                ],
                "endpoints_links": [],
                "name": "heat",
                "type": "orchestration"
            },
            {
                "endpoints": [
                    {
                        "adminURL": "http://10.1.41.11:8888/v1/AUTH_97a0d8ffb4e94b638911cb727dea0303",
                        "id": "5269c09f81f5464b80fd01731d57e724",
                        "internalURL": "http://10.1.41.11:8888/v1/AUTH_97a0d8ffb4e94b638911cb727dea0303",
                        "publicURL": "http://162.242.149.143:8888/v1/AUTH_97a0d8ffb4e94b638911cb727dea0303",
                        "region": "RegionOne"
                    }
                ],
                "endpoints_links": [],
                "name": "swift",
                "type": "object-store"
            },
            {
                "endpoints": [
                    {
                        "adminURL": "http://10.1.41.11:35357/v2.0",
                        "id": "459d21a471b24d259510a738deb0a0f2",
                        "internalURL": "http://10.1.41.11:5000/v2.0",
                        "publicURL": "http://162.242.149.143:5000/v2.0",
                        "region": "RegionOne"
                    }
                ],
                "endpoints_links": [],
                "name": "keystone",
                "type": "identity"
            }
        ],
        "token": {
            "audit_ids": [
                "nJF232NbSCeBov8WNIa87Q"
            ],
            "expires": "2014-12-13T03:17:27Z",
            "id": "7cdc3ec5ca654763a5f16aebbe99f92e",
            "issued_at": "2014-12-12T15:17:27.378106",
            "tenant": {
                "description": "Demo Tenant",
                "enabled": true,
                "id": "97a0d8ffb4e94b638911cb727dea0303",
                "name": "demo"
            }
        },
        "user": {
            "id": "bdd2df09640e47888f819057c8e80f04",
            "name": "demo",
            "roles": [
                {
                    "name": "_member_"
                }
            ],
            "roles_links": [],
            "username": "demo"
        }
    }
}

DevStack

RDO

See TryStack above.

Mirantis

Outstanding Questions

  • How are entry points currently done for all the services?
  • How are versions currently done for all the services?
  • Why are Name and Type both needed?
  • Which of Name and Type are guaranteed to be unique?
  • Does there need to be a top-level "access" property?