forked from Gitlink/forgeplus
43 lines
940 B
Ruby
43 lines
940 B
Ruby
# creates a new OAuth2 application
|
|
class Gitea::Oauth2::CreateService < Gitea::ClientService
|
|
attr_reader :token, :params
|
|
|
|
# params:
|
|
# {
|
|
# "name": "string",
|
|
# "redirect_uris": [
|
|
# "string"
|
|
# ]
|
|
# }
|
|
# ep: Gitea::OAuth2::CreateService.call(current_user.gitea_token, {name: 'oauth_name', redirect_uris: ['url']})
|
|
# return values example:
|
|
# {
|
|
# "client_id": "string",
|
|
# "client_secret": "string",
|
|
# "created": "2020-07-08T03:12:49.960Z",
|
|
# "id": 0,
|
|
# "name": "string",
|
|
# "redirect_uris": [
|
|
# "string"
|
|
# ]
|
|
# }
|
|
def initialize(token, params)
|
|
@token = token
|
|
@params = params
|
|
end
|
|
|
|
def call
|
|
response = post(url, request_params)
|
|
render_201_response(response)
|
|
end
|
|
|
|
private
|
|
def url
|
|
"/user/applications/oauth2".freeze
|
|
end
|
|
|
|
def request_params
|
|
params.merge(token: token, data: params).compact
|
|
end
|
|
end
|