# API Reference Commandline is the easiest way to experience Dragonfly's ability. API extension will bring more further experience of Dragonfly. Commandline is just one kind of combination usage of API, if you wish to hack or take more advantages of Dragonfly, please see `API Reference`. Like command line document, all API docs are auto generated via source code. ## Dragonfly Manager ## Overview Dragonfly Manager Server ### Version information *Version* : 1.0.0 ### License information *License* : Apache 2.0 *Terms of service* : null ### URI scheme *Host* : localhost:8080 *BasePath* : /api/v1 ## Paths ### Create CDNCluster ``` POST /api/v1/cdn-clusters ``` #### Description create by json config #### Parameters |Type|Name|Description|Schema| |---|---|---|---| |**Body**|**CDNCluster**
*required*|DNCluster|[types.CreateCDNClusterRequest](#types-createcdnclusterrequest)| #### Responses |HTTP Code|Description|Schema| |---|---|---| |**200**|OK|[model.CDNCluster](#model-cdncluster)| |**400**||No Content| |**404**||No Content| |**500**||No Content| #### Consumes * `application/json` #### Produces * `application/json` #### Tags * CDNCluster ### Get CDNClusters ``` GET /api/v1/cdn-clusters ``` #### Description Get CDNClusters #### Parameters |Type|Name|Description|Schema|Default| |---|---|---|---|---| |**Query**|**page**
*required*|current page|integer|`0`| |**Query**|**per_page**
*required*|return max item count, default 10, max 50|integer|`10`| #### Responses |HTTP Code|Description|Schema| |---|---|---| |**200**|OK|< [model.CDNCluster](#model-cdncluster) > array| |**400**||No Content| |**404**||No Content| |**500**||No Content| #### Consumes * `application/json` #### Produces * `application/json` #### Tags * CDNCluster ### Get CDNCluster ``` GET /api/v1/cdn-clusters/{id} ``` #### Description Get CDNCluster by id #### Parameters |Type|Name|Description|Schema| |---|---|---|---| |**Path**|**id**
*required*|id|string| #### Responses |HTTP Code|Description|Schema| |---|---|---| |**200**|OK|[model.CDNCluster](#model-cdncluster)| |**400**||No Content| |**404**||No Content| |**500**||No Content| #### Consumes * `application/json` #### Produces * `application/json` #### Tags * CDNCluster ### Destroy CDNCluster ``` DELETE /api/v1/cdn-clusters/{id} ``` #### Description Destroy by id #### Parameters |Type|Name|Description|Schema| |---|---|---|---| |**Path**|**id**
*required*|id|string| #### Responses |HTTP Code|Schema| |---|---| |**200**|No Content| |**400**|No Content| |**404**|No Content| |**500**|No Content| #### Consumes * `application/json` #### Produces * `application/json` #### Tags * CDNCluster ### Update CDNCluster ``` PATCH /api/v1/cdn-clusters/{id} ``` #### Description Update by json config #### Parameters |Type|Name|Description|Schema| |---|---|---|---| |**Path**|**id**
*required*|id|string| |**Body**|**CDNCluster**
*required*|CDNCluster|[types.UpdateCDNClusterRequest](#types-updatecdnclusterrequest)| #### Responses |HTTP Code|Description|Schema| |---|---|---| |**200**|OK|[model.CDNCluster](#model-cdncluster)| |**400**||No Content| |**404**||No Content| |**500**||No Content| #### Consumes * `application/json` #### Produces * `application/json` #### Tags * CDNCluster ### Add Instance to CDNCluster ``` PUT /api/v1/cdn-clusters/{id}/cdns/{cdn_id} ``` #### Description Add CDN to CDNCluster #### Parameters |Type|Name|Description|Schema| |---|---|---|---| |**Path**|**cdn_id**
*required*|cdn id|string| |**Path**|**id**
*required*|id|string| #### Responses |HTTP Code|Schema| |---|---| |**200**|No Content| |**400**|No Content| |**404**|No Content| |**500**|No Content| #### Consumes * `application/json` #### Produces * `application/json` #### Tags * CDNCluster ### Add SchedulerCluster to CDNCluster ``` PUT /api/v1/cdn-clusters/{id}/scheduler-clusters/{scheduler_cluster_id} ``` #### Description Add SchedulerCluster to CDNCluster #### Parameters |Type|Name|Description|Schema| |---|---|---|---| |**Path**|**id**
*required*|id|string| |**Path**|**scheduler_cluster_id**
*required*|scheduler cluster id|string| #### Responses |HTTP Code|Schema| |---|---| |**200**|No Content| |**400**|No Content| |**404**|No Content| |**500**|No Content| #### Consumes * `application/json` #### Produces * `application/json` #### Tags * CDNCluster ### Create CDN ``` POST /api/v1/cdns ``` #### Description create by json config #### Parameters |Type|Name|Description|Schema| |---|---|---|---| |**Body**|**CDN**
*required*|CDN|[types.CreateCDNRequest](#types-createcdnrequest)| #### Responses |HTTP Code|Description|Schema| |---|---|---| |**200**|OK|[model.CDN](#model-cdn)| |**400**||No Content| |**404**||No Content| |**500**||No Content| #### Consumes * `application/json` #### Produces * `application/json` #### Tags * CDN ### Get CDNs ``` GET /api/v1/cdns ``` #### Description Get CDNs #### Parameters |Type|Name|Description|Schema|Default| |---|---|---|---|---| |**Query**|**page**
*required*|current page|integer|`0`| |**Query**|**per_page**
*required*|return max item count, default 10, max 50|integer|`10`| #### Responses |HTTP Code|Description|Schema| |---|---|---| |**200**|OK|< [model.CDN](#model-cdn) > array| |**400**||No Content| |**404**||No Content| |**500**||No Content| #### Consumes * `application/json` #### Produces * `application/json` #### Tags * CDN ### Get CDN ``` GET /api/v1/cdns/{id} ``` #### Description Get CDN by id #### Parameters |Type|Name|Description|Schema| |---|---|---|---| |**Path**|**id**
*required*|id|string| #### Responses |HTTP Code|Description|Schema| |---|---|---| |**200**|OK|[model.CDN](#model-cdn)| |**400**||No Content| |**404**||No Content| |**500**||No Content| #### Consumes * `application/json` #### Produces * `application/json` #### Tags * CDN ### Destroy CDN ``` DELETE /api/v1/cdns/{id} ``` #### Description Destroy by id #### Parameters |Type|Name|Description|Schema| |---|---|---|---| |**Path**|**id**
*required*|id|string| #### Responses |HTTP Code|Schema| |---|---| |**200**|No Content| |**400**|No Content| |**404**|No Content| |**500**|No Content| #### Consumes * `application/json` #### Produces * `application/json` #### Tags * CDN ### Update CDN ``` PATCH /api/v1/cdns/{id} ``` #### Description Update by json config #### Parameters |Type|Name|Description|Schema| |---|---|---|---| |**Path**|**id**
*required*|id|string| |**Body**|**CDN**
*required*|CDN|[types.UpdateCDNRequest](#types-updatecdnrequest)| #### Responses |HTTP Code|Description|Schema| |---|---|---| |**200**|OK|[model.CDN](#model-cdn)| |**400**||No Content| |**404**||No Content| |**500**||No Content| #### Consumes * `application/json` #### Produces * `application/json` #### Tags * CDN ### Create Config ``` POST /api/v1/configs ``` #### Description create by json config #### Parameters |Type|Name|Description|Schema| |---|---|---|---| |**Body**|**Config**
*required*|Config|[types.CreateConfigRequest](#types-createconfigrequest)| #### Responses |HTTP Code|Description|Schema| |---|---|---| |**200**|OK|[model.Config](#model-config)| |**400**||No Content| |**404**||No Content| |**500**||No Content| #### Consumes * `application/json` #### Produces * `application/json` #### Tags * Config ### Get Configs ``` GET /api/v1/configs ``` #### Description Get Configs #### Parameters |Type|Name|Description|Schema|Default| |---|---|---|---|---| |**Query**|**page**
*required*|current page|integer|`0`| |**Query**|**per_page**
*required*|return max item count, default 10, max 50|integer|`10`| #### Responses |HTTP Code|Description|Schema| |---|---|---| |**200**|OK|< [model.Config](#model-config) > array| |**400**||No Content| |**404**||No Content| |**500**||No Content| #### Consumes * `application/json` #### Produces * `application/json` #### Tags * Config ### Get Config ``` GET /api/v1/configs/{id} ``` #### Description Get Config by id #### Parameters |Type|Name|Description|Schema| |---|---|---|---| |**Path**|**id**
*required*|id|string| #### Responses |HTTP Code|Description|Schema| |---|---|---| |**200**|OK|[model.Config](#model-config)| |**400**||No Content| |**404**||No Content| |**500**||No Content| #### Consumes * `application/json` #### Produces * `application/json` #### Tags * Config ### Destroy Config ``` DELETE /api/v1/configs/{id} ``` #### Description Destroy by id #### Parameters |Type|Name|Description|Schema| |---|---|---|---| |**Path**|**id**
*required*|id|string| #### Responses |HTTP Code|Schema| |---|---| |**200**|No Content| |**400**|No Content| |**404**|No Content| |**500**|No Content| #### Consumes * `application/json` #### Produces * `application/json` #### Tags * Config ### Update Config ``` PATCH /api/v1/configs/{id} ``` #### Description Update by json config #### Parameters |Type|Name|Description|Schema| |---|---|---|---| |**Path**|**id**
*required*|id|string| |**Body**|**Config**
*required*|Config|[types.UpdateConfigRequest](#types-updateconfigrequest)| #### Responses |HTTP Code|Description|Schema| |---|---|---| |**200**|OK|[model.Config](#model-config)| |**400**||No Content| |**404**||No Content| |**500**||No Content| #### Consumes * `application/json` #### Produces * `application/json` #### Tags * Config ### Get Health ``` GET /api/v1/healthy ``` #### Description Get app health #### Responses |HTTP Code|Schema| |---|---| |**200**|No Content| |**400**|No Content| |**404**|No Content| |**500**|No Content| #### Consumes * `application/json` #### Produces * `application/json` #### Tags * Health ### Create Oauth ``` POST /api/v1/oauth ``` #### Description create by json config #### Parameters |Type|Name|Description|Schema| |---|---|---|---| |**Body**|**Oauth**
*required*|Oauth|[types.CreateOauthRequest](#types-createoauthrequest)| #### Responses |HTTP Code|Description|Schema| |---|---|---| |**200**|OK|[model.Oauth](#model-oauth)| |**400**||No Content| |**404**||No Content| |**500**||No Content| #### Consumes * `application/json` #### Produces * `application/json` #### Tags * Oauth ### Get Oauths ``` GET /api/v1/oauth ``` #### Description Get Oauths #### Parameters |Type|Name|Description|Schema|Default| |---|---|---|---|---| |**Query**|**page**
*required*|current page|integer|`0`| |**Query**|**per_page**
*required*|return max item count, default 10, max 50|integer|`10`| #### Responses |HTTP Code|Description|Schema| |---|---|---| |**200**|OK|< [model.Oauth](#model-oauth) > array| |**400**||No Content| |**404**||No Content| |**500**||No Content| #### Consumes * `application/json` #### Produces * `application/json` #### Tags * Oauth ### Get Oauth ``` GET /api/v1/oauth/{id} ``` #### Description Get Oauth by id #### Parameters |Type|Name|Description|Schema| |---|---|---|---| |**Path**|**id**
*required*|id|string| #### Responses |HTTP Code|Description|Schema| |---|---|---| |**200**|OK|[model.Oauth](#model-oauth)| |**400**||No Content| |**404**||No Content| |**500**||No Content| #### Consumes * `application/json` #### Produces * `application/json` #### Tags * Oauth ### Destroy Oauth ``` DELETE /api/v1/oauth/{id} ``` #### Description Destroy by id #### Parameters |Type|Name|Description|Schema| |---|---|---|---| |**Path**|**id**
*required*|id|string| #### Responses |HTTP Code|Schema| |---|---| |**200**|No Content| |**400**|No Content| |**404**|No Content| |**500**|No Content| #### Consumes * `application/json` #### Produces * `application/json` #### Tags * Oauth ### Update Oauth ``` PATCH /api/v1/oauth/{id} ``` #### Description Update by json config #### Parameters |Type|Name|Description|Schema| |---|---|---|---| |**Path**|**id**
*required*|id|string| |**Body**|**Oauth**
*required*|Oauth|[types.UpdateOauthRequest](#types-updateoauthrequest)| #### Responses |HTTP Code|Description|Schema| |---|---|---| |**200**|OK|[model.Oauth](#model-oauth)| |**400**||No Content| |**404**||No Content| |**500**||No Content| #### Consumes * `application/json` #### Produces * `application/json` #### Tags * Oauth ### Get Permissions ``` GET /api/v1/permissions ``` #### Description Get Permissions #### Responses |HTTP Code|Description|Schema| |---|---|---| |**200**|OK|< [rbac.Permission](#rbac-permission) > array| |**400**||No Content| |**500**||No Content| #### Produces * `application/json` #### Tags * Permission ### Create V1 Preheat ``` POST /api/v1/preheats ``` #### Description create by json config #### Parameters |Type|Name|Description|Schema| |---|---|---|---| |**Body**|**CDN**
*required*|Preheat|[types.CreateV1PreheatRequest](#types-createv1preheatrequest)| #### Responses |HTTP Code|Description|Schema| |---|---|---| |**200**|OK|[types.CreateV1PreheatResponse](#types-createv1preheatresponse)| |**400**||No Content| |**404**||No Content| |**500**||No Content| #### Consumes * `application/json` #### Produces * `application/json` #### Tags * Preheat ### Get V1 Preheat ``` GET /api/v1/preheats/{id} ``` #### Description Get Preheat by id #### Parameters |Type|Name|Description|Schema| |---|---|---|---| |**Path**|**id**
*required*|id|string| #### Responses |HTTP Code|Description|Schema| |---|---|---| |**200**|OK|[types.GetV1PreheatResponse](#types-getv1preheatresponse)| |**400**||No Content| |**404**||No Content| |**500**||No Content| #### Consumes * `application/json` #### Produces * `application/json` #### Tags * Preheat ### Create Role ``` POST /api/v1/roles ``` #### Description Create Role by json config #### Parameters |Type|Name|Description|Schema| |---|---|---|---| |**Body**|**Role**
*required*|Role|[types.CreateRoleRequest](#types-createrolerequest)| #### Responses |HTTP Code|Schema| |---|---| |**200**|No Content| |**400**|No Content| |**500**|No Content| #### Consumes * `application/json` #### Produces * `application/json` #### Tags * Role ### Get Roles ``` GET /api/v1/roles ``` #### Description Get roles #### Responses |HTTP Code|Schema| |---|---| |**200**|No Content| |**400**|No Content| |**500**|No Content| #### Consumes * `application/json` #### Produces * `application/json` #### Tags * Role ### Get Role ``` GET /api/v1/roles/:role ``` #### Description Get Role #### Parameters |Type|Name|Description|Schema| |---|---|---|---| |**Path**|**role**
*required*|role|string| #### Responses |HTTP Code|Schema| |---|---| |**200**|No Content| |**400**|No Content| |**500**|No Content| #### Consumes * `application/json` #### Produces * `application/json` #### Tags * Role ### Destroy Role ``` DELETE /api/v1/roles/:role ``` #### Description Destroy role by json config #### Parameters |Type|Name|Description|Schema| |---|---|---|---| |**Path**|**role**
*required*|role|string| #### Responses |HTTP Code|Schema| |---|---| |**200**|No Content| |**400**|No Content| |**500**|No Content| #### Consumes * `application/json` #### Produces * `application/json` #### Tags * Role ### Add Permission For Role ``` POST /api/v1/roles/:role/permissions ``` #### Description Add Permission by json config #### Parameters |Type|Name|Description|Schema| |---|---|---|---| |**Path**|**role**
*required*|role|string| |**Body**|**Permission**
*required*|Permission|[types.AddPermissionForRoleRequest](#types-addpermissionforrolerequest)| #### Responses |HTTP Code|Schema| |---|---| |**200**|No Content| |**400**|No Content| |**500**|No Content| #### Consumes * `application/json` #### Produces * `application/json` #### Tags * Role ### Update Role ``` DELETE /api/v1/roles/:role/permissions ``` #### Description Remove Role Permission by json config #### Parameters |Type|Name|Description|Schema| |---|---|---|---| |**Path**|**role**
*required*|role|string| |**Body**|**Permission**
*required*|Permission|[types.DeletePermissionForRoleRequest](#types-deletepermissionforrolerequest)| #### Responses |HTTP Code|Schema| |---|---| |**200**|No Content| |**400**|No Content| |**500**|No Content| #### Consumes * `application/json` #### Produces * `application/json` #### Tags * Role ### Create SchedulerCluster ``` POST /api/v1/scheduler-clusters ``` #### Description create by json config #### Parameters |Type|Name|Description|Schema| |---|---|---|---| |**Body**|**SchedulerCluster**
*required*|SchedulerCluster|[types.CreateSchedulerClusterRequest](#types-createschedulerclusterrequest)| #### Responses |HTTP Code|Description|Schema| |---|---|---| |**200**|OK|[model.SchedulerCluster](#model-schedulercluster)| |**400**||No Content| |**404**||No Content| |**500**||No Content| #### Consumes * `application/json` #### Produces * `application/json` #### Tags * SchedulerCluster ### Get SchedulerClusters ``` GET /api/v1/scheduler-clusters ``` #### Description Get SchedulerClusters #### Parameters |Type|Name|Description|Schema|Default| |---|---|---|---|---| |**Query**|**page**
*required*|current page|integer|`0`| |**Query**|**per_page**
*required*|return max item count, default 10, max 50|integer|`10`| #### Responses |HTTP Code|Description|Schema| |---|---|---| |**200**|OK|< [model.SchedulerCluster](#model-schedulercluster) > array| |**400**||No Content| |**404**||No Content| |**500**||No Content| #### Consumes * `application/json` #### Produces * `application/json` #### Tags * SchedulerCluster ### Get SchedulerCluster ``` GET /api/v1/scheduler-clusters/{id} ``` #### Description Get SchedulerCluster by id #### Parameters |Type|Name|Description|Schema| |---|---|---|---| |**Path**|**id**
*required*|id|string| #### Responses |HTTP Code|Description|Schema| |---|---|---| |**200**|OK|[model.SchedulerCluster](#model-schedulercluster)| |**400**||No Content| |**404**||No Content| |**500**||No Content| #### Consumes * `application/json` #### Produces * `application/json` #### Tags * SchedulerCluster ### Destroy SchedulerCluster ``` DELETE /api/v1/scheduler-clusters/{id} ``` #### Description Destroy by id #### Parameters |Type|Name|Description|Schema| |---|---|---|---| |**Path**|**id**
*required*|id|string| #### Responses |HTTP Code|Schema| |---|---| |**200**|No Content| |**400**|No Content| |**404**|No Content| |**500**|No Content| #### Consumes * `application/json` #### Produces * `application/json` #### Tags * SchedulerCluster ### Update SchedulerCluster ``` PATCH /api/v1/scheduler-clusters/{id} ``` #### Description Update by json config #### Parameters |Type|Name|Description|Schema| |---|---|---|---| |**Path**|**id**
*required*|id|string| |**Body**|**SchedulerCluster**
*required*|SchedulerCluster|[types.UpdateSchedulerClusterRequest](#types-updateschedulerclusterrequest)| #### Responses |HTTP Code|Description|Schema| |---|---|---| |**200**|OK|[model.SchedulerCluster](#model-schedulercluster)| |**400**||No Content| |**404**||No Content| |**500**||No Content| #### Consumes * `application/json` #### Produces * `application/json` #### Tags * SchedulerCluster ### Add Scheduler to schedulerCluster ``` PUT /api/v1/scheduler-clusters/{id}/schedulers/{scheduler_id} ``` #### Description Add Scheduler to schedulerCluster #### Parameters |Type|Name|Description|Schema| |---|---|---|---| |**Path**|**id**
*required*|id|string| |**Path**|**scheduler_id**
*required*|scheduler id|string| #### Responses |HTTP Code|Schema| |---|---| |**200**|No Content| |**400**|No Content| |**404**|No Content| |**500**|No Content| #### Consumes * `application/json` #### Produces * `application/json` #### Tags * SchedulerCluster ### Create Scheduler ``` POST /api/v1/schedulers ``` #### Description create by json config #### Parameters |Type|Name|Description|Schema| |---|---|---|---| |**Body**|**Scheduler**
*required*|Scheduler|[types.CreateSchedulerRequest](#types-createschedulerrequest)| #### Responses |HTTP Code|Description|Schema| |---|---|---| |**200**|OK|[model.Scheduler](#model-scheduler)| |**400**||No Content| |**404**||No Content| |**500**||No Content| #### Consumes * `application/json` #### Produces * `application/json` #### Tags * Scheduler ### Get Schedulers ``` GET /api/v1/schedulers ``` #### Description Get Schedulers #### Parameters |Type|Name|Description|Schema|Default| |---|---|---|---|---| |**Query**|**page**
*required*|current page|integer|`0`| |**Query**|**per_page**
*required*|return max item count, default 10, max 50|integer|`10`| #### Responses |HTTP Code|Description|Schema| |---|---|---| |**200**|OK|< [model.Scheduler](#model-scheduler) > array| |**400**||No Content| |**404**||No Content| |**500**||No Content| #### Consumes * `application/json` #### Produces * `application/json` #### Tags * Scheduler ### Get Scheduler ``` GET /api/v1/schedulers/{id} ``` #### Description Get Scheduler by id #### Parameters |Type|Name|Description|Schema| |---|---|---|---| |**Path**|**id**
*required*|id|string| #### Responses |HTTP Code|Description|Schema| |---|---|---| |**200**|OK|[model.Scheduler](#model-scheduler)| |**400**||No Content| |**404**||No Content| |**500**||No Content| #### Consumes * `application/json` #### Produces * `application/json` #### Tags * Scheduler ### Destroy Scheduler ``` DELETE /api/v1/schedulers/{id} ``` #### Description Destroy by id #### Parameters |Type|Name|Description|Schema| |---|---|---|---| |**Path**|**id**
*required*|id|string| #### Responses |HTTP Code|Schema| |---|---| |**200**|No Content| |**400**|No Content| |**404**|No Content| |**500**|No Content| #### Consumes * `application/json` #### Produces * `application/json` #### Tags * Scheduler ### Update Scheduler ``` PATCH /api/v1/schedulers/{id} ``` #### Description Update by json config #### Parameters |Type|Name|Description|Schema| |---|---|---|---| |**Path**|**id**
*required*|id|string| |**Body**|**Scheduler**
*required*|Scheduler|[types.UpdateSchedulerRequest](#types-updateschedulerrequest)| #### Responses |HTTP Code|Description|Schema| |---|---|---| |**200**|OK|[model.Scheduler](#model-scheduler)| |**400**||No Content| |**404**||No Content| |**500**||No Content| #### Consumes * `application/json` #### Produces * `application/json` #### Tags * Scheduler ### Create SecurityGroup ``` POST /api/v1/security-groups ``` #### Description create by json config #### Parameters |Type|Name|Description|Schema| |---|---|---|---| |**Body**|**SecurityGroup**
*required*|SecurityGroup|[types.CreateSecurityGroupRequest](#types-createsecuritygrouprequest)| #### Responses |HTTP Code|Description|Schema| |---|---|---| |**200**|OK|[model.SecurityGroup](#model-securitygroup)| |**400**||No Content| |**404**||No Content| |**500**||No Content| #### Consumes * `application/json` #### Produces * `application/json` #### Tags * SecurityGroup ### Get SecurityGroups ``` GET /api/v1/security-groups ``` #### Description Get SecurityGroups #### Parameters |Type|Name|Description|Schema|Default| |---|---|---|---|---| |**Query**|**page**
*required*|current page|integer|`0`| |**Query**|**per_page**
*required*|return max item count, default 10, max 50|integer|`10`| #### Responses |HTTP Code|Description|Schema| |---|---|---| |**200**|OK|< [model.SecurityGroup](#model-securitygroup) > array| |**400**||No Content| |**404**||No Content| |**500**||No Content| #### Consumes * `application/json` #### Produces * `application/json` #### Tags * SecurityGroup ### Get SecurityGroup ``` GET /api/v1/security-groups/{id} ``` #### Description Get SecurityGroup by id #### Parameters |Type|Name|Description|Schema| |---|---|---|---| |**Path**|**id**
*required*|id|string| #### Responses |HTTP Code|Description|Schema| |---|---|---| |**200**|OK|[model.SecurityGroup](#model-securitygroup)| |**400**||No Content| |**404**||No Content| |**500**||No Content| #### Consumes * `application/json` #### Produces * `application/json` #### Tags * SecurityGroup ### Update SecurityGroup ``` PATCH /api/v1/security-groups/{id} ``` #### Description Update by json config #### Parameters |Type|Name|Description|Schema| |---|---|---|---| |**Path**|**id**
*required*|id|string| |**Body**|**SecurityGroup**
*required*|SecurityGroup|[types.UpdateSecurityGroupRequest](#types-updatesecuritygrouprequest)| #### Responses |HTTP Code|Description|Schema| |---|---|---| |**200**|OK|[model.SecurityGroup](#model-securitygroup)| |**400**||No Content| |**404**||No Content| |**500**||No Content| #### Consumes * `application/json` #### Produces * `application/json` #### Tags * SecurityGroup ### Add CDN to SecurityGroup ``` PUT /api/v1/security-groups/{id}/cdn-clusters/{cdn_cluster_id} ``` #### Description Add CDN to SecurityGroup #### Parameters |Type|Name|Description|Schema| |---|---|---|---| |**Path**|**cdn_cluster_id**
*required*|cdn cluster id|string| |**Path**|**id**
*required*|id|string| #### Responses |HTTP Code|Schema| |---|---| |**200**|No Content| |**400**|No Content| |**404**|No Content| |**500**|No Content| #### Consumes * `application/json` #### Produces * `application/json` #### Tags * SecurityGroup ### Add Scheduler to SecurityGroup ``` PUT /api/v1/security-groups/{id}/scheduler-clusters/{scheduler_cluster_id} ``` #### Description Add Scheduler to SecurityGroup #### Parameters |Type|Name|Description|Schema| |---|---|---|---| |**Path**|**id**
*required*|id|string| |**Path**|**scheduler_cluster_id**
*required*|scheduler cluster id|string| #### Responses |HTTP Code|Schema| |---|---| |**200**|No Content| |**400**|No Content| |**404**|No Content| |**500**|No Content| #### Consumes * `application/json` #### Produces * `application/json` #### Tags * SecurityGroup ### Destroy SecurityGroup ``` DELETE /api/v1/securityGroups/{id} ``` #### Description Destroy by id #### Parameters |Type|Name|Description|Schema| |---|---|---|---| |**Path**|**id**
*required*|id|string| #### Responses |HTTP Code|Schema| |---|---| |**200**|No Content| |**400**|No Content| |**404**|No Content| |**500**|No Content| #### Consumes * `application/json` #### Produces * `application/json` #### Tags * SecurityGroup ### Oauth Signin ``` GET /api/v1/user/signin/{name} ``` #### Description oauth signin by json config #### Parameters |Type|Name|Description|Schema| |---|---|---|---| |**Path**|**name**
*required*|name|string| #### Responses |HTTP Code|Schema| |---|---| |**200**|No Content| |**400**|No Content| |**404**|No Content| |**500**|No Content| #### Consumes * `application/json` #### Produces * `application/json` #### Tags * User ### Oauth Signin Callback ``` GET /api/v1/user/signin/{name}/callback ``` #### Description oauth signin callback by json config #### Parameters |Type|Name|Description|Schema| |---|---|---|---| |**Path**|**name**
*required*|name|string| |**Query**|**code**
*required*|code|string| #### Responses |HTTP Code|Schema| |---|---| |**200**|No Content| |**400**|No Content| |**404**|No Content| |**500**|No Content| #### Tags * Oauth ### SignUp user ``` POST /api/v1/user/signup ``` #### Description signup by json config #### Parameters |Type|Name|Description|Schema| |---|---|---|---| |**Body**|**User**
*required*|User|[types.SignUpRequest](#types-signuprequest)| #### Responses |HTTP Code|Description|Schema| |---|---|---| |**200**|OK|[model.User](#model-user)| |**400**||No Content| |**500**||No Content| #### Consumes * `application/json` #### Produces * `application/json` #### Tags * User ### Reset Password For User ``` POST /api/v1/users/:id/reset_password ``` #### Description reset password by json config #### Parameters |Type|Name|Description|Schema| |---|---|---|---| |**Body**|**User**
*required*|User|[types.ResetPasswordRequest](#types-resetpasswordrequest)| #### Responses |HTTP Code|Schema| |---|---| |**200**|No Content| |**400**|No Content| |**500**|No Content| #### Consumes * `application/json` #### Produces * `application/json` #### Tags * User ### Get User Roles ``` GET /api/v1/users/:id/roles ``` #### Description get roles by json config #### Parameters |Type|Name|Description|Schema| |---|---|---|---| |**Path**|**id**
*required*|id|string| #### Responses |HTTP Code|Description|Schema| |---|---|---| |**200**|OK|< string > array| |**400**||No Content| |**500**||No Content| #### Produces * `application/json` #### Tags * User ### Add Role For User ``` PUT /api/v1/users/:id/roles/:role ``` #### Description add role to user by uri config #### Parameters |Type|Name|Description|Schema| |---|---|---|---| |**Path**|**id**
*required*|id|string| |**Path**|**role**
*required*|role|string| #### Responses |HTTP Code|Schema| |---|---| |**200**|No Content| |**400**|No Content| |**500**|No Content| #### Consumes * `application/json` #### Produces * `application/json` #### Tags * Users ### Delete Role For User ``` DELETE /api/v1/users/:id/roles/:role ``` #### Description delete role by uri config #### Parameters |Type|Name|Description|Schema| |---|---|---|---| |**Path**|**id**
*required*|id|string| |**Path**|**role**
*required*|role|string| #### Responses |HTTP Code|Schema| |---|---| |**200**|No Content| |**400**|No Content| |**500**|No Content| #### Consumes * `application/json` #### Produces * `application/json` #### Tags * Users ### Get User ``` GET /api/v1/users/{id} ``` #### Description Get User by id #### Parameters |Type|Name|Description|Schema| |---|---|---|---| |**Path**|**id**
*required*|id|string| #### Responses |HTTP Code|Description|Schema| |---|---|---| |**200**|OK|[model.User](#model-user)| |**400**||No Content| |**404**||No Content| |**500**||No Content| #### Consumes * `application/json` #### Produces * `application/json` #### Tags * User ## Definitions ### model.CDN |Name|Schema| |---|---| |**cdnclusterID**
*optional*|integer| |**created_at**
*optional*|string| |**download_port**
*optional*|integer| |**host_name**
*optional*|string| |**id**
*optional*|integer| |**idc**
*optional*|string| |**ip**
*optional*|string| |**location**
*optional*|string| |**port**
*optional*|integer| |**status**
*optional*|string| |**updated_at**
*optional*|string| ### model.CDNCluster |Name|Schema| |---|---| |**bio**
*optional*|string| |**config**
*optional*|[model.JSONMap](#model-jsonmap)| |**created_at**
*optional*|string| |**id**
*optional*|integer| |**is_default**
*optional*|boolean| |**name**
*optional*|string| |**security_group_id**
*optional*|integer| |**updated_at**
*optional*|string| ### model.Config |Name|Schema| |---|---| |**bio**
*optional*|string| |**created_at**
*optional*|string| |**id**
*optional*|integer| |**key**
*optional*|string| |**updated_at**
*optional*|string| |**user_id**
*optional*|integer| |**value**
*optional*|string| ### model.JSONMap *Type* : object ### model.Oauth |Name|Schema| |---|---| |**bio**
*optional*|string| |**client_id**
*optional*|string| |**client_secret**
*optional*|string| |**created_at**
*optional*|string| |**id**
*optional*|integer| |**name**
*optional*|string| |**redirect_url**
*optional*|string| |**updated_at**
*optional*|string| ### model.Scheduler |Name|Schema| |---|---| |**created_at**
*optional*|string| |**host_name**
*optional*|string| |**id**
*optional*|integer| |**idc**
*optional*|string| |**ip**
*optional*|string| |**location**
*optional*|string| |**net_config**
*optional*|[model.JSONMap](#model-jsonmap)| |**port**
*optional*|integer| |**schedulerClusterID**
*optional*|integer| |**status**
*optional*|string| |**updated_at**
*optional*|string| |**vips**
*optional*|string| ### model.SchedulerCluster |Name|Schema| |---|---| |**bio**
*optional*|string| |**cdn_clusters**
*optional*|< [model.CDNCluster](#model-cdncluster) > array| |**client_config**
*optional*|[model.JSONMap](#model-jsonmap)| |**config**
*optional*|[model.JSONMap](#model-jsonmap)| |**created_at**
*optional*|string| |**id**
*optional*|integer| |**is_default**
*optional*|boolean| |**name**
*optional*|string| |**scopes**
*optional*|[model.JSONMap](#model-jsonmap)| |**security_group_id**
*optional*|integer| |**updated_at**
*optional*|string| ### model.SecurityGroup |Name|Schema| |---|---| |**bio**
*optional*|string| |**created_at**
*optional*|string| |**domain**
*optional*|string| |**id**
*optional*|integer| |**name**
*optional*|string| |**proxy_domain**
*optional*|string| |**updated_at**
*optional*|string| ### model.User |Name|Schema| |---|---| |**avatar**
*optional*|string| |**bio**
*optional*|string| |**created_at**
*optional*|string| |**email**
*optional*|string| |**id**
*optional*|integer| |**location**
*optional*|string| |**name**
*optional*|string| |**phone**
*optional*|string| |**state**
*optional*|string| |**updated_at**
*optional*|string| ### rbac.Permission |Name|Schema| |---|---| |**action**
*required*|string| |**object**
*required*|string| ### types.AddPermissionForRoleRequest |Name|Schema| |---|---| |**action**
*required*|string| |**object**
*required*|string| ### types.CDNClusterConfig |Name|Schema| |---|---| |**load_limit**
*optional*|integer| |**net_topology**
*optional*|string| ### types.CreateCDNClusterRequest |Name|Schema| |---|---| |**bio**
*optional*|string| |**config**
*required*|[types.CDNClusterConfig](#types-cdnclusterconfig)| |**name**
*required*|string| |**security_group_domain**
*optional*|string| ### types.CreateCDNRequest |Name|Schema| |---|---| |**cdn_cluster_id**
*required*|integer| |**download_port**
*required*|integer| |**host_name**
*required*|string| |**idc**
*required*|string| |**ip**
*required*|string| |**location**
*optional*|string| |**port**
*required*|integer| ### types.CreateConfigRequest |Name|Schema| |---|---| |**bio**
*optional*|string| |**key**
*required*|string| |**user_id**
*required*|integer| |**value**
*required*|string| ### types.CreateOauthRequest |Name|Schema| |---|---| |**bio**
*optional*|string| |**client_id**
*required*|string| |**client_secret**
*required*|string| |**name**
*required*|string| |**redirect_url**
*optional*|string| ### types.CreatePreheatRequest |Name|Schema| |---|---| |**filter**
*optional*|string| |**headers**
*optional*|< string, string > map| |**scheduler_cluster_id**
*optional*|integer| |**type**
*required*|string| |**url**
*required*|string| ### types.CreateRoleRequest |Name|Schema| |---|---| |**permissions**
*required*|< [rbac.Permission](#rbac-permission) > array| |**role**
*required*|string| ### types.CreateSchedulerClusterRequest |Name|Schema| |---|---| |**bio**
*optional*|string| |**cdn_cluster_id**
*optional*|integer| |**client_config**
*required*|[types.SchedulerClusterClientConfig](#types-schedulerclusterclientconfig)| |**config**
*required*|[types.SchedulerClusterConfig](#types-schedulerclusterconfig)| |**is_default**
*optional*|boolean| |**name**
*required*|string| |**scopes**
*optional*|[types.SchedulerClusterScopes](#types-schedulerclusterscopes)| |**security_group_domain**
*optional*|string| ### types.CreateSchedulerRequest |Name|Schema| |---|---| |**host_name**
*required*|string| |**idc**
*required*|string| |**ip**
*required*|string| |**location**
*optional*|string| |**net_config**
*optional*|object| |**port**
*required*|integer| |**scheduler_cluster_id**
*required*|integer| |**vips**
*optional*|string| ### types.CreateSecurityGroupRequest |Name|Schema| |---|---| |**bio**
*optional*|string| |**domain**
*required*|string| |**name**
*required*|string| |**proxy_domain**
*optional*|string| ### types.CreateV1PreheatRequest |Name|Schema| |---|---| |**filter**
*optional*|string| |**headers**
*optional*|< string, string > map| |**type**
*required*|string| |**url**
*required*|string| ### types.CreateV1PreheatResponse |Name|Schema| |---|---| |**ID**
*optional*|string| ### types.DeletePermissionForRoleRequest |Name|Schema| |---|---| |**action**
*required*|string| |**object**
*required*|string| ### types.GetV1PreheatResponse |Name|Schema| |---|---| |**ID**
*optional*|string| |**finishTime**
*optional*|string| |**startTime**
*optional*|string| |**status**
*optional*|string| ### types.Preheat |Name|Schema| |---|---| |**create_at**
*optional*|string| |**id**
*optional*|string| |**status**
*optional*|string| ### types.ResetPasswordRequest |Name|Schema| |---|---| |**new_password**
*required*|string| |**old_password**
*required*|string| ### types.SchedulerClusterClientConfig |Name|Schema| |---|---| |**load_limit**
*optional*|integer| ### types.SchedulerClusterConfig *Type* : object ### types.SchedulerClusterScopes *Type* : object ### types.SignUpRequest |Name|Schema| |---|---| |**avatar**
*optional*|string| |**bio**
*optional*|string| |**email**
*required*|string| |**location**
*optional*|string| |**name**
*required*|string| |**password**
*required*|string| |**phone**
*optional*|string| ### types.UpdateCDNClusterRequest |Name|Schema| |---|---| |**bio**
*optional*|string| |**config**
*optional*|[types.CDNClusterConfig](#types-cdnclusterconfig)| |**name**
*optional*|string| |**security_group_domain**
*optional*|string| ### types.UpdateCDNRequest |Name|Schema| |---|---| |**cdn_cluster_id**
*optional*|integer| |**download_port**
*optional*|integer| |**idc**
*optional*|string| |**ip**
*optional*|string| |**location**
*optional*|string| |**port**
*optional*|integer| ### types.UpdateConfigRequest |Name|Schema| |---|---| |**bio**
*optional*|string| |**key**
*optional*|string| |**user_id**
*optional*|integer| |**value**
*optional*|string| ### types.UpdateOauthRequest |Name|Schema| |---|---| |**bio**
*optional*|string| |**client_id**
*optional*|string| |**client_secret**
*optional*|string| |**name**
*optional*|string| |**redirect_url**
*optional*|string| ### types.UpdateSchedulerClusterRequest |Name|Schema| |---|---| |**bio**
*optional*|string| |**cdn_cluster_id**
*optional*|integer| |**client_config**
*optional*|[types.SchedulerClusterClientConfig](#types-schedulerclusterclientconfig)| |**config**
*optional*|[types.SchedulerClusterConfig](#types-schedulerclusterconfig)| |**is_default**
*optional*|boolean| |**name**
*optional*|string| |**scopes**
*optional*|[types.SchedulerClusterScopes](#types-schedulerclusterscopes)| |**security_group_domain**
*optional*|string| ### types.UpdateSchedulerRequest |Name|Schema| |---|---| |**idc**
*optional*|string| |**ip**
*optional*|string| |**location**
*optional*|string| |**net_config**
*optional*|object| |**port**
*optional*|integer| |**scheduler_cluster_id**
*optional*|integer| |**scheduler_id**
*optional*|integer| |**vips**
*optional*|string| ### types.UpdateSecurityGroupRequest |Name|Schema| |---|---| |**bio**
*optional*|string| |**domain**
*optional*|string| |**name**
*optional*|string| |**proxy_domain**
*optional*|string|