87 lines
2.2 KiB
ReStructuredText
87 lines
2.2 KiB
ReStructuredText
![]() |
============================
|
|||
|
Request and response formats
|
|||
|
============================
|
|||
|
|
|||
|
The OpenStack Compute API supports JSON request and response formats.
|
|||
|
|
|||
|
Request format
|
|||
|
~~~~~~~~~~~~~~
|
|||
|
|
|||
|
Use the ``Content-Type`` request header to specify the request format.
|
|||
|
This header is required for operations that have a request body.
|
|||
|
|
|||
|
The syntax for the ``Content-Type`` header is:
|
|||
|
|
|||
|
.. code::
|
|||
|
|
|||
|
Content-Type: application/FORMAT
|
|||
|
|
|||
|
Where ``FORMAT`` is ``json``.
|
|||
|
|
|||
|
Response format
|
|||
|
~~~~~~~~~~~~~~~
|
|||
|
|
|||
|
Use one of the following methods to specify the response format:
|
|||
|
|
|||
|
``Accept`` header
|
|||
|
The syntax for the ``Accept`` header is:
|
|||
|
|
|||
|
.. code::
|
|||
|
|
|||
|
Accept: application/FORMAT
|
|||
|
|
|||
|
Where *``FORMAT``* is ``json`` and the default format is ``json``.
|
|||
|
|
|||
|
Query extension
|
|||
|
Add a ``.json`` extension to the request URI. For example, the ``.json`` extension in the following list servers URI request specifies that the response body is to be returned in JSON format:
|
|||
|
|
|||
|
**GET** *``publicURL``*/servers.json
|
|||
|
|
|||
|
If you do not specify a response format, JSON is the default.
|
|||
|
|
|||
|
Request and response examples
|
|||
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|||
|
|
|||
|
You can serialize a response in a different format from the request
|
|||
|
format.
|
|||
|
|
|||
|
The examples below show a request body in JSON format.
|
|||
|
|
|||
|
.. note:: Though you may find outdated documents with XML examples, XML support
|
|||
|
in requests and responses has been deprecated for the Compute API v2
|
|||
|
(stable) and v2.1 (experimental).
|
|||
|
|
|||
|
**Example: JSON request with headers**
|
|||
|
|
|||
|
| POST /v2/010101/servers HTTP/1.1
|
|||
|
| Host: servers.api.openstack.org
|
|||
|
| Content-Type: application/json
|
|||
|
| Accept: application/xml
|
|||
|
| X-Auth-Token: eaaafd18-0fed-4b3a-81b4-663c99ec1cbb
|
|||
|
|
|||
|
.. code::
|
|||
|
|
|||
|
{
|
|||
|
"server": {
|
|||
|
"name": "server-test-1",
|
|||
|
"imageRef": "b5660a6e-4b46-4be3-9707-6b47221b454f",
|
|||
|
"flavorRef": "2",
|
|||
|
"max_count": 1,
|
|||
|
"min_count": 1,
|
|||
|
"networks": [
|
|||
|
{
|
|||
|
"uuid": "d32019d3-bc6e-4319-9c1d-6722fc136a22"
|
|||
|
}
|
|||
|
],
|
|||
|
"security_groups": [
|
|||
|
{
|
|||
|
"name": "default"
|
|||
|
},
|
|||
|
{
|
|||
|
"name": "another-secgroup-name"
|
|||
|
}
|
|||
|
]
|
|||
|
}
|
|||
|
}
|
|||
|
|