Skip to content

Commit 847105d

Browse files
authored
Add OpenAPI definition file (#1250)
1 parent 72ba36c commit 847105d

File tree

1 file changed

+94
-0
lines changed

1 file changed

+94
-0
lines changed

openapi.yml

Lines changed: 94 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,94 @@
1+
openapi: 3.1.0
2+
info:
3+
title: "PHP Website API"
4+
description: "APIs available for use on the www.php.net website."
5+
version: 2025.4.1
6+
7+
servers:
8+
- url: "https://www.php.net"
9+
description: "The php.net website."
10+
11+
components:
12+
pathItems:
13+
releases:
14+
get:
15+
summary: "Atom feed of php.net news and announcements."
16+
responses:
17+
"200":
18+
description: "Atom feed of php.net news and announcements."
19+
content:
20+
"application/atom+xml":
21+
schema:
22+
readOnly: true
23+
externalDocs:
24+
description: "Standard Atom feed with additional fields in the php: xml namespace."
25+
url: http://php.net/ns/releases
26+
27+
paths:
28+
"/mirror-info.php":
29+
get:
30+
summary: >-
31+
Returns information about the host running php.net.
32+
Historically, this was unique per mirror.
33+
With the move to a CDN model in 2019, there is now only one canonical source, and thus only one relevant configuration.
34+
Refer to https://github.com/php/web-php/blob/master/mirror-info.php for the serialization format of the response.
35+
responses:
36+
"200":
37+
description: "Successful response of host configuration. This API does not error."
38+
content:
39+
"text/plain":
40+
schema:
41+
type: string
42+
readOnly: true
43+
externalDocs:
44+
description: "This pipe delimited string's contents are described in the source code for this file."
45+
url: "https://github.com/php/web-php/blob/master/mirror-info.php"
46+
example: "https://www.php.net/|8.4.5|1743832640|0|0|en|manual-noalias|1|Core,date,libxml,json,SPL,Zend OPcache|php-web4|169.254.12.255"
47+
48+
"/releases/feed.php":
49+
"$ref": "#/components/pathItems/releases"
50+
51+
# Redirects to /releases/feed.php
52+
"/relases.atom":
53+
"$ref": "#/components/pathItems/releases"
54+
55+
"/releases/branches.php":
56+
get:
57+
summary: "Currently active versions of PHP."
58+
responses:
59+
"200":
60+
description: "Actively supported per-branch versions of PHP."
61+
content:
62+
"application/json":
63+
schema:
64+
type: array
65+
items:
66+
type: object
67+
properties:
68+
branch:
69+
description: "Major.Minor branch identifier, e.g. (8.4, 5.6, etc...)"
70+
type: string
71+
latest:
72+
description: "Most recent release on this branch (e.g. 8.4.5, 5.6.40, etc...)"
73+
type: string
74+
state:
75+
description: "Overall release readiness of the branch."
76+
type: string
77+
enum:
78+
- stable
79+
- security
80+
- eol
81+
- future
82+
initial_release:
83+
description: "Date on which first GA release of the branch was announced."
84+
type: string
85+
format: date-time
86+
active_support_end:
87+
description: "Date on which general bugfix support for this branch ends."
88+
type: string
89+
format: date-time
90+
security_support_end:
91+
description: "Date on which all support for this branch ends."
92+
type: string
93+
format: date-time
94+

0 commit comments

Comments
 (0)