SpaceONE APIs
Latest Version
Latest Version
  • README
  • Board
    • V1
      • Board
      • Post
  • Config
    • V1
      • Domain Config
      • User Config
  • Core
    • V1
      • Handler
      • Query
      • Server Info
  • Cost Analysis
    • Plugin
      • Cost
      • Data Source
      • Job
    • V1
      • Budget
      • Budget Usage
      • Cost
      • Cost Query Set
      • Custom Widget
      • Data Source
      • Data Source Rule
      • Exchange Rate
      • Job
      • Job Task
      • Public Dashboard
      • Schedule
      • User Dashboard
  • Identity
    • Plugin
      • Auth
    • V1
      • Api Key
      • Authorization
      • Domain
      • Domain Owner
      • Endpoint
      • Policy
      • Project
      • Project Group
      • Provider
      • Role
      • Role Binding
      • Service Account
      • Token
      • User
  • Inventory
    • Plugin
      • Collector
    • V1
      • Change History
      • Cloud Service
      • Cloud Service Type
      • Collector
      • Job
      • Job Task
      • Note
      • Region
      • Resource Group
      • Server
  • Monitoring
    • Plugin
      • Data Source
      • Event
      • Log
      • Metric
      • Webhook
    • V1
      • Alert
      • Data Source
      • Escalation Policy
      • Event
      • Event Rule
      • Log
      • Maintenance Window
      • Metric
      • Note
      • Project Alert Config
      • Webhook
  • Notification
    • Plugin
      • Notification
      • Protocol
    • V1
      • Notification
      • Notification Usage
      • Project Channel
      • Protocol
      • Quota
      • User Channel
  • Plugin
    • V1
      • Plugin
      • Supervisor
  • Repository
    • V1
      • Plugin
      • Policy
      • Repository
      • Schema
  • Sample
    • V1
      • Helloworld
  • Secret
    • V1
      • Secret
      • Secret Group
  • Statistics
    • Plugin
      • Storage
    • V1
      • History
      • Resource
      • Schedule
      • Storage
Powered by GitBook
On this page
  • Plugin
  • register
  • update
  • deregister
  • enable
  • disable
  • get_versions
  • get
  • list
  • stat
  • Message
  • CreatePluginRequest
  • GetRepositoryPluginRequest
  • PluginInfo
  • PluginQuery
  • PluginRequest
  • PluginStatQuery
  • PluginsInfo
  • RepositoryPluginRequest
  • UpdatePluginRequest
  • VersionsInfo

Was this helpful?

  1. Repository
  2. V1

Plugin

A Plugin is a resource containing data of deployable plugins such as container image and registry URL.

Package : spaceone.api.repository.v1

Plugin

Plugin Methods:

Method
Request
Response

register

POST /repository/v1/plugins

Registers a Plugin. The parameter registry_type, meaning container registry type, can be either DOCKER_HUB or AWS_PUBLIC_ECR. The default value of the registry_type is DOCKER_HUB. The parameter registry_url is required if the registry_type is not DOCKER_HUB. The parameter image is limited to 40 characters.

Type
Message

Request

Response

{
    "name": "JIRA Issue notification",
    "service_type": "notification.Procotol",
    "image": "pyengine/plugin-jira-noti-protocol",
    "registry_type": "DOCKER_HUB",
    "registry_config": {},
    "provider": "atlassian",
    "capability": {
        "supported_schema": [
            "atlassian_jira"
        ]
    },
    "template": {
        "options": {
            "schema": {
                "type": "object",
                "required": [],
                "properties": {
                    "project_id": {
                        "type": "string",
                        "title": "Project ID",
                        "minLength": 4.0
                    },
                    "sa_name": {
                        "title": "Service Account",
                        "type": "string",
                        "minLength": 4.0
                    }
                }
            }
        }
    },
    "labels": [
        "jira",
        "atlassian",
        "notification"
    ],
    "tags": {
        "description": "Atlassian JIRA Issue notification",
        "icon": "https://icon-path/jira-icon.png"
    }
}
{
    "plugin_id": "plugin-jira-noti-protocol",
    "name": "JIRA Issue notification",
    "image": "pyengine/plugin-jira-noti-protocol",
    "registry_url": "registry.hub.docker.com",
    "state": "ENABLED",
    "service_type": "notification.Procotol",
    "provider": "atlassian",
    "registry_type": "DOCKER_HUB",
    "registry_config": {},
    "capability": {
        "supported_schema": [
            "atlassian_jira"
        ]
    },
    "template": {
        "options": {
            "schema": {
                "type": "object",
                "required": [],
                "properties": {
                    "project_id": {
                        "type": "string",
                        "title": "Project ID",
                        "minLength": 4.0
                    },
                    "sa_name": {
                        "title": "Service Account",
                        "type": "string",
                        "minLength": 4.0
                    }
                }
            }
        }
    },
    "labels": [
        "jira",
        "atlassian",
        "notification"
    ],
    "tags": {
        "description": "Atlassian JIRA Issue notification",
        "icon": "https://icon-path/jira-icon.png"
    },
    "repository_info": {
        "repository_id": "repo-123456789012",
        "name": "Marketplace",
        "repository_type": "remote"
    },
    "domain_id": "domain-123456789012",
    "created_at": "2022-01-01T08:02:38.094Z",
    "updated_at": "2022-01-01T08:02:38.094Z"
}

update

PUT /repository/v1/plugin/{plugin_id}

Updates a specific Plugin registered. A Plugin can be updated only if its Repository's repository_type is local. You can make changes in Plugin settings, including template and its options, schema.

Type
Message

Request

Response

{
    "name": "JIRA Issue notification",
    "capability": {
        "supported_schema": [
            "atlassian_jira"
        ]
    },
    "template": {
        "options": {
            "schema": {
                "type": "object",
                "required": [],
                "properties": {
                    "project_id": {
                        "type": "string",
                        "title": "Project ID",
                        "minLength": 4.0
                    },
                    "sa_name": {
                        "title": "Service Account",
                        "type": "string",
                        "minLength": 4.0
                    }
                }
            }
        }
    },
    "labels": [
        "jira",
        "atlassian",
        "notification"
    ],
    "tags": {
        "description": "Atlassian JIRA Issue notification",
        "icon": "https://icon-path/jira-icon.png"
    }
}
{
    "plugin_id": "plugin-jira-noti-protocol",
    "name": "JIRA Issue notification",
    "image": "pyengine/plugin-jira-noti-protocol",
    "registry_url": "registry.hub.docker.com",
    "state": "ENABLED",
    "service_type": "notification.Procotol",
    "provider": "atlassian",
    "registry_type": "DOCKER_HUB",
    "registry_config": {},
    "capability": {
        "supported_schema": [
            "atlassian_jira"
        ]
    },
    "template": {
        "options": {
            "schema": {
                "type": "object",
                "required": [],
                "properties": {
                    "project_id": {
                        "type": "string",
                        "title": "Project ID",
                        "minLength": 4.0
                    },
                    "sa_name": {
                        "title": "Service Account",
                        "type": "string",
                        "minLength": 4.0
                    }
                }
            }
        }
    },
    "labels": [
        "jira",
        "atlassian",
        "notification"
    ],
    "tags": {
        "description": "Atlassian JIRA Issue notification",
        "spaceone:plugin_name": "plugin-jira-noti-protocol",
        "icon": "https://icon-path/jira-icon.png"
    },
    "repository_info": {
        "repository_id": "repo-123456789012",
        "name": "Marketplace",
        "repository_type": "remote"
    },
    "domain_id": "domain-123456789012",
    "created_at": "2022-01-01T08:02:38.094Z",
    "updated_at": "2022-01-01T08:02:38.094Z"
}

deregister

DELETE /repository/v1/plugin/{plugin_id}

Deregisters and deletes a specific Plugin. You must specify the plugin_id of the Plugin to deregister.

Type
Message

Request

Response

{
    "plugin_id": "plugin-aws-sns-mon-webhook",
    "domain_id": "domain-123456789012"
}
{
    "plugin_id": "plugin-aws-sns-mon-webhook",
    "name": "AWS SNS Webhook",
    "image": "pyengine/plugin-aws-sns-mon-webhook",
    "registry_url": "registry.hub.docker.com",
    "state": "ENABLED",
    "service_type": "monitoring.Webhook",
    "registry_type": "DOCKER_HUB",
    "registry_config": {},
    "capability": {},
    "template": {},
    "labels": [],
    "tags": {
        "icon": "https://icon-path/Amazon-SNS.svg"
    },
    "repository_info": {
        "repository_id": "repo-123456789012",
        "name": "Marketplace",
        "repository_type": "remote"
    },
    "domain_id": "domain-987654321098",
    "created_at": "2022-01-01T08:14:23.175Z",
    "updated_at": "2022-01-01T08:14:23.175Z"
}

enable

PUT /repository/v1/plugin/{plugin_id}/enable

Enables a specific Plugin. If the Plugin is enabled, the Plugin can be used as its parameter state becomes ENABLED.

Type
Message

Request

Response

{
    "plugin_id": "plugin-aws-sns-mon-webhook",
    "domain_id": "domain-123456789012"
}
{
    "plugin_id": "plugin-aws-sns-mon-webhook",
    "name": "AWS SNS Webhook",
    "image": "pyengine/plugin-aws-sns-mon-webhook",
    "registry_url": "registry.hub.docker.com",
    "state": "ENABLED",
    "service_type": "monitoring.Webhook",
    "registry_type": "DOCKER_HUB",
    "registry_config": {},
    "capability": {},
    "template": {},
    "labels": [],
    "tags": {
        "icon": "https://icon-path/Amazon-SNS.svg"
    },
    "repository_info": {
        "repository_id": "repo-123456789012",
        "name": "Marketplace",
        "repository_type": "remote"
    },
    "domain_id": "domain-987654321098",
    "created_at": "2022-01-01T08:14:23.175Z",
    "updated_at": "2022-01-01T08:14:23.175Z"
}

disable

PUT /repository/v1/plugin/{plugin_id}/disable

Disables a specific Plugin. If the Plugin is disabled, the Plugin cannot be used as its parameter state becomes DISABLED.

Type
Message

Request

Response

{
    "plugin_id": "plugin-aws-sns-mon-webhook",
    "domain_id": "domain-123456789012"
}
{
    "plugin_id": "plugin-aws-sns-mon-webhook",
    "name": "AWS SNS Webhook",
    "image": "pyengine/plugin-aws-sns-mon-webhook",
    "registry_url": "registry.hub.docker.com",
    "state": "ENABLED",
    "service_type": "monitoring.Webhook",
    "registry_type": "DOCKER_HUB",
    "registry_config": {},
    "capability": {},
    "template": {},
    "labels": [],
    "tags": {
        "icon": "https://icon-path/Amazon-SNS.svg"
    },
    "repository_info": {
        "repository_id": "repo-123456789012",
        "name": "Marketplace",
        "repository_type": "remote"
    },
    "domain_id": "domain-987654321098",
    "created_at": "2022-01-01T08:14:23.175Z",
    "updated_at": "2022-01-01T08:14:23.175Z"
}

get_versions

GET /repository/v1/plugins/{plugin_id}/versions

Type
Message

Request

Response

get

GET /repository/v1/plugins/{plugin_id}

Gets a specific Plugin. Prints detailed information about the Plugin, including image, registry_url, and state.

Type
Message

Request

Response

{
    "plugin_id": "plugin-aws-sns-mon-webhook",
    "domain_id": "domain-123456789012"
}
{
    "plugin_id": "plugin-aws-sns-mon-webhook",
    "name": "AWS SNS Webhook",
    "image": "pyengine/plugin-aws-sns-mon-webhook",
    "registry_url": "registry.hub.docker.com",
    "state": "ENABLED",
    "service_type": "monitoring.Webhook",
    "registry_type": "DOCKER_HUB",
    "registry_config": {},
    "capability": {},
    "template": {},
    "labels": [],
    "tags": {
        "icon": "https://icon-url/Amazon-SNS.svg"
    },
    "repository_info": {
        "repository_id": "repo-123456789012",
        "name": "Marketplace",
        "repository_type": "remote"
    },
    "domain_id": "domain-987654321098",
    "created_at": "2021-06-14T08:14:23.175Z",
    "updated_at": "2021-06-14T08:14:23.175Z"
}

list

GET /repository/v1/plugins

POST /repository/v1/plugins/search

Type
Message

Request

Response

stat

POST /repository/v1/plugins/stat

Type
Message

Request

Response

Message

CreatePluginRequest

Field
Type
Required
Description

name

string

✔

service_type

string

✔

image

string

✔

provider

string

✘

registry_type

  • NONE_REGISTRY_TYPE

  • DOCKER_HUB

  • AWS_PUBLIC_ECR

✘

registry_config

✘

capability

✘

template

✘

labels

✘

tags

✘

project_id

string

✘

domain_id

string

✔

GetRepositoryPluginRequest

Field
Type
Required
Description

plugin_id

string

✔

domain_id

string

✔

repository_id

string

✘

only

list of string

✘

PluginInfo

Field
Type
Description

plugin_id

string

name

string

image

string

registry_url

string

state

  • NONE

  • ENABLED

  • DISABLED

service_type

string

provider

string

registry_type

  • NONE_REGISTRY_TYPE

  • DOCKER_HUB

  • AWS_PUBLIC_ECR

registry_config

capability

template

labels

tags

repository_info

project_id

string

domain_id

string

created_at

string

updated_at

string

PluginQuery

Field
Type
Required
Description

query

✘

plugin_id

string

✘

name

string

✘

state

  • NONE

  • ENABLED

  • DISABLED

✘

service_type

string

✘

provider

string

✘

repository_id

string

✔

domain_id

string

✔

registry_type

  • NONE_REGISTRY_TYPE

  • DOCKER_HUB

  • AWS_PUBLIC_ECR

✘

PluginRequest

Field
Type
Required
Description

plugin_id

string

✔

domain_id

string

✔

PluginStatQuery

Field
Type
Required
Description

query

✔

repository_id

string

✔

domain_id

string

✔

PluginsInfo

Field
Type
Description

results

total_count

RepositoryPluginRequest

Field
Type
Required
Description

plugin_id

string

✔

domain_id

string

✔

repository_id

string

✘

UpdatePluginRequest

Field
Type
Required
Description

plugin_id

string

✔

name

string

✘

capability

✘

template

✘

labels

✘

tags

✘

domain_id

string

✔

VersionsInfo

Field
Type
Description

version

list of string

deprecated field

total_count

results

list of string

PreviousV1NextPolicy

Last updated 2 years ago

Was this helpful?

register
CreatePluginRequest
PluginInfo
update
UpdatePluginRequest
PluginInfo
deregister
PluginRequest
google.protobuf.Empty
enable
PluginRequest
PluginInfo
disable
PluginRequest
PluginInfo
get_versions
RepositoryPluginRequest
VersionsInfo
get
GetRepositoryPluginRequest
PluginInfo
list
PluginQuery
PluginsInfo
stat
PluginStatQuery
google.protobuf.Struct
CreatePluginRequest
PluginInfo
UpdatePluginRequest
PluginInfo
PluginRequest
google.protobuf.Empty
PluginRequest
PluginInfo
PluginRequest
PluginInfo
RepositoryPluginRequest
VersionsInfo
GetRepositoryPluginRequest
PluginInfo
PluginQuery
PluginsInfo
PluginStatQuery
google.protobuf.Struct
google.protobuf.Struct
google.protobuf.Struct
google.protobuf.Struct
google.protobuf.ListValue
google.protobuf.Struct
google.protobuf.Struct
google.protobuf.Struct
google.protobuf.Struct
google.protobuf.ListValue
google.protobuf.Struct
RepositoryInfo
spaceone.api.core.v1.Query
spaceone.api.core.v1.StatisticsQuery
list of PluginInfo
int32
google.protobuf.Struct
google.protobuf.Struct
google.protobuf.ListValue
google.protobuf.Struct
int32