airbyte-source-github 1.6.0__py3-none-any.whl → 1.6.2__py3-none-any.whl

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.
Files changed (32) hide show
  1. airbyte_source_github-1.6.2.dist-info/METADATA +111 -0
  2. {airbyte_source_github-1.6.0.dist-info → airbyte_source_github-1.6.2.dist-info}/RECORD +17 -43
  3. {airbyte_source_github-1.6.0.dist-info → airbyte_source_github-1.6.2.dist-info}/WHEEL +1 -2
  4. airbyte_source_github-1.6.2.dist-info/entry_points.txt +3 -0
  5. airbyte_source_github-1.6.0.dist-info/METADATA +0 -144
  6. airbyte_source_github-1.6.0.dist-info/entry_points.txt +0 -2
  7. airbyte_source_github-1.6.0.dist-info/top_level.txt +0 -3
  8. integration_tests/__init__.py +0 -0
  9. integration_tests/abnormal_state.json +0 -237
  10. integration_tests/acceptance.py +0 -16
  11. integration_tests/configured_catalog.json +0 -435
  12. integration_tests/configured_catalog_full_refresh_test.json +0 -415
  13. integration_tests/invalid_config.json +0 -5
  14. integration_tests/sample_config.json +0 -5
  15. integration_tests/sample_state.json +0 -137
  16. unit_tests/__init__.py +0 -3
  17. unit_tests/conftest.py +0 -29
  18. unit_tests/projects_v2_pull_requests_query.json +0 -3
  19. unit_tests/pull_request_stats_query.json +0 -3
  20. unit_tests/responses/contributor_activity_response.json +0 -33
  21. unit_tests/responses/graphql_reviews_responses.json +0 -405
  22. unit_tests/responses/issue_timeline_events.json +0 -166
  23. unit_tests/responses/issue_timeline_events_response.json +0 -170
  24. unit_tests/responses/projects_v2_response.json +0 -45
  25. unit_tests/responses/pull_request_comment_reactions.json +0 -744
  26. unit_tests/responses/pull_request_stats_response.json +0 -317
  27. unit_tests/test_migrations/test_config.json +0 -8
  28. unit_tests/test_migrations/test_new_config.json +0 -8
  29. unit_tests/test_multiple_token_authenticator.py +0 -163
  30. unit_tests/test_source.py +0 -331
  31. unit_tests/test_stream.py +0 -1471
  32. unit_tests/utils.py +0 -78
@@ -1,415 +0,0 @@
1
- {
2
- "streams": [
3
- {
4
- "stream": {
5
- "name": "assignees",
6
- "json_schema": {},
7
- "supported_sync_modes": ["full_refresh"],
8
- "source_defined_primary_key": [["id"]]
9
- },
10
- "sync_mode": "full_refresh",
11
- "destination_sync_mode": "overwrite"
12
- },
13
- {
14
- "stream": {
15
- "name": "branches",
16
- "json_schema": {},
17
- "supported_sync_modes": ["full_refresh"],
18
- "source_defined_primary_key": [["repository"], ["name"]]
19
- },
20
- "sync_mode": "full_refresh",
21
- "destination_sync_mode": "overwrite"
22
- },
23
- {
24
- "stream": {
25
- "name": "collaborators",
26
- "json_schema": {},
27
- "supported_sync_modes": ["full_refresh"],
28
- "source_defined_primary_key": [["id"]]
29
- },
30
- "sync_mode": "full_refresh",
31
- "destination_sync_mode": "overwrite"
32
- },
33
- {
34
- "stream": {
35
- "name": "comments",
36
- "json_schema": {},
37
- "supported_sync_modes": ["full_refresh", "incremental"],
38
- "source_defined_cursor": true,
39
- "default_cursor_field": ["updated_at"],
40
- "source_defined_primary_key": [["id"]]
41
- },
42
- "sync_mode": "incremental",
43
- "destination_sync_mode": "append",
44
- "cursor_field": ["updated_at"]
45
- },
46
- {
47
- "stream": {
48
- "name": "commit_comment_reactions",
49
- "json_schema": {},
50
- "supported_sync_modes": ["full_refresh", "incremental"],
51
- "source_defined_primary_key": [["id"]]
52
- },
53
- "sync_mode": "incremental",
54
- "destination_sync_mode": "overwrite"
55
- },
56
- {
57
- "stream": {
58
- "name": "commit_comments",
59
- "json_schema": {},
60
- "supported_sync_modes": ["full_refresh", "incremental"],
61
- "source_defined_cursor": true,
62
- "default_cursor_field": ["updated_at"],
63
- "source_defined_primary_key": [["id"]]
64
- },
65
- "sync_mode": "incremental",
66
- "destination_sync_mode": "append",
67
- "cursor_field": ["updated_at"]
68
- },
69
- {
70
- "stream": {
71
- "name": "commits",
72
- "json_schema": {},
73
- "supported_sync_modes": ["full_refresh", "incremental"],
74
- "source_defined_cursor": true,
75
- "default_cursor_field": ["created_at"],
76
- "source_defined_primary_key": [["sha"]]
77
- },
78
- "sync_mode": "incremental",
79
- "destination_sync_mode": "append",
80
- "cursor_field": ["created_at"]
81
- },
82
- {
83
- "stream": {
84
- "name": "contributor_activity",
85
- "json_schema": {},
86
- "supported_sync_modes": ["full_refresh"],
87
- "source_defined_primary_key": [["id"]]
88
- },
89
- "sync_mode": "full_refresh",
90
- "destination_sync_mode": "overwrite"
91
- },
92
- {
93
- "stream": {
94
- "name": "deployments",
95
- "json_schema": {},
96
- "supported_sync_modes": ["full_refresh", "incremental"],
97
- "source_defined_cursor": true,
98
- "default_cursor_field": ["updated_at"],
99
- "source_defined_primary_key": [["id"]]
100
- },
101
- "sync_mode": "incremental",
102
- "destination_sync_mode": "append",
103
- "cursor_field": ["updated_at"]
104
- },
105
- {
106
- "stream": {
107
- "name": "events",
108
- "json_schema": {},
109
- "supported_sync_modes": ["full_refresh", "incremental"],
110
- "source_defined_cursor": true,
111
- "default_cursor_field": ["created_at"],
112
- "source_defined_primary_key": [["id"]]
113
- },
114
- "sync_mode": "incremental",
115
- "destination_sync_mode": "append",
116
- "cursor_field": ["created_at"]
117
- },
118
- {
119
- "stream": {
120
- "name": "issue_comment_reactions",
121
- "json_schema": {},
122
- "supported_sync_modes": ["full_refresh", "incremental"],
123
- "source_defined_primary_key": [["id"]]
124
- },
125
- "sync_mode": "incremental",
126
- "destination_sync_mode": "overwrite"
127
- },
128
- {
129
- "stream": {
130
- "name": "issue_events",
131
- "json_schema": {},
132
- "supported_sync_modes": ["full_refresh", "incremental"],
133
- "source_defined_cursor": true,
134
- "default_cursor_field": ["created_at"],
135
- "source_defined_primary_key": [["id"]]
136
- },
137
- "sync_mode": "incremental",
138
- "destination_sync_mode": "append",
139
- "cursor_field": ["created_at"]
140
- },
141
- {
142
- "stream": {
143
- "name": "issue_labels",
144
- "json_schema": {},
145
- "supported_sync_modes": ["full_refresh"],
146
- "source_defined_primary_key": [["id"]]
147
- },
148
- "sync_mode": "full_refresh",
149
- "destination_sync_mode": "overwrite"
150
- },
151
- {
152
- "stream": {
153
- "name": "issue_milestones",
154
- "json_schema": {},
155
- "supported_sync_modes": ["full_refresh", "incremental"],
156
- "source_defined_cursor": true,
157
- "default_cursor_field": ["updated_at"],
158
- "source_defined_primary_key": [["id"]]
159
- },
160
- "sync_mode": "incremental",
161
- "destination_sync_mode": "append",
162
- "cursor_field": ["updated_at"]
163
- },
164
- {
165
- "stream": {
166
- "name": "issue_reactions",
167
- "json_schema": {},
168
- "supported_sync_modes": ["full_refresh", "incremental"],
169
- "source_defined_primary_key": [["id"]]
170
- },
171
- "sync_mode": "incremental",
172
- "destination_sync_mode": "overwrite"
173
- },
174
- {
175
- "stream": {
176
- "name": "issues",
177
- "json_schema": {},
178
- "supported_sync_modes": ["full_refresh", "incremental"],
179
- "source_defined_cursor": true,
180
- "default_cursor_field": ["updated_at"],
181
- "source_defined_primary_key": [["id"]]
182
- },
183
- "sync_mode": "incremental",
184
- "destination_sync_mode": "append",
185
- "cursor_field": ["updated_at"]
186
- },
187
- {
188
- "stream": {
189
- "name": "organizations",
190
- "json_schema": {},
191
- "supported_sync_modes": ["full_refresh"],
192
- "source_defined_primary_key": [["id"]]
193
- },
194
- "sync_mode": "full_refresh",
195
- "destination_sync_mode": "overwrite"
196
- },
197
- {
198
- "stream": {
199
- "name": "project_cards",
200
- "json_schema": {},
201
- "supported_sync_modes": ["full_refresh", "incremental"],
202
- "source_defined_cursor": true,
203
- "default_cursor_field": ["updated_at"],
204
- "source_defined_primary_key": [["id"]]
205
- },
206
- "sync_mode": "incremental",
207
- "destination_sync_mode": "append",
208
- "cursor_field": ["updated_at"]
209
- },
210
- {
211
- "stream": {
212
- "name": "project_columns",
213
- "json_schema": {},
214
- "supported_sync_modes": ["full_refresh", "incremental"],
215
- "source_defined_cursor": true,
216
- "default_cursor_field": ["updated_at"],
217
- "source_defined_primary_key": [["id"]]
218
- },
219
- "sync_mode": "incremental",
220
- "destination_sync_mode": "append",
221
- "cursor_field": ["updated_at"]
222
- },
223
- {
224
- "stream": {
225
- "name": "projects",
226
- "json_schema": {},
227
- "supported_sync_modes": ["full_refresh", "incremental"],
228
- "source_defined_cursor": true,
229
- "default_cursor_field": ["updated_at"],
230
- "source_defined_primary_key": [["id"]]
231
- },
232
- "sync_mode": "incremental",
233
- "destination_sync_mode": "append",
234
- "cursor_field": ["updated_at"]
235
- },
236
- {
237
- "stream": {
238
- "name": "pull_request_comment_reactions",
239
- "json_schema": {},
240
- "supported_sync_modes": ["full_refresh", "incremental"],
241
- "source_defined_primary_key": [["id"]]
242
- },
243
- "sync_mode": "incremental",
244
- "destination_sync_mode": "overwrite"
245
- },
246
- {
247
- "stream": {
248
- "name": "pull_request_commits",
249
- "json_schema": {},
250
- "supported_sync_modes": ["full_refresh"],
251
- "source_defined_primary_key": [["sha"]]
252
- },
253
- "sync_mode": "full_refresh",
254
- "destination_sync_mode": "overwrite"
255
- },
256
- {
257
- "stream": {
258
- "name": "pull_request_stats",
259
- "json_schema": {},
260
- "supported_sync_modes": ["full_refresh", "incremental"],
261
- "source_defined_cursor": true,
262
- "default_cursor_field": ["updated_at"],
263
- "source_defined_primary_key": [["id"]]
264
- },
265
- "sync_mode": "incremental",
266
- "destination_sync_mode": "append",
267
- "cursor_field": ["updated_at"]
268
- },
269
- {
270
- "stream": {
271
- "name": "pull_requests",
272
- "json_schema": {},
273
- "supported_sync_modes": ["full_refresh", "incremental"],
274
- "source_defined_cursor": true,
275
- "default_cursor_field": ["updated_at"],
276
- "source_defined_primary_key": [["id"]]
277
- },
278
- "sync_mode": "incremental",
279
- "destination_sync_mode": "append",
280
- "cursor_field": ["updated_at"]
281
- },
282
- {
283
- "stream": {
284
- "name": "releases",
285
- "json_schema": {},
286
- "supported_sync_modes": ["full_refresh", "incremental"],
287
- "source_defined_cursor": true,
288
- "default_cursor_field": ["created_at"],
289
- "source_defined_primary_key": [["id"]]
290
- },
291
- "sync_mode": "incremental",
292
- "destination_sync_mode": "append",
293
- "cursor_field": ["created_at"]
294
- },
295
- {
296
- "stream": {
297
- "name": "repositories",
298
- "json_schema": {},
299
- "supported_sync_modes": ["full_refresh", "incremental"],
300
- "source_defined_primary_key": [["id"]]
301
- },
302
- "sync_mode": "incremental",
303
- "destination_sync_mode": "overwrite"
304
- },
305
- {
306
- "stream": {
307
- "name": "review_comments",
308
- "json_schema": {},
309
- "supported_sync_modes": ["full_refresh", "incremental"],
310
- "source_defined_cursor": true,
311
- "default_cursor_field": ["updated_at"],
312
- "source_defined_primary_key": [["id"]]
313
- },
314
- "sync_mode": "incremental",
315
- "destination_sync_mode": "append",
316
- "cursor_field": ["updated_at"]
317
- },
318
- {
319
- "stream": {
320
- "name": "reviews",
321
- "json_schema": {},
322
- "supported_sync_modes": ["full_refresh", "incremental"],
323
- "source_defined_cursor": true,
324
- "default_cursor_field": ["updated_at"],
325
- "source_defined_primary_key": [["id"]]
326
- },
327
- "sync_mode": "incremental",
328
- "destination_sync_mode": "append",
329
- "cursor_field": ["updated_at"]
330
- },
331
- {
332
- "stream": {
333
- "name": "stargazers",
334
- "json_schema": {},
335
- "supported_sync_modes": ["full_refresh", "incremental"],
336
- "source_defined_cursor": true,
337
- "default_cursor_field": ["starred_at"],
338
- "source_defined_primary_key": [["user_id"]]
339
- },
340
- "sync_mode": "incremental",
341
- "destination_sync_mode": "append",
342
- "cursor_field": ["starred_at"]
343
- },
344
- {
345
- "stream": {
346
- "name": "tags",
347
- "json_schema": {},
348
- "supported_sync_modes": ["full_refresh"],
349
- "source_defined_primary_key": [["repository"], ["name"]]
350
- },
351
- "sync_mode": "full_refresh",
352
- "destination_sync_mode": "overwrite"
353
- },
354
- {
355
- "stream": {
356
- "name": "teams",
357
- "json_schema": {},
358
- "supported_sync_modes": ["full_refresh"],
359
- "source_defined_primary_key": [["id"]]
360
- },
361
- "sync_mode": "full_refresh",
362
- "destination_sync_mode": "overwrite"
363
- },
364
- {
365
- "stream": {
366
- "name": "users",
367
- "json_schema": {},
368
- "supported_sync_modes": ["full_refresh"],
369
- "source_defined_primary_key": [["id"]]
370
- },
371
- "sync_mode": "full_refresh",
372
- "destination_sync_mode": "overwrite"
373
- },
374
- {
375
- "stream": {
376
- "name": "workflows",
377
- "json_schema": {},
378
- "supported_sync_modes": ["full_refresh", "incremental"],
379
- "source_defined_primary_key": [["id"]]
380
- },
381
- "sync_mode": "incremental",
382
- "destination_sync_mode": "overwrite"
383
- },
384
- {
385
- "stream": {
386
- "name": "workflow_runs",
387
- "json_schema": {},
388
- "supported_sync_modes": ["full_refresh", "incremental"],
389
- "source_defined_primary_key": [["id"]]
390
- },
391
- "sync_mode": "incremental",
392
- "destination_sync_mode": "overwrite"
393
- },
394
- {
395
- "stream": {
396
- "name": "workflow_jobs",
397
- "json_schema": {},
398
- "supported_sync_modes": ["full_refresh", "incremental"],
399
- "source_defined_primary_key": [["id"]]
400
- },
401
- "sync_mode": "incremental",
402
- "destination_sync_mode": "overwrite"
403
- },
404
- {
405
- "stream": {
406
- "name": "team_members",
407
- "json_schema": {},
408
- "supported_sync_modes": ["full_refresh"],
409
- "source_defined_primary_key": [["id"], ["team_slug"]]
410
- },
411
- "sync_mode": "full_refresh",
412
- "destination_sync_mode": "overwrite"
413
- }
414
- ]
415
- }
@@ -1,5 +0,0 @@
1
- {
2
- "credentials": { "access_token": "WRONG KEY" },
3
- "repository": "airbytehq/integration-test",
4
- "start_date": "2021-06-30T11:30:03Z"
5
- }
@@ -1,5 +0,0 @@
1
- {
2
- "access_token": "<user's_access_token>",
3
- "repository": "<your_repository>",
4
- "start_date": "2021-06-29T03:46:25Z"
5
- }
@@ -1,137 +0,0 @@
1
- [
2
- {
3
- "type": "STREAM",
4
- "stream": {
5
- "stream_state": {
6
- "airbytehq/integration-test": { "updated_at": "2021-04-30T20:36:17Z" }
7
- },
8
- "stream_descriptor": { "name": "commit_comments" }
9
- }
10
- },
11
- {
12
- "type": "STREAM",
13
- "stream": {
14
- "stream_state": {
15
- "airbytehq/integration-test": { "updated_at": "2021-06-28T17:24:51Z" }
16
- },
17
- "stream_descriptor": { "name": "projects" }
18
- }
19
- },
20
- {
21
- "type": "STREAM",
22
- "stream": {
23
- "stream_state": {
24
- "airbytehq/integration-test": { "starred_at": "2021-06-29T02:04:57Z" }
25
- },
26
- "stream_descriptor": { "name": "stargazers" }
27
- }
28
- },
29
- {
30
- "type": "STREAM",
31
- "stream": {
32
- "stream_state": {
33
- "airbytehq/integration-test": { "created_at": "2021-06-29T03:44:45Z" }
34
- },
35
- "stream_descriptor": { "name": "events" }
36
- }
37
- },
38
- {
39
- "type": "STREAM",
40
- "stream": {
41
- "stream_state": {
42
- "airbytehq/integration-test": { "created_at": "2021-06-29T01:49:42Z" }
43
- },
44
- "stream_descriptor": { "name": "issue_events" }
45
- }
46
- },
47
- {
48
- "type": "STREAM",
49
- "stream": {
50
- "stream_state": {
51
- "airbytehq/integration-test": { "created_at": "2021-06-23T23:57:07Z" }
52
- },
53
- "stream_descriptor": { "name": "releases" }
54
- }
55
- },
56
- {
57
- "type": "STREAM",
58
- "stream": {
59
- "stream_state": {
60
- "airbytehq/integration-test": { "updated_at": "2021-08-30T12:01:15Z" }
61
- },
62
- "stream_descriptor": { "name": "pull_request_stats" }
63
- }
64
- },
65
- {
66
- "type": "STREAM",
67
- "stream": {
68
- "stream_state": {
69
- "airbytehq/integration-test": { "updated_at": "2021-06-28T23:36:35Z" }
70
- },
71
- "stream_descriptor": { "name": "pull_requests" }
72
- }
73
- },
74
- {
75
- "type": "STREAM",
76
- "stream": {
77
- "stream_state": {
78
- "airbytehq/integration-test": { "updated_at": "2021-06-25T22:28:33Z" }
79
- },
80
- "stream_descriptor": { "name": "issue_milestones" }
81
- }
82
- },
83
- {
84
- "type": "STREAM",
85
- "stream": {
86
- "stream_state": {
87
- "airbytehq/integration-test": { "updated_at": "2021-06-30T11:32:49Z" }
88
- },
89
- "stream_descriptor": { "name": "issues" }
90
- }
91
- },
92
- {
93
- "type": "STREAM",
94
- "stream": {
95
- "stream_state": {
96
- "airbytehq/integration-test": { "updated_at": "2021-06-30T10:22:10Z" }
97
- },
98
- "stream_descriptor": { "name": "comments" }
99
- }
100
- },
101
- {
102
- "type": "STREAM",
103
- "stream": {
104
- "stream_state": {
105
- "airbytehq/integration-test": { "created_at": "2021-06-30T10:04:41Z" }
106
- },
107
- "stream_descriptor": { "name": "commits" }
108
- }
109
- },
110
- {
111
- "type": "STREAM",
112
- "stream": {
113
- "stream_state": {
114
- "airbytehq/integration-test": { "updated_at": "2021-08-30T12:01:15Z" }
115
- },
116
- "stream_descriptor": { "name": "reviews" }
117
- }
118
- },
119
- {
120
- "type": "STREAM",
121
- "stream": {
122
- "stream_state": {
123
- "airbytehq/integration-test": { "completed_at": "2021-08-30T12:01:15Z" }
124
- },
125
- "stream_descriptor": { "name": "workflow_runs" }
126
- }
127
- },
128
- {
129
- "type": "STREAM",
130
- "stream": {
131
- "stream_state": {
132
- "airbytehq/integration-test": { "completed_at": "2021-08-30T12:01:15Z" }
133
- },
134
- "stream_descriptor": { "name": "workflow_jobs" }
135
- }
136
- }
137
- ]
unit_tests/__init__.py DELETED
@@ -1,3 +0,0 @@
1
- #
2
- # Copyright (c) 2021 Airbyte, Inc., all rights reserved.
3
- #
unit_tests/conftest.py DELETED
@@ -1,29 +0,0 @@
1
- # Copyright (c) 2023 Airbyte, Inc., all rights reserved.
2
-
3
- import os
4
-
5
- import pytest
6
- import responses
7
-
8
- os.environ["REQUEST_CACHE_PATH"] = "REQUEST_CACHE_PATH"
9
-
10
-
11
- @pytest.fixture(name="rate_limit_mock_response")
12
- def rate_limit_mock_response():
13
- rate_limit_response = {
14
- "resources": {
15
- "core": {
16
- "limit": 5000,
17
- "used": 0,
18
- "remaining": 5000,
19
- "reset": 4070908800
20
- },
21
- "graphql": {
22
- "limit": 5000,
23
- "used": 0,
24
- "remaining": 5000,
25
- "reset": 4070908800
26
- }
27
- }
28
- }
29
- responses.add(responses.GET, "https://api.github.com/rate_limit", json=rate_limit_response)
@@ -1,3 +0,0 @@
1
- {
2
- "query": "query {\n repository(owner: \"airbytehq\", name: \"airbyte\") {\n name\n owner {\n login\n }\n projectsV2(first: 100, orderBy: {field: UPDATED_AT, direction: ASC}) {\n nodes {\n closed\n created_at: createdAt\n closed_at: closedAt\n updated_at: updatedAt\n creator: creator {\n avatarUrl\n login\n resourcePath\n url\n }\n node_id: id\n id: databaseId\n number\n public\n readme: readme\n short_description: shortDescription\n template\n title: title\n url: url\n viewerCanClose\n viewerCanReopen\n viewerCanUpdate\n owner {\n id: id\n }\n }\n pageInfo {\n hasNextPage\n endCursor\n }\n }\n }\n}"
3
- }
@@ -1,3 +0,0 @@
1
- {
2
- "query": "query {\n repository(owner: \"airbytehq\", name: \"airbyte\") {\n name\n owner {\n login\n }\n pullRequests(first: 10, orderBy: {field: UPDATED_AT, direction: ASC}) {\n nodes {\n node_id: id\n id: databaseId\n number\n updated_at: updatedAt\n changed_files: changedFiles\n deletions\n additions\n merged\n mergeable\n can_be_rebased: canBeRebased\n maintainer_can_modify: maintainerCanModify\n merge_state_status: mergeStateStatus\n comments {\n totalCount\n }\n commits {\n totalCount\n }\n review_comments: reviews(first: 100) {\n totalCount\n nodes {\n comments {\n totalCount\n }\n }\n }\n merged_by: mergedBy {\n __typename\n ... on User {\n node_id: id\n id: databaseId\n login\n avatar_url: avatarUrl\n html_url: url\n site_admin: isSiteAdmin\n }\n }\n }\n pageInfo {\n hasNextPage\n endCursor\n }\n }\n }\n}"
3
- }
@@ -1,33 +0,0 @@
1
- [
2
- {
3
- "author": {
4
- "login": "octocat",
5
- "id": 1,
6
- "node_id": "MDQ6VXNlcjE=",
7
- "avatar_url": "https://github.com/images/error/octocat_happy.gif",
8
- "gravatar_id": "",
9
- "url": "https://api.github.com/users/octocat",
10
- "html_url": "https://github.com/octocat",
11
- "followers_url": "https://api.github.com/users/octocat/followers",
12
- "following_url": "https://api.github.com/users/octocat/following{/other_user}",
13
- "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}",
14
- "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}",
15
- "subscriptions_url": "https://api.github.com/users/octocat/subscriptions",
16
- "organizations_url": "https://api.github.com/users/octocat/orgs",
17
- "repos_url": "https://api.github.com/users/octocat/repos",
18
- "events_url": "https://api.github.com/users/octocat/events{/privacy}",
19
- "received_events_url": "https://api.github.com/users/octocat/received_events",
20
- "type": "User",
21
- "site_admin": false
22
- },
23
- "total": 135,
24
- "weeks": [
25
- {
26
- "w": 1367712000,
27
- "a": 6898,
28
- "d": 77,
29
- "c": 10
30
- }
31
- ]
32
- }
33
- ]