...
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
POST URL: /v2/projects POST BODY: { "metadata": { "name": "<name>", //must be unique "description": "<description>", "userData1": "<user data>", "descriptionuserData2": "<description><user data>" } } RETURN STATUS: 201 RETURN BODY: { "metadata": { "name": "Name of Project", //must be unique""<name>", "description": "<description>", "userData1": "<user data>", "descriptionuserData2": "<description><user data>" } } |
GET, DELETE
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
GET URL: /v2/projects/{project-name} RETURN STATUS: 200 RETURN BODY: { "metadata": { "name": "Name of Project<name>", //must be unique "description": "<description>", } } "userData1": "<user data>", "userData2": "<user data>" } } DELETE URL: /v2/projects/{project-name} RETURN STATUS: 204 |
...
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
URL: /v2/projects/{project-name}/composite-apps POST BODY: { "metadata": { "name": "<name>", //must be unique "description":"<description>", "descriptionuserData1":"<user "<description>data>", "userData2":"<user data>" }, "spec":{ "version": "<version of the composite app>" } } RETURN STATUS: 201 RETURN BODY: { "metadata": { "name": "<name>", //must be unique "description":"<description>", "descriptionuserData1":"<user "<description>data>", "userData2":"<user data>" }, "spec":{ "version": "<version of the composite app>" } } |
GET, DELETE
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
GET URL: /v2/projects/{project-name}/composite-apps/{composite-app-name}/{version} RETURN STATUS: 200 RETURN BODY: { "metadata": { "name": "<name>", //must be unique "description": "<description>", }, "versionuserData1":"<user data>"<version, of the composite app>" } "userData2":"<user data>" }, "spec":{ "version":"<version of the composite app>" } } DELETE URL: /v2/projects/{project-name}/composite-apps/{composite-app-name}/{version} RETURN STATUS: 204 |
...
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
URL: /v2/projects/{project-name}/composite-apps/{composite-app-name}/{version}/apps POST BODY: { "metadata": { "app-name": "<name>", // Name of the application "description":"<description>", "descriptionuserData1":"<user data>", "<description> "userData2":"<user data>" } } RETURN STATUS: 201 RETURN BODY: { "namemetadata":{ "name":"<name>", "description":"<description>", "<description>"} "userData1":"<user data>", "userData2":"<user data>" } } |
GET, DELETE
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
GET URL: /v2/projects/{project-name}/composite-apps/{composite-app-name}/{version}/apps/{app-name} RETURN STATUS: 200 RETURN BODY: { "metadata": { "app-name": "<name>", // Name of the application "description": "<description>", } } Multipart response containing the tar.gz of the Helm "userData1":"<user data>", "userData2":"<user data>" } } Multipart response containing the tar.gz of the Helm chart for the app DELETE URL: /v2/projects/{project-name}/composite-apps/{composite-app-name}/{version}/apps/{app-name} RETURN STATUS: 204 |
...
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
URL: /v2/projects/{project-name}/composite-apps/{composite-app-name}/{verison}/composite-profiles POST BODY: { "metadata": { "composite-profile-name": "test<name>", "description":"<description>", "<description>", "userData1":"<user data>", "userData2":"<user data>" } } RETURN STATUS: 201 RETURN BODY: { "metadata": { "composite-profile-name": "test<name>", "description": "<description>", } } "userData1":"<user data>", "userData2":"<user data>" } } |
GET, DELETE
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
GET URL: /v2/project/{project-name}/composite-apps/{composite-app-name}/{version}/composite-profiles/{composite-profile-name} RETURN STATUS: 200 RETURN BODY: { "metadata": { "composite-profile-name": "test<name>", "description":"<description>", "<description>", "userData1":"<user data>", "userData2":"<user data>" } } DELETE URL: /v2/projects/{project-name}/composite-apps/{app-name}/{app-version}/composite-profiles/{composite-profile-name} RETURN STATUS: 204 |
...
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
URL: /v2/projects/{project-name}/composite-apps/{composite-app-name}/{verison}/composite-profiles/{composite-profile-name}/profiles POST BODY: { "metadata": { "profile-name": "test<name>", "description": "<description>", }"userData1":"<user data>", "userData2":"<user data>" }, "spec":{ "app-name": "<name>", // Must match the name given in composite-apps/apps API } } Multipart request containg tar.gz of the profile RETURN STATUS: 201 RETURN BODY: { "metadata": { "profile-name": "test<name>", "description":"<description>", "<description>" "userData1":"<user data>", "userData2":"<user data>" }, "spec":{ "app-name": "<name>" }, // Must match the name given in composite-apps/apps API } } |
GET, DELETE
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
GET URL: /v2/project/{project-name}/composite-apps/{composite-app-name}/{version}/composite-profiles/{composite-profile-name}/profiles/{profile-name} RETURN STATUS: 200 RETURN BODY: { "metadata": { "profile-name": "test<name>", "description":"<description>", "<description>""userData1":"<user data>", "userData2":"<user data>" }, "spec":{ "app-name": "<name>" } Multipart response containing, // Must match the tar.gzname of the given in composite-apps/apps API } } Multipart response containing the tar.gz of the profile DELETE URL: /v2/project/{project-name}/composite-apps/{composite-app-name}/{version}/composite-profiles/{composite-profile-name}/profiles/{profile-name} RETURN STATUS: 204 |
...
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
URL: /v2/projects/{project-name}/composite-apps/{composite-app-name}/{version}/generic-placement-intents POST BODY: { "metadata": { "generic-placement-intent-name": "test<name>", "description":"<description>", "<description>" "userData1":"<user data>", "userData2":"<user data>" }, "spec":{ "logical-cloud": "logical-cloud-name" //name of logical cloud to use for instantiation. The DCM API will provide the list of clusters that are part of the logical-cloud } } RETURN STATUS: 201 RETURN BODY: { "metadata": { "generic-placement-intent-name": "test<name>", "description":"<description>", "<description>" "userData1":"<user data>", "userData2":"<user data>" }, "spec":{ "logical-cloud": "logical-cloud-name" //name of logical cloud to use for instantiation. The DCM API will provide the list of clusters that are part of the logical-cloud } } |
GET, DELETE
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
GET URL: /v2/projects/{project-name}/composite-apps/{composite-app-name}/{version}/generic-placement-intents/{intent-name} RETURN STATUS: 200 RETURN BODY: { "metadata": { "generic-placement-intent-name": "test<name>", "description": "<description>", } "userData1":"<user data>", "logical-clouduserData2":"<user "logical-cloud-name"data>" //name of logical cloud }, "spec":{ "logical-cloud": "logical-cloud-name" //name of logical cloud to use for instantiation. The DCM API will provide the list of clusters that are part of the logical-cloud } } DELETE URL: /v2/project/{project-name}/rb/{rb-name}/{rb-version}/generic-placement-intent/{intent-name} RETURN STATUS: 204 |
...
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
URL: /v2/project/{project-name}/composite-apps/{composite-app-name}/{version}/generic-placement-intent/{intent-name}/app-intents POST BODY: { "metadata": { "intent-name": "test<name>", "description":"<description>", "<description>" "userData1":"<user data>", "userData2":"<user data>" }, "spec":{ "app-name":"name", "intent": { "allOf":[ { "cluster-name":"edge1" }, { "cluster-name":"edge2" }, { "anyOf":[ { "cluster-label-name":"east-us1" }, { "cluster-label-name":"east-us2" } ] } ] } } } RETURN STATUS: 201 RETURN BODY: { "metadata": { "intent-name": "test<name>", "description":"<description>", "<description>" "userData1":"<user data>", "userData2":"<user data>" }, "spec":{ "app-name": "name", "intent": { "allOf":[ { "cluster-name":"edge1" }, { "cluster-name":"edge2" }, { "anyOf":[ { "cluster-label-name":"east-us1" }, { "cluster-label-name":"east-us2" } ] } ] } } } |
GET, DELETE
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
GET URL: /v2/project/{project-name}/composite-apps/{composite-app-name}/{version}/generic-placement-intent/{intent-name}/app-intents RETURN STATUS: 200 RETURN BODY: { "applications":[ { "name":"app1", "anyOf":[ { "cluster-name":"edge1" }, { "cluster-name":"edge2" } ] }, { "name":"app2", "allOf":[ { "cluster-name":"edge1" }, { "cluster-name":"edge2" } ] }, { "name":"app3", "allOf":[ { "cluster-name":"edge1" }, { "cluster-name":"edge2" }, { "anyOf":[ { "cluster-label-name":"east-us1" }, { "cluster-label-name":"east-us2" } ] } ] } ] } GET URL: /v2/project/{project-name}/composite-apps/{composite-app-name}/{version}/generic-placement-intent/{intent-name}/app-intents/{intent-name} RETURN STATUS: 200 RETURN BODY: { "metadata": { "intent-name": "test<name>", "description":"<description>", "<description>" "userData1":"<user data>", "userData2":"<user data>" }, "spec":{ "app-name": "name", "intent": { "allOf":[ { "cluster-name":"edge1" }, { "cluster-name":"edge2" }, { "anyOf":[ { "cluster-label-name":"east-us1" }, { "cluster-label-name":"east-us2" } ] } ] } } } } DELETE URL: /v2/project/{project-name}/composite-apps/{composite-app-name}/{version}/generic-placement-intent/{intent-name}/apps-intents/{intent-name} RETURN STATUS: 204 |
...
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
URL: /v2/projects/{project-name}/composite-apps/{composite-app-name}/{version}/deployment-intent-groups POST BODY: { "metadata": { "deployment-intent-group-name": "test<name>", "description":"<description>", "<description>" "userData1":"<user data>", "userData2":"<user data>" }, "spec":{ "profile": "<profile-name>", "version": "<version of the deployment>", // "override-values":[ overrides values from the helm charts and allows{ for instantiation time //variable overrides. "override-values": [ {"app-name":[{"imageRepository":"registry.hub.docker.com"}]}<name>", {"app-name "values":[{"imageRepository":"registry.hub.docker.com"}]} ] } RETURN STATUS: 201 RETURN BODY: { "metadata": { "deployment-intent-group-name": "test", "description "imageRepository": "<description>"registry.hub.docker.com" }, } "profile": "<profile-name>", "version": "<version of the deployment>"] //override-values overrides values from the helm charts and allows for instantiation time }, { //variable overrides. "override-values": [ {"app-name":[{"imageRepository":"registry.hub.docker.com"}]}, <name>", {"app-namevalues":[ { "imageRepository":"registry.hub.docker.com" } ] } ] } |
GET, DELETE
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
GET URL: /v2/projects/{project-name}/composite-apps/{composite-app-name}/{version}/deployment-intent-groups/{deployment-intent-group-name} } } RETURN STATUS: 200201 RETURN BODY: { "metadata": { "deployment-intent-group-name":"<name>", "test "description":"<description>", "descriptionuserData1":"<user data>", "userData2":"<user data>" }, "spec":{ "profile":"<profile-name>", "version":"<version of the deployment>", "override-values":[ { "app-name":"<name>", "values":[ { "imageRepository":"registry.hub.docker.com" } ] }, { "app-name":"<name>", "values":[ { "imageRepository":"registry.hub.docker.com" } ] } ] } } |
GET, DELETE
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
GET URL: /v2/projects/{project-name}/composite-apps/{composite-app-name}/{version}/deployment-intent-groups/{deployment-intent-group-name} RETURN STATUS: 200 RETURN BODY: { "metadata":{ "name":"<name>", "description":"<description>", "userData1":"<user data>", "userData2":"<user data>" }, "spec":{ "profile":"<profile-name>", "version":"<version of the deployment>", "override-values":[ { "app-name":"<name>", "values":[ { "imageRepository":"registry.hub.docker.com" } ] }, { "app-name":"<name>", }, "profilevalues": "<profile-name>",[ "version": "<version of the deployment>" //override-values overrides values from the helm{ charts and allows for instantiation time //variable overrides. "override-values": [ {"app-name":[{"imageRepository":"registry.hub.docker.com"}]}, com" } ] {"app-name":[{"imageRepository":"registry.hub.docker.com"}] } ] } } DELETE URL: /v2/projects/{project-name}/composite-apps/{composite-app-name}/{version}/deployment-intent-groups/{deployment-intent-group-name} RETURN STATUS: 204 |
...
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
URL: v2/projects/{project-name}/composite-apps/{composite-app-name}/{version}/deployment-intent-groups/{deployment-intent-group-name}/intents POST BODY: { "metadata":{ { "intent-name":"<name>", "test", "description":"<description>", "userData1":"<user data>", "descriptionuserData2":"<user "<description>data>" }, "intentspec":{ "intent":{ "generic":"xyz-generic-placement-intent" } } } RETURN STATUS: 201 RETURN BODY: { "metadata":{ { "intent-name":"<name>", "description"test:"<description>", "userData1":"<user data>", "descriptionuserData2":"<user "<description>data>" }, "intentspec":{ "intent":{ "generic":"xyz-generic-placement-intent" } } } |
GET, DELETE
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
GET URL: /v2/projects/{project-name}/composite-apps/{composite-app-name}/{version}/deployment-intent-groups/{deployment-intent-group-name}/intents/{intent-name} { "metadata":{ { "intent-name":"<name>", "description":"test<description>", "userData1":"<user data>", "descriptionuserData2":"<user "<description>data>" }, "intentspec":{ "intent":{ "generic":"xyz-generic-placement-intent" } } } GET URL: /v2/projects/{project-name}/composite-apps/{composite-app-name}/{version}/deployment-intent-groups/{deployment-intent-group-name}/intents RETURN STATUS: 200 RETURN BODY: { "intent":[ { "generic-placement-intent":"generic-placement-intent-name" }, { "hpa-placement-intent":"hpa-placement-intent-name" }, { "traffic-intent":"traffic-intent-name" } ] } DELETE URL: /v2/projects/{project-name}/composite-apps/{composite-app-name}/{version}/deployment-intent-groups/{deployment-intent-group-name}/intents/{intent-name} RETURN STATUS: 204 |
...
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
URL: /v2/cluster-providers POST BODY: { "metadata": { “provider-name” "name": “<name>”, // Must be unique "<name>", "description":"<description>", "descriptionuserData1":"<user <description>data>", "userData2":"<user data>" } } RETURN STATUS: 201 RETURN BODY: { "metadata":{ "name":"<name>", "metadatadescription": { "<description>", “provider-name” : “<name>”, // Must be unique "userData1":"<user data>", "descriptionuserData2":"<user <description>data>" } } |
GET, DELETE
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
GET URL: /v2/cluster-providers/{provider-name} RETURN STATUS: 200 RETURN BODY: { "metadata": { “provider-name” "name": “<name>”, "<name>", "description":"<description>", "userData1":"<user "descriptiondata>", "userData2":"<user <description>data>" } } DELETE URL: /v2/cluster-providers/{provider-name} RETURN STATUS: 204 |
...
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
URL: /v2/cluster-providers/{provider-name}/clusters POST BODY: { "metadata": { “cluster-name” "name": “<name>”, // Must be unique "<name>", "description":"<description>", "descriptionuserData1":"<user <description>data>", "userData2":"<user data>" } } RETURN STATUS: 201 RETURN BODY: { "metadata":{ "name":"<name>", "metadatadescription": { “cluster-name” : “<name>”, "<description>", "userData1":"<user data>", "descriptionuserData2":"<user <description>data>" } } |
GET, DELETE
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
GET URL: /v2/cluster-providers/{provider-name}/clusters/{cluster-name} RETURN STATUS: 200 RETURN BODY: { “cluster-name” : “<name>”, // Must be unique across "description": <description> } "metadata":{ "name":"<name>", "description":"<description>", "userData1":"<user data>", "userData2":"<user data>" } } DELETE URL: /v2/cluster-providers/{provider-name}/clusters/{cluster-name} RETURN STATUS: 204 |
...
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
URL: /v2/cluster-providers/{provider-name}/clusters/{cluster-name}/kv-pairs POST BODY: { "metadata": { “name” : “<name>”, // Must be unique "name":"<name>", "description":"<description>", "userData1":"<user data>", "descriptionuserData2":"<user <description>data>" }, "spec":{ "kv":[ { "key1":"val1" }, { "key2":"val2" } }] ]} } RETURN STATUS: 201 RETURN BODY: { "metadata": { “name” : “<name>”, // Must be unique "name":"<name>", "description":"<description>", "userData1":"<user data>", "descriptionuserData2":"<user <description>data>" }, "spec":{ "kv":[ { "key1":"val1" }, { "key2":"val2"val2" } }] ]} } |
GET, DELETE
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
GET URL: /v2/cluster-providers/{provider-name}/clusters/{cluster-name}/kv-pairs/<name> RETURN STATUS: 200 RETURN BODY: { "metadata": { “name” : “<name>”, // Must be unique "name":"<name>", "description":"<description>", "userData1":"<user data>", "descriptionuserData2":"<user <description>data>" }, "spec":{ "kv":[ { "key1":"val1" }, { "key2":"val2" } ] } } DELETE URL: /v2/cluster-providers/{provider-name}/clusters/{cluster-name}/kv-pairs/<name> RETURN STATUS: 204 |
...