Class: Zernio::ConnectedAppsApi

Inherits:
Object
  • Object
show all
Defined in:
lib/zernio-sdk/api/connected_apps_api.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(api_client = ApiClient.default) ⇒ ConnectedAppsApi

Returns a new instance of ConnectedAppsApi.



19
20
21
# File 'lib/zernio-sdk/api/connected_apps_api.rb', line 19

def initialize(api_client = ApiClient.default)
  @api_client = api_client
end

Instance Attribute Details

#api_clientObject

Returns the value of attribute api_client.



17
18
19
# File 'lib/zernio-sdk/api/connected_apps_api.rb', line 17

def api_client
  @api_client
end

Instance Method Details

#list_connected_apps(opts = {}) ⇒ ListConnectedApps200Response

List connected apps Returns the OAuth clients (AI assistants and MCP connectors) the authenticated user has authorized and that still hold a live token. Requires a session or a full-scope API key. A profile-scoped API key or an OAuth access token is rejected with 403: an app must not be able to enumerate its sibling authorizations.

Parameters:

  • opts (Hash) (defaults to: {})

    the optional parameters

Returns:



26
27
28
29
# File 'lib/zernio-sdk/api/connected_apps_api.rb', line 26

def list_connected_apps(opts = {})
  data, _status_code, _headers = list_connected_apps_with_http_info(opts)
  data
end

#list_connected_apps_with_http_info(opts = {}) ⇒ Array<(ListConnectedApps200Response, Integer, Hash)>

List connected apps Returns the OAuth clients (AI assistants and MCP connectors) the authenticated user has authorized and that still hold a live token. Requires a session or a full-scope API key. A profile-scoped API key or an OAuth access token is rejected with 403: an app must not be able to enumerate its sibling authorizations.

Parameters:

  • opts (Hash) (defaults to: {})

    the optional parameters

Returns:



35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
# File 'lib/zernio-sdk/api/connected_apps_api.rb', line 35

def list_connected_apps_with_http_info(opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: ConnectedAppsApi.list_connected_apps ...'
  end
  # resource path
  local_var_path = '/v1/me/connected-apps'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body]

  # return_type
  return_type = opts[:debug_return_type] || 'ListConnectedApps200Response'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['bearerAuth']

  new_options = opts.merge(
    :operation => :"ConnectedAppsApi.list_connected_apps",
    :header_params => header_params,
    :query_params => query_params,
    :form_params => form_params,
    :body => post_body,
    :auth_names => auth_names,
    :return_type => return_type
  )

  data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: ConnectedAppsApi#list_connected_apps\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end

#revoke_connected_app(client_id, opts = {}) ⇒ RevokeConnectedApp200Response

Revoke connected app Ends an app's access: invalidates the client's pending authorization codes and revokes every live token it holds for the authenticated user. Takes effect on the app's next request. Idempotent while the authorization is still on record: revoking an app that was already revoked returns 200 with revokedTokens: 0.

Parameters:

  • client_id (String)

    OAuth client id, as returned by GET /v1/me/connected-apps.

  • opts (Hash) (defaults to: {})

    the optional parameters

Returns:



84
85
86
87
# File 'lib/zernio-sdk/api/connected_apps_api.rb', line 84

def revoke_connected_app(client_id, opts = {})
  data, _status_code, _headers = revoke_connected_app_with_http_info(client_id, opts)
  data
end

#revoke_connected_app_with_http_info(client_id, opts = {}) ⇒ Array<(RevokeConnectedApp200Response, Integer, Hash)>

Revoke connected app Ends an app's access: invalidates the client's pending authorization codes and revokes every live token it holds for the authenticated user. Takes effect on the app's next request. Idempotent while the authorization is still on record: revoking an app that was already revoked returns 200 with `revokedTokens: 0`.

Parameters:

  • client_id (String)

    OAuth client id, as returned by GET /v1/me/connected-apps.

  • opts (Hash) (defaults to: {})

    the optional parameters

Returns:



94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
# File 'lib/zernio-sdk/api/connected_apps_api.rb', line 94

def revoke_connected_app_with_http_info(client_id, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: ConnectedAppsApi.revoke_connected_app ...'
  end
  # verify the required parameter 'client_id' is set
  if @api_client.config.client_side_validation && client_id.nil?
    fail ArgumentError, "Missing the required parameter 'client_id' when calling ConnectedAppsApi.revoke_connected_app"
  end
  if @api_client.config.client_side_validation && client_id.to_s.length > 200
    fail ArgumentError, 'invalid value for "client_id" when calling ConnectedAppsApi.revoke_connected_app, the character length must be smaller than or equal to 200.'
  end

  if @api_client.config.client_side_validation && client_id.to_s.length < 1
    fail ArgumentError, 'invalid value for "client_id" when calling ConnectedAppsApi.revoke_connected_app, the character length must be greater than or equal to 1.'
  end

  # resource path
  local_var_path = '/v1/me/connected-apps/{clientId}'.sub('{' + 'clientId' + '}', CGI.escape(client_id.to_s))

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body]

  # return_type
  return_type = opts[:debug_return_type] || 'RevokeConnectedApp200Response'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['bearerAuth']

  new_options = opts.merge(
    :operation => :"ConnectedAppsApi.revoke_connected_app",
    :header_params => header_params,
    :query_params => query_params,
    :form_params => form_params,
    :body => post_body,
    :auth_names => auth_names,
    :return_type => return_type
  )

  data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: ConnectedAppsApi#revoke_connected_app\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end