project.json 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548
  1. {
  2. "Project": {
  3. "type": "object",
  4. "required": [
  5. "avatar",
  6. "color",
  7. "dateCreated",
  8. "features",
  9. "firstEvent",
  10. "hasAccess",
  11. "id",
  12. "isBookmarked",
  13. "isInternal",
  14. "isMember",
  15. "isPublic",
  16. "name",
  17. "platform",
  18. "slug",
  19. "status"
  20. ],
  21. "properties": {
  22. "avatar": {
  23. "$ref": "avatar.json#/Avatar"
  24. },
  25. "color": {
  26. "type": "string"
  27. },
  28. "dateCreated": {
  29. "type": "string",
  30. "format": "date-time"
  31. },
  32. "features": {
  33. "type": "array",
  34. "items": {
  35. "type": "string"
  36. }
  37. },
  38. "firstEvent": {
  39. "type": "string",
  40. "nullable": true
  41. },
  42. "hasAccess": {
  43. "type": "boolean"
  44. },
  45. "id": {
  46. "type": "string"
  47. },
  48. "isBookmarked": {
  49. "type": "boolean"
  50. },
  51. "isInternal": {
  52. "type": "boolean"
  53. },
  54. "isMember": {
  55. "type": "boolean"
  56. },
  57. "isPublic": {
  58. "type": "boolean"
  59. },
  60. "name": {
  61. "type": "string"
  62. },
  63. "platform": {
  64. "type": "string",
  65. "nullable": true
  66. },
  67. "slug": {
  68. "type": "string"
  69. },
  70. "status": {
  71. "type": "string",
  72. "enum": ["active", "disabled", "pending_deletion", "deletion_in_progress"]
  73. }
  74. }
  75. },
  76. "TeamProjects": {
  77. "type": "object",
  78. "required": [
  79. "dateCreated",
  80. "features",
  81. "firstEvent",
  82. "hasAccess",
  83. "id",
  84. "isBookmarked",
  85. "isMember",
  86. "name",
  87. "platform",
  88. "slug",
  89. "team",
  90. "teams",
  91. "latestDeploys"
  92. ],
  93. "properties": {
  94. "dateCreated": {
  95. "type": "string",
  96. "format": "date-time"
  97. },
  98. "features": {
  99. "type": "array",
  100. "items": {
  101. "type": "string"
  102. }
  103. },
  104. "firstEvent": {
  105. "type": "string",
  106. "nullable": true
  107. },
  108. "hasAccess": {
  109. "type": "boolean"
  110. },
  111. "id": {
  112. "type": "string"
  113. },
  114. "isBookmarked": {
  115. "type": "boolean"
  116. },
  117. "isMember": {
  118. "type": "boolean"
  119. },
  120. "name": {
  121. "type": "string"
  122. },
  123. "platform": {
  124. "type": "string",
  125. "nullable": true
  126. },
  127. "slug": {
  128. "type": "string"
  129. },
  130. "team": {
  131. "$ref": "team.json#/TeamMinimal"
  132. },
  133. "teams": {
  134. "type": "array",
  135. "items": {
  136. "$ref": "team.json#/TeamMinimal"
  137. }
  138. },
  139. "latestDeploys": {
  140. "type": "string",
  141. "nullable": true
  142. }
  143. }
  144. },
  145. "OrganizationProjects": {
  146. "type": "object",
  147. "required": [
  148. "dateCreated",
  149. "firstEvent",
  150. "hasAccess",
  151. "id",
  152. "isBookmarked",
  153. "isMember",
  154. "latestDeploys",
  155. "name",
  156. "platform",
  157. "platforms",
  158. "slug",
  159. "team",
  160. "teams"
  161. ],
  162. "properties": {
  163. "dateCreated": {
  164. "type": "string"
  165. },
  166. "firstEvent": {
  167. "type": "string",
  168. "nullable": true
  169. },
  170. "hasAccess": {
  171. "type": "boolean"
  172. },
  173. "id": {
  174. "type": "string"
  175. },
  176. "isBookmarked": {
  177. "type": "boolean"
  178. },
  179. "isMember": {
  180. "type": "boolean"
  181. },
  182. "latestDeploys": {
  183. "type": "string",
  184. "nullable": true
  185. },
  186. "name": {
  187. "type": "string"
  188. },
  189. "platform": {
  190. "type": "string",
  191. "nullable": true
  192. },
  193. "platforms": {
  194. "type": "array",
  195. "items": {
  196. "type": "string"
  197. }
  198. },
  199. "slug": {
  200. "type": "string"
  201. },
  202. "team": {
  203. "type": "object",
  204. "nullable": true,
  205. "allOf": [
  206. {
  207. "$ref": "team.json#/TeamMinimal"
  208. }
  209. ]
  210. },
  211. "teams": {
  212. "type": "array",
  213. "items": {
  214. "$ref": "team.json#/TeamMinimal"
  215. }
  216. }
  217. }
  218. },
  219. "DetailedProject": {
  220. "type": "object",
  221. "required": [
  222. "allowedDomains",
  223. "avatar",
  224. "color",
  225. "dataScrubber",
  226. "dataScrubberDefaults",
  227. "dateCreated",
  228. "defaultEnvironment",
  229. "digestsMaxDelay",
  230. "digestsMinDelay",
  231. "features",
  232. "firstEvent",
  233. "hasAccess",
  234. "id",
  235. "isBookmarked",
  236. "isInternal",
  237. "isMember",
  238. "isPublic",
  239. "latestRelease",
  240. "name",
  241. "options",
  242. "organization",
  243. "platform",
  244. "platforms",
  245. "processingIssues",
  246. "relayPiiConfig",
  247. "resolveAge",
  248. "safeFields",
  249. "scrapeJavaScript",
  250. "scrubIPAddresses",
  251. "securityToken",
  252. "securityTokenHeader",
  253. "sensitiveFields",
  254. "slug",
  255. "status",
  256. "storeCrashReports",
  257. "subjectPrefix",
  258. "subjectTemplate",
  259. "team",
  260. "teams",
  261. "verifySSL"
  262. ],
  263. "properties": {
  264. "allowedDomains": {
  265. "type": "array",
  266. "items": {
  267. "type": "string"
  268. }
  269. },
  270. "avatar": {
  271. "type": "object",
  272. "properties": {
  273. "avatarType": {
  274. "type": "string"
  275. },
  276. "avatarUuid": {
  277. "type": "string",
  278. "nullable": true
  279. }
  280. }
  281. },
  282. "color": {
  283. "type": "string"
  284. },
  285. "dataScrubber": {
  286. "type": "boolean"
  287. },
  288. "dataScrubberDefaults": {
  289. "type": "boolean"
  290. },
  291. "dateCreated": {
  292. "type": "string"
  293. },
  294. "defaultEnvironment": {
  295. "type": "string",
  296. "nullable": true
  297. },
  298. "digestsMaxDelay": {
  299. "type": "integer"
  300. },
  301. "digestsMinDelay": {
  302. "type": "integer"
  303. },
  304. "features": {
  305. "type": "array",
  306. "items": {
  307. "type": "string"
  308. }
  309. },
  310. "firstEvent": {
  311. "type": "string",
  312. "nullable": true
  313. },
  314. "hasAccess": {
  315. "type": "boolean"
  316. },
  317. "id": {
  318. "type": "string"
  319. },
  320. "isBookmarked": {
  321. "type": "boolean"
  322. },
  323. "isInternal": {
  324. "type": "boolean"
  325. },
  326. "isMember": {
  327. "type": "boolean"
  328. },
  329. "isPublic": {
  330. "type": "boolean"
  331. },
  332. "latestRelease": {
  333. "type": "object",
  334. "nullable": true,
  335. "required": [
  336. "authors",
  337. "commitCount",
  338. "data",
  339. "dateCreated",
  340. "dateReleased",
  341. "deployCount",
  342. "firstEvent",
  343. "lastCommit",
  344. "lastDeploy",
  345. "lastEvent",
  346. "newGroups",
  347. "owner",
  348. "projects",
  349. "ref",
  350. "shortVersion",
  351. "url",
  352. "version"
  353. ],
  354. "properties": {
  355. "authors": {
  356. "type": "array",
  357. "items": {
  358. "type": "object",
  359. "properties": {
  360. "name": {
  361. "type": "string"
  362. },
  363. "email": {
  364. "type": "string"
  365. }
  366. }
  367. }
  368. },
  369. "commitCount": {
  370. "type": "integer"
  371. },
  372. "data": {
  373. "type": "object"
  374. },
  375. "dateCreated": {
  376. "type": "string"
  377. },
  378. "dateReleased": {
  379. "type": "string",
  380. "nullable": true
  381. },
  382. "deployCount": {
  383. "type": "integer"
  384. },
  385. "firstEvent": {
  386. "type": "string",
  387. "nullable": true
  388. },
  389. "lastCommit": {
  390. "type": "object",
  391. "nullable": true
  392. },
  393. "lastDeploy": {
  394. "type": "object",
  395. "nullable": true
  396. },
  397. "lastEvent": {
  398. "type": "string",
  399. "nullable": true
  400. },
  401. "newGroups": {
  402. "type": "integer"
  403. },
  404. "owner": {
  405. "type": "string",
  406. "nullable": true
  407. },
  408. "projects": {
  409. "type": "array",
  410. "items": {
  411. "type": "object",
  412. "properties": {
  413. "name": {
  414. "type": "string"
  415. },
  416. "slug": {
  417. "type": "string"
  418. }
  419. }
  420. }
  421. },
  422. "ref": {
  423. "type": "string",
  424. "nullable": true
  425. },
  426. "shortVersion": {
  427. "type": "string"
  428. },
  429. "url": {
  430. "type": "string",
  431. "nullable": true
  432. },
  433. "version": {
  434. "type": "string"
  435. }
  436. }
  437. },
  438. "name": {
  439. "type": "string"
  440. },
  441. "options": {
  442. "type": "object",
  443. "properties": {
  444. "feedback:branding": {
  445. "type": "boolean"
  446. },
  447. "filters:blacklisted_ips": {
  448. "type": "string"
  449. },
  450. "filters:error_messages": {
  451. "type": "string"
  452. },
  453. "filters:releases": {
  454. "type": "string"
  455. },
  456. "sentry:csp_ignored_sources": {
  457. "type": "string"
  458. },
  459. "sentry:csp_ignored_sources_defaults": {
  460. "type": "boolean"
  461. }
  462. }
  463. },
  464. "organization": {
  465. "$ref": "organization.json#/Organization"
  466. },
  467. "platform": {
  468. "type": "string",
  469. "nullable": true
  470. },
  471. "platforms": {
  472. "type": "array",
  473. "items": {
  474. "type": "string"
  475. }
  476. },
  477. "plugins": {
  478. "type": "array",
  479. "items": {
  480. "$ref": "plugin.json#/Plugin"
  481. }
  482. },
  483. "processingIssues": {
  484. "type": "integer"
  485. },
  486. "relayPiiConfig": {
  487. "type": "string",
  488. "nullable": true
  489. },
  490. "resolveAge": {
  491. "type": "integer"
  492. },
  493. "safeFields": {
  494. "type": "array",
  495. "items": {
  496. "type": "string"
  497. }
  498. },
  499. "scrapeJavaScript": {
  500. "type": "boolean"
  501. },
  502. "scrubIPAddresses": {
  503. "type": "boolean"
  504. },
  505. "securityToken": {
  506. "type": "string"
  507. },
  508. "securityTokenHeader": {
  509. "type": "string",
  510. "nullable": true
  511. },
  512. "sensitiveFields": {
  513. "type": "array",
  514. "items": {
  515. "type": "string"
  516. }
  517. },
  518. "slug": {
  519. "type": "string"
  520. },
  521. "status": {
  522. "type": "string"
  523. },
  524. "storeCrashReports": {
  525. "type": "boolean",
  526. "nullable": true
  527. },
  528. "subjectPrefix": {
  529. "type": "string"
  530. },
  531. "subjectTemplate": {
  532. "type": "string"
  533. },
  534. "team": {
  535. "$ref": "team.json#/TeamMinimal"
  536. },
  537. "teams": {
  538. "type": "array",
  539. "items": {
  540. "$ref": "team.json#/TeamMinimal"
  541. }
  542. },
  543. "verifySSL": {
  544. "type": "boolean"
  545. }
  546. }
  547. }
  548. }