misardev 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,74 @@
1
+ # GENERATED by scripts/generate-sdk-resources.mjs from sdks/manifest.json.
2
+ # Do not edit by hand — change the route, run `pnpm sdk:sync`, and regenerate.
3
+ # frozen_string_literal: true
4
+
5
+ module MisarDev
6
+ module Generated
7
+ # The `billing` resource — 5 operation(s).
8
+ class BillingResource
9
+ def initialize(transport)
10
+ @t = transport
11
+ end
12
+
13
+ def inspect
14
+ "#<#{self.class.name}>"
15
+ end
16
+
17
+ # `POST /billing/checkout`
18
+ #
19
+ # misardev:method billing.checkout
20
+ #
21
+ # @param body [Hash] JSON request body
22
+ # @return [Hash, Array, String, nil] decoded JSON, a raw string, or nil
23
+ # @raise [MisarDev::MisarDevError]
24
+ def checkout(body = {})
25
+ @t.request("POST", "/billing/checkout", body: body)
26
+ end
27
+
28
+ # `GET /billing/comparison`
29
+ #
30
+ # Public — works without a key, but the client still sends it.
31
+ #
32
+ # misardev:method billing.comparison
33
+ #
34
+ # @return [Hash, Array, String, nil] decoded JSON, a raw string, or nil
35
+ # @raise [MisarDev::MisarDevError]
36
+ def comparison
37
+ @t.request("GET", "/billing/comparison")
38
+ end
39
+
40
+ # `GET /billing/plans`
41
+ #
42
+ # Public — works without a key, but the client still sends it.
43
+ #
44
+ # misardev:method billing.plans
45
+ #
46
+ # @return [Hash, Array, String, nil] decoded JSON, a raw string, or nil
47
+ # @raise [MisarDev::MisarDevError]
48
+ def plans
49
+ @t.request("GET", "/billing/plans")
50
+ end
51
+
52
+ # `GET /billing/subscription`
53
+ #
54
+ # misardev:method billing.subscription
55
+ #
56
+ # @return [Hash, Array, String, nil] decoded JSON, a raw string, or nil
57
+ # @raise [MisarDev::MisarDevError]
58
+ def subscription
59
+ @t.request("GET", "/billing/subscription")
60
+ end
61
+
62
+ # `POST /billing/switch-plan`
63
+ #
64
+ # misardev:method billing.switchPlan
65
+ #
66
+ # @param body [Hash] JSON request body
67
+ # @return [Hash, Array, String, nil] decoded JSON, a raw string, or nil
68
+ # @raise [MisarDev::MisarDevError]
69
+ def switch_plan(body = {})
70
+ @t.request("POST", "/billing/switch-plan", body: body)
71
+ end
72
+ end
73
+ end
74
+ end
@@ -0,0 +1,29 @@
1
+ # GENERATED by scripts/generate-sdk-resources.mjs from sdks/manifest.json.
2
+ # Do not edit by hand — change the route, run `pnpm sdk:sync`, and regenerate.
3
+ # frozen_string_literal: true
4
+
5
+ module MisarDev
6
+ module Generated
7
+ # The `builds` resource — 1 operation(s).
8
+ class BuildsResource
9
+ def initialize(transport)
10
+ @t = transport
11
+ end
12
+
13
+ def inspect
14
+ "#<#{self.class.name}>"
15
+ end
16
+
17
+ # `GET /builds`
18
+ #
19
+ # misardev:method builds.list
20
+ #
21
+ # @param query [Hash] optional query parameters (limit); nils are dropped
22
+ # @return [Hash, Array, String, nil] decoded JSON, a raw string, or nil
23
+ # @raise [MisarDev::MisarDevError]
24
+ def list(query = {})
25
+ @t.request("GET", "/builds", query: query)
26
+ end
27
+ end
28
+ end
29
+ end
@@ -0,0 +1,57 @@
1
+ # GENERATED by scripts/generate-sdk-resources.mjs from sdks/manifest.json.
2
+ # Do not edit by hand — change the route, run `pnpm sdk:sync`, and regenerate.
3
+ # frozen_string_literal: true
4
+
5
+ module MisarDev
6
+ module Generated
7
+ # The `chat` resource — 3 operation(s).
8
+ class ChatResource
9
+ def initialize(transport)
10
+ @t = transport
11
+ end
12
+
13
+ def inspect
14
+ "#<#{self.class.name}>"
15
+ end
16
+
17
+ # `POST /v1/chat/completions`
18
+ #
19
+ # misardev:method chat.completions
20
+ #
21
+ # @param body [Hash] JSON request body
22
+ # @return [Hash, Array, String, nil] decoded JSON, a raw string, or nil
23
+ # @raise [MisarDev::MisarDevError]
24
+ def completions(body = {})
25
+ @t.request("POST", "/v1/chat/completions", body: body)
26
+ end
27
+
28
+ # `POST /chat`
29
+ #
30
+ # Yields each Server-Sent Event as it arrives.
31
+ #
32
+ # misardev:stream chat.studioStream
33
+ #
34
+ # @param body [Hash] JSON request body
35
+ # @yieldparam event [MisarDev::StreamEvent]
36
+ # @return [Enumerator<MisarDev::StreamEvent>, nil] an Enumerator when no block is given
37
+ # @raise [MisarDev::MisarDevError]
38
+ def studio_stream(body = {}, &block)
39
+ @t.stream("POST", "/chat", body: body, terminator: nil, &block)
40
+ end
41
+
42
+ # `POST /v1/chat/completions`
43
+ #
44
+ # Sets `stream: true` for you and yields each chunk until `[DONE]`.
45
+ #
46
+ # misardev:stream chat.completionsStream
47
+ #
48
+ # @param body [Hash] JSON request body
49
+ # @yieldparam event [MisarDev::StreamEvent]
50
+ # @return [Enumerator<MisarDev::StreamEvent>, nil] an Enumerator when no block is given
51
+ # @raise [MisarDev::MisarDevError]
52
+ def completions_stream(body = {}, &block)
53
+ @t.stream("POST", "/v1/chat/completions", body: Core::Transport.force_stream(body), terminator: "[DONE]", &block)
54
+ end
55
+ end
56
+ end
57
+ end
@@ -0,0 +1,52 @@
1
+ # GENERATED by scripts/generate-sdk-resources.mjs from sdks/manifest.json.
2
+ # Do not edit by hand — change the route, run `pnpm sdk:sync`, and regenerate.
3
+ # frozen_string_literal: true
4
+
5
+ module MisarDev
6
+ module Generated
7
+ # The `checkpoints` resource — 3 operation(s).
8
+ class CheckpointsResource
9
+ def initialize(transport)
10
+ @t = transport
11
+ end
12
+
13
+ def inspect
14
+ "#<#{self.class.name}>"
15
+ end
16
+
17
+ # `DELETE /checkpoints/:id`
18
+ #
19
+ # misardev:method checkpoints.delete
20
+ #
21
+ # @param id [String] path parameter `id`
22
+ # @return [Hash, Array, String, nil] decoded JSON, a raw string, or nil
23
+ # @raise [MisarDev::MisarDevError]
24
+ def delete(id)
25
+ @t.request("DELETE", "/checkpoints/#{Core::Transport.segment(id)}")
26
+ end
27
+
28
+ # `POST /checkpoints/:id/restore`
29
+ #
30
+ # misardev:method checkpoints.restore
31
+ #
32
+ # @param id [String] path parameter `id`
33
+ # @return [Hash, Array, String, nil] decoded JSON, a raw string, or nil
34
+ # @raise [MisarDev::MisarDevError]
35
+ def restore(id)
36
+ @t.request("POST", "/checkpoints/#{Core::Transport.segment(id)}/restore")
37
+ end
38
+
39
+ # `PATCH /checkpoints/:id`
40
+ #
41
+ # misardev:method checkpoints.update
42
+ #
43
+ # @param id [String] path parameter `id`
44
+ # @param body [Hash] JSON request body
45
+ # @return [Hash, Array, String, nil] decoded JSON, a raw string, or nil
46
+ # @raise [MisarDev::MisarDevError]
47
+ def update(id, body = {})
48
+ @t.request("PATCH", "/checkpoints/#{Core::Transport.segment(id)}", body: body)
49
+ end
50
+ end
51
+ end
52
+ end
@@ -0,0 +1,106 @@
1
+ # GENERATED by scripts/generate-sdk-resources.mjs from sdks/manifest.json.
2
+ # Do not edit by hand — change the route, run `pnpm sdk:sync`, and regenerate.
3
+ # frozen_string_literal: true
4
+
5
+ module MisarDev
6
+ module Generated
7
+ # The `connectors` resource — 8 operation(s).
8
+ class ConnectorsResource
9
+ def initialize(transport)
10
+ @t = transport
11
+ end
12
+
13
+ def inspect
14
+ "#<#{self.class.name}>"
15
+ end
16
+
17
+ # `GET /connectors/available`
18
+ #
19
+ # misardev:method connectors.available
20
+ #
21
+ # @return [Hash, Array, String, nil] decoded JSON, a raw string, or nil
22
+ # @raise [MisarDev::MisarDevError]
23
+ def available
24
+ @t.request("GET", "/connectors/available")
25
+ end
26
+
27
+ # `POST /connectors/connections`
28
+ #
29
+ # misardev:method connectors.createConnection
30
+ #
31
+ # @param body [Hash] JSON request body
32
+ # @return [Hash, Array, String, nil] decoded JSON, a raw string, or nil
33
+ # @raise [MisarDev::MisarDevError]
34
+ def create_connection(body = {})
35
+ @t.request("POST", "/connectors/connections", body: body)
36
+ end
37
+
38
+ # `DELETE /connectors/connections/:id`
39
+ #
40
+ # misardev:method connectors.deleteConnection
41
+ #
42
+ # @param id [String] path parameter `id`
43
+ # @return [Hash, Array, String, nil] decoded JSON, a raw string, or nil
44
+ # @raise [MisarDev::MisarDevError]
45
+ def delete_connection(id)
46
+ @t.request("DELETE", "/connectors/connections/#{Core::Transport.segment(id)}")
47
+ end
48
+
49
+ # `GET /connectors`
50
+ #
51
+ # misardev:method connectors.list
52
+ #
53
+ # @return [Hash, Array, String, nil] decoded JSON, a raw string, or nil
54
+ # @raise [MisarDev::MisarDevError]
55
+ def list
56
+ @t.request("GET", "/connectors")
57
+ end
58
+
59
+ # `GET /connectors/connections`
60
+ #
61
+ # misardev:method connectors.listConnections
62
+ #
63
+ # @param query [Hash] optional query parameters (projectId); nils are dropped
64
+ # @return [Hash, Array, String, nil] decoded JSON, a raw string, or nil
65
+ # @raise [MisarDev::MisarDevError]
66
+ def list_connections(query = {})
67
+ @t.request("GET", "/connectors/connections", query: query)
68
+ end
69
+
70
+ # `POST /connectors/connections/:id/test`
71
+ #
72
+ # misardev:method connectors.testConnection
73
+ #
74
+ # @param id [String] path parameter `id`
75
+ # @return [Hash, Array, String, nil] decoded JSON, a raw string, or nil
76
+ # @raise [MisarDev::MisarDevError]
77
+ def test_connection(id)
78
+ @t.request("POST", "/connectors/connections/#{Core::Transport.segment(id)}/test")
79
+ end
80
+
81
+ # `POST /connectors/:slug/toggle`
82
+ #
83
+ # misardev:method connectors.toggle
84
+ #
85
+ # @param slug [String] path parameter `slug`
86
+ # @param body [Hash] JSON request body
87
+ # @return [Hash, Array, String, nil] decoded JSON, a raw string, or nil
88
+ # @raise [MisarDev::MisarDevError]
89
+ def toggle(slug, body = {})
90
+ @t.request("POST", "/connectors/#{Core::Transport.segment(slug)}/toggle", body: body)
91
+ end
92
+
93
+ # `PATCH /connectors/connections/:id`
94
+ #
95
+ # misardev:method connectors.updateConnection
96
+ #
97
+ # @param id [String] path parameter `id`
98
+ # @param body [Hash] JSON request body
99
+ # @return [Hash, Array, String, nil] decoded JSON, a raw string, or nil
100
+ # @raise [MisarDev::MisarDevError]
101
+ def update_connection(id, body = {})
102
+ @t.request("PATCH", "/connectors/connections/#{Core::Transport.segment(id)}", body: body)
103
+ end
104
+ end
105
+ end
106
+ end
@@ -0,0 +1,29 @@
1
+ # GENERATED by scripts/generate-sdk-resources.mjs from sdks/manifest.json.
2
+ # Do not edit by hand — change the route, run `pnpm sdk:sync`, and regenerate.
3
+ # frozen_string_literal: true
4
+
5
+ module MisarDev
6
+ module Generated
7
+ # The `domains` resource — 1 operation(s).
8
+ class DomainsResource
9
+ def initialize(transport)
10
+ @t = transport
11
+ end
12
+
13
+ def inspect
14
+ "#<#{self.class.name}>"
15
+ end
16
+
17
+ # `GET /domains/lookup`
18
+ #
19
+ # misardev:method domains.lookup
20
+ #
21
+ # @param domain [String, Numeric, Boolean] required query parameter `domain`
22
+ # @return [Hash, Array, String, nil] decoded JSON, a raw string, or nil
23
+ # @raise [MisarDev::MisarDevError]
24
+ def lookup(domain)
25
+ @t.request("GET", "/domains/lookup", query: { "domain" => domain })
26
+ end
27
+ end
28
+ end
29
+ end
@@ -0,0 +1,53 @@
1
+ # GENERATED by scripts/generate-sdk-resources.mjs from sdks/manifest.json.
2
+ # Do not edit by hand — change the route, run `pnpm sdk:sync`, and regenerate.
3
+ # frozen_string_literal: true
4
+
5
+ module MisarDev
6
+ module Generated
7
+ # The `gallery` resource — 3 operation(s).
8
+ class GalleryResource
9
+ def initialize(transport)
10
+ @t = transport
11
+ end
12
+
13
+ def inspect
14
+ "#<#{self.class.name}>"
15
+ end
16
+
17
+ # `POST /gallery/:projectId/like`
18
+ #
19
+ # misardev:method gallery.like
20
+ #
21
+ # @param project_id [String] path parameter `projectId`
22
+ # @return [Hash, Array, String, nil] decoded JSON, a raw string, or nil
23
+ # @raise [MisarDev::MisarDevError]
24
+ def like(project_id)
25
+ @t.request("POST", "/gallery/#{Core::Transport.segment(project_id)}/like")
26
+ end
27
+
28
+ # `GET /gallery`
29
+ #
30
+ # Public — works without a key, but the client still sends it.
31
+ #
32
+ # misardev:method gallery.list
33
+ #
34
+ # @param query [Hash] optional query parameters (limit, offset, q, search); nils are dropped
35
+ # @return [Hash, Array, String, nil] decoded JSON, a raw string, or nil
36
+ # @raise [MisarDev::MisarDevError]
37
+ def list(query = {})
38
+ @t.request("GET", "/gallery", query: query)
39
+ end
40
+
41
+ # `DELETE /gallery/:projectId/like`
42
+ #
43
+ # misardev:method gallery.unlike
44
+ #
45
+ # @param project_id [String] path parameter `projectId`
46
+ # @return [Hash, Array, String, nil] decoded JSON, a raw string, or nil
47
+ # @raise [MisarDev::MisarDevError]
48
+ def unlike(project_id)
49
+ @t.request("DELETE", "/gallery/#{Core::Transport.segment(project_id)}/like")
50
+ end
51
+ end
52
+ end
53
+ end
@@ -0,0 +1,38 @@
1
+ # GENERATED by scripts/generate-sdk-resources.mjs from sdks/manifest.json.
2
+ # Do not edit by hand — change the route, run `pnpm sdk:sync`, and regenerate.
3
+ # frozen_string_literal: true
4
+
5
+ module MisarDev
6
+ module Generated
7
+ # The `github` resource — 2 operation(s).
8
+ class GithubResource
9
+ def initialize(transport)
10
+ @t = transport
11
+ end
12
+
13
+ def inspect
14
+ "#<#{self.class.name}>"
15
+ end
16
+
17
+ # `DELETE /github/connection`
18
+ #
19
+ # misardev:method github.disconnect
20
+ #
21
+ # @return [Hash, Array, String, nil] decoded JSON, a raw string, or nil
22
+ # @raise [MisarDev::MisarDevError]
23
+ def disconnect
24
+ @t.request("DELETE", "/github/connection")
25
+ end
26
+
27
+ # `GET /github/connection`
28
+ #
29
+ # misardev:method github.getConnection
30
+ #
31
+ # @return [Hash, Array, String, nil] decoded JSON, a raw string, or nil
32
+ # @raise [MisarDev::MisarDevError]
33
+ def get_connection
34
+ @t.request("GET", "/github/connection")
35
+ end
36
+ end
37
+ end
38
+ end
@@ -0,0 +1,52 @@
1
+ # GENERATED by scripts/generate-sdk-resources.mjs from sdks/manifest.json.
2
+ # Do not edit by hand — change the route, run `pnpm sdk:sync`, and regenerate.
3
+ # frozen_string_literal: true
4
+
5
+ module MisarDev
6
+ module Generated
7
+ # The `notifications` resource — 3 operation(s).
8
+ class NotificationsResource
9
+ def initialize(transport)
10
+ @t = transport
11
+ end
12
+
13
+ def inspect
14
+ "#<#{self.class.name}>"
15
+ end
16
+
17
+ # `GET /notifications`
18
+ #
19
+ # misardev:method notifications.list
20
+ #
21
+ # @param query [Hash] optional query parameters (before, count); nils are dropped
22
+ # @return [Hash, Array, String, nil] decoded JSON, a raw string, or nil
23
+ # @raise [MisarDev::MisarDevError]
24
+ def list(query = {})
25
+ @t.request("GET", "/notifications", query: query)
26
+ end
27
+
28
+ # `PATCH /notifications`
29
+ #
30
+ # misardev:method notifications.markAllRead
31
+ #
32
+ # @param body [Hash] JSON request body
33
+ # @return [Hash, Array, String, nil] decoded JSON, a raw string, or nil
34
+ # @raise [MisarDev::MisarDevError]
35
+ def mark_all_read(body = {})
36
+ @t.request("PATCH", "/notifications", body: body)
37
+ end
38
+
39
+ # `PATCH /notifications/:id`
40
+ #
41
+ # misardev:method notifications.markRead
42
+ #
43
+ # @param id [String] path parameter `id`
44
+ # @param body [Hash] JSON request body
45
+ # @return [Hash, Array, String, nil] decoded JSON, a raw string, or nil
46
+ # @raise [MisarDev::MisarDevError]
47
+ def mark_read(id, body = {})
48
+ @t.request("PATCH", "/notifications/#{Core::Transport.segment(id)}", body: body)
49
+ end
50
+ end
51
+ end
52
+ end
@@ -0,0 +1,120 @@
1
+ # GENERATED by scripts/generate-sdk-resources.mjs from sdks/manifest.json.
2
+ # Do not edit by hand — change the route, run `pnpm sdk:sync`, and regenerate.
3
+ # frozen_string_literal: true
4
+
5
+ module MisarDev
6
+ module Generated
7
+ # The `organizations` resource — 9 operation(s).
8
+ class OrganizationsResource
9
+ def initialize(transport)
10
+ @t = transport
11
+ end
12
+
13
+ def inspect
14
+ "#<#{self.class.name}>"
15
+ end
16
+
17
+ # `POST /invitations/accept`
18
+ #
19
+ # misardev:method organizations.acceptInvitation
20
+ #
21
+ # @param body [Hash] JSON request body
22
+ # @return [Hash, Array, String, nil] decoded JSON, a raw string, or nil
23
+ # @raise [MisarDev::MisarDevError]
24
+ def accept_invitation(body = {})
25
+ @t.request("POST", "/invitations/accept", body: body)
26
+ end
27
+
28
+ # `POST /organizations`
29
+ #
30
+ # misardev:method organizations.create
31
+ #
32
+ # @param body [Hash] JSON request body
33
+ # @return [Hash, Array, String, nil] decoded JSON, a raw string, or nil
34
+ # @raise [MisarDev::MisarDevError]
35
+ def create(body = {})
36
+ @t.request("POST", "/organizations", body: body)
37
+ end
38
+
39
+ # `POST /organizations/:id/invitations`
40
+ #
41
+ # misardev:method organizations.createInvitation
42
+ #
43
+ # @param id [String] path parameter `id`
44
+ # @param body [Hash] JSON request body
45
+ # @return [Hash, Array, String, nil] decoded JSON, a raw string, or nil
46
+ # @raise [MisarDev::MisarDevError]
47
+ def create_invitation(id, body = {})
48
+ @t.request("POST", "/organizations/#{Core::Transport.segment(id)}/invitations", body: body)
49
+ end
50
+
51
+ # `GET /organizations`
52
+ #
53
+ # misardev:method organizations.list
54
+ #
55
+ # @return [Hash, Array, String, nil] decoded JSON, a raw string, or nil
56
+ # @raise [MisarDev::MisarDevError]
57
+ def list
58
+ @t.request("GET", "/organizations")
59
+ end
60
+
61
+ # `GET /organizations/:id/invitations`
62
+ #
63
+ # misardev:method organizations.listInvitations
64
+ #
65
+ # @param id [String] path parameter `id`
66
+ # @return [Hash, Array, String, nil] decoded JSON, a raw string, or nil
67
+ # @raise [MisarDev::MisarDevError]
68
+ def list_invitations(id)
69
+ @t.request("GET", "/organizations/#{Core::Transport.segment(id)}/invitations")
70
+ end
71
+
72
+ # `GET /organizations/:id/members`
73
+ #
74
+ # misardev:method organizations.listMembers
75
+ #
76
+ # @param id [String] path parameter `id`
77
+ # @return [Hash, Array, String, nil] decoded JSON, a raw string, or nil
78
+ # @raise [MisarDev::MisarDevError]
79
+ def list_members(id)
80
+ @t.request("GET", "/organizations/#{Core::Transport.segment(id)}/members")
81
+ end
82
+
83
+ # `DELETE /organizations/:id/members`
84
+ #
85
+ # misardev:method organizations.removeMember
86
+ #
87
+ # @param id [String] path parameter `id`
88
+ # @param user_id [String, Numeric, Boolean] required query parameter `userId`
89
+ # @return [Hash, Array, String, nil] decoded JSON, a raw string, or nil
90
+ # @raise [MisarDev::MisarDevError]
91
+ def remove_member(id, user_id)
92
+ @t.request("DELETE", "/organizations/#{Core::Transport.segment(id)}/members", query: { "userId" => user_id })
93
+ end
94
+
95
+ # `DELETE /organizations/:id/invitations`
96
+ #
97
+ # misardev:method organizations.revokeInvitation
98
+ #
99
+ # @param id [String] path parameter `id`
100
+ # @param invitation_id [String, Numeric, Boolean] required query parameter `invitationId`
101
+ # @return [Hash, Array, String, nil] decoded JSON, a raw string, or nil
102
+ # @raise [MisarDev::MisarDevError]
103
+ def revoke_invitation(id, invitation_id)
104
+ @t.request("DELETE", "/organizations/#{Core::Transport.segment(id)}/invitations", query: { "invitationId" => invitation_id })
105
+ end
106
+
107
+ # `PATCH /organizations/:id/members`
108
+ #
109
+ # misardev:method organizations.updateMember
110
+ #
111
+ # @param id [String] path parameter `id`
112
+ # @param body [Hash] JSON request body
113
+ # @return [Hash, Array, String, nil] decoded JSON, a raw string, or nil
114
+ # @raise [MisarDev::MisarDevError]
115
+ def update_member(id, body = {})
116
+ @t.request("PATCH", "/organizations/#{Core::Transport.segment(id)}/members", body: body)
117
+ end
118
+ end
119
+ end
120
+ end
@@ -0,0 +1,53 @@
1
+ # GENERATED by scripts/generate-sdk-resources.mjs from sdks/manifest.json.
2
+ # Do not edit by hand — change the route, run `pnpm sdk:sync`, and regenerate.
3
+ # frozen_string_literal: true
4
+
5
+ module MisarDev
6
+ module Generated
7
+ # The `profile` resource — 3 operation(s).
8
+ class ProfileResource
9
+ def initialize(transport)
10
+ @t = transport
11
+ end
12
+
13
+ def inspect
14
+ "#<#{self.class.name}>"
15
+ end
16
+
17
+ # `POST /follow/:handle`
18
+ #
19
+ # misardev:method profile.follow
20
+ #
21
+ # @param handle [String] path parameter `handle`
22
+ # @return [Hash, Array, String, nil] decoded JSON, a raw string, or nil
23
+ # @raise [MisarDev::MisarDevError]
24
+ def follow(handle)
25
+ @t.request("POST", "/follow/#{Core::Transport.segment(handle)}")
26
+ end
27
+
28
+ # `GET /profile/:handle`
29
+ #
30
+ # Public — works without a key, but the client still sends it.
31
+ #
32
+ # misardev:method profile.get
33
+ #
34
+ # @param handle [String] path parameter `handle`
35
+ # @return [Hash, Array, String, nil] decoded JSON, a raw string, or nil
36
+ # @raise [MisarDev::MisarDevError]
37
+ def get(handle)
38
+ @t.request("GET", "/profile/#{Core::Transport.segment(handle)}")
39
+ end
40
+
41
+ # `DELETE /follow/:handle`
42
+ #
43
+ # misardev:method profile.unfollow
44
+ #
45
+ # @param handle [String] path parameter `handle`
46
+ # @return [Hash, Array, String, nil] decoded JSON, a raw string, or nil
47
+ # @raise [MisarDev::MisarDevError]
48
+ def unfollow(handle)
49
+ @t.request("DELETE", "/follow/#{Core::Transport.segment(handle)}")
50
+ end
51
+ end
52
+ end
53
+ end