<<

# Bugzilla::WebService::Server::XMLRPC

- NAME
- DESCRIPTION
- XML-RPC
- CONNECTING
- PARAMETERS
  - How XML-RPC WebService Methods Take Parameters
- EXTENSIONS TO THE XML-RPC STANDARD
  - Undefined Values
- SEE ALSO

# NAME

Bugzilla::WebService::Server::XMLRPC - The XML-RPC Interface to Bugzilla

# DESCRIPTION

This documentation describes things about the Bugzilla WebService that are specific to XML-RPC. For a general overview of the Bugzilla WebServices, see Bugzilla::WebService.

# XML-RPC

The XML-RPC standard is described here: http://www.xmlrpc.com/spec

# CONNECTING

The endpoint for the XML-RPC interface is the `xmlrpc.cgi` script in your Bugzilla installation. For example, if your Bugzilla is at `bugzilla.yourdomain.com`, then your XML-RPC client would access the API via: `http://bugzilla.yourdomain.com/xmlrpc.cgi`

# PARAMETERS

`dateTime` fields are the standard `dateTime.iso8601` XML-RPC field. They should be in `YYYY-MM-DDTHH:MM:SS` format (where `T` is a literal T). As of Bugzilla 3.6, Bugzilla always expects `dateTime` fields to be in the UTC timezone, and all returned `dateTime` values are in the UTC timezone.

All other fields are standard XML-RPC types.

## How XML-RPC WebService Methods Take Parameters

All functions take a single argument, a `<struct>` that contains all parameters. The names of the parameters listed in the API docs for each function are the `<name>` element for the struct `<member>`s.

# EXTENSIONS TO THE XML-RPC STANDARD

## Undefined Values

Normally, XML-RPC does not allow empty values for `int`, `double`, or `dateTime.iso8601` fields. Bugzilla does--it treats empty values as `undef` (called `NULL` or `None` in some programming languages).

Bugzilla accepts a timezone specifier at the end of `dateTime.iso8601` fields that are specified as method arguments. The format of the timezone specifier is specified in the ISO-8601 standard. If no timezone specifier is included, the passed-in time is assumed to be in the UTC timezone. Bugzilla will never output a timezone specifier on returned data, because doing so would violate the XML-RPC specification. All returned times are in the UTC timezone.

Bugzilla also accepts an element called `<nil>`, as specified by the XML-RPC extension here: http://ontosys.com/xml-rpc/extensions.php, which is always considered to be `undef`, no matter what it contains.

Bugzilla does not use `<nil>` values in returned data, because currently most clients do not support `<nil>`. Instead, any fields with `undef` values will be stripped from the response completely. Therefore the client must handle the fact that some expected fields may not be returned.

# SEE ALSO

Bugzilla::WebService

<<