openapi: 3.2.0 info: title: dird Wazo API description: "Contacts and directories in Wazo are managed by the wazo-dird daemon. This service provides a public API that can be used to query the directories that are configured on a Wazo. \n\n\nA contact can contain various information such as a person's phone number, number, office number, department, office number, etc. The information displayed is selected via a profile. Directories can be aggregated using multiple data sources such as an LDAP server, a CSV file, another Wazo server, etc.\n\n\nPlease refer to [the documentation](https://wazo-platform.org/uc-doc) for further details.\n\n\nNote: The 0.1 API is currently in development. Major changes could still happen and new resources will be added over time." version: '0.1' license: name: GPL v3 url: http://www.gnu.org/licenses/gpl.txt contact: name: Wazo Dev Team url: https://wazo-platform.org/ email: dev@wazo.community x-logo: url: https://wazo-platform.org/images/logo-black.svg backgroundColor: '#FAFAFA' altText: Wazo Logo servers: - url: /0.1 security: - wazo_auth_token: [] tags: - name: wazo paths: /backends/wazo/sources/{source_uuid}/contacts: get: description: '**Required ACL:** `dird.backends.wazo.sources.{source_uuid}.contacts.read`' operationId: list_wazo_contacts_from_source parameters: - $ref: '#/components/parameters/tenantuuid' - in: path name: source_uuid required: true description: Source uuid schema: type: string - $ref: '#/components/parameters/order' - $ref: '#/components/parameters/direction' - $ref: '#/components/parameters/limit' - $ref: '#/components/parameters/offset' - $ref: '#/components/parameters/search' - $ref: '#/components/parameters/wazo_backend_uuid' summary: Retrieve all contacts from `wazo` tags: - wazo responses: '200': description: Contacts as fetched from the Wazo engine. content: application/json: schema: $ref: '#/components/schemas/WazoContactList' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/LegacyError' '404': description: No such source content: application/json: schema: $ref: '#/components/schemas/LegacyError' '503': description: Another service is unavailable (e.g. wazo-auth, wazo-confd, ...) content: application/json: schema: $ref: '#/components/schemas/LegacyError' components: parameters: search: required: false name: search in: query description: Search term for filtering a list of items. Only items with a field containing the search term will be returned. schema: type: string direction: required: false name: direction in: query description: Sort list of items in 'asc' (ascending) or 'desc' (descending) order schema: type: string enum: - asc - desc offset: name: offset in: query description: The offset defines the offsets the start by the number specified required: false schema: type: integer default: 0 limit: name: limit in: query description: The limit defines the number of individual objects that are returned required: false schema: type: integer tenantuuid: name: Wazo-Tenant in: header description: The tenant's UUID, defining the ownership of a given resource. required: false schema: type: string order: required: false name: order in: query description: Name of the field to use for sorting the list of items returned. schema: type: string wazo_backend_uuid: required: false name: uuid in: query description: Filter by contact uuid. Many uuid can be specified. Each uuid MUST be separated by a comma (,). Many uuid will perform a logical OR. schema: type: array items: type: string schemas: LegacyError: title: LegacyError description: Error message for the client properties: timestamp: description: Time at which the error occured type: array items: type: number format: timestamp reason: description: Human readable explanation of the error type: array items: type: string status_code: description: HTTP status code type: integer WazoContact: properties: id: type: integer description: The ID of the contact which is used to favorite that contact uuid: type: string description: The UUID of the contact firstname: type: string description: The firstname of the contact lastname: type: string description: The lastname of the contact email: type: string description: The email address of the contact exten: type: string description: The internal number of that contact mobile_phone_number: type: string description: The mobile phone number of that contact voicemail_number: type: string description: The voicemail number of that contact WazoContactList: properties: total: type: integer description: The number of contacts in this source readOnly: true filtered: type: integer description: The number of contacts in this source (filtered is not implemented) readOnly: true items: type: array items: $ref: '#/components/schemas/WazoContact' required: - items - total - filtered securitySchemes: wazo_auth_token: type: apiKey name: X-Auth-Token in: header x-xivo-port: 9489 x-xivo-name: dird x-apievangelist-source: harvested_from: https://github.com/wazo-platform/wazo-dird assembly: base plugin api.yml deep-merged with all plugin api.yml fragments, reproducing what the running service serves at /api/dird/0.1/api/api.yml (see wazo_dird/plugins/api/http.py — xivo.chain_map.ChainMap) spec_version: Swagger 2.0 (as published by Wazo) harvested: '2026-08-17'