openapi: 3.2.0 info: title: wazo-confd Endpoints API description: "Confd exposes an API for managing core resources on a Wazo server such as users, extensions, devices, voicemails, queues, etc. Resources can be associated together to provide additional functionality. For example: By associating a voicemail with a user, calls will automatically fallback on to the voicemail when the user cannot answer.\n\nImplementation notes\n====================\n\nErrors\n------\n\nResponses containing errors will have a status code in the 400 or 500 class. A list of error messages will be returned in the body of the response as a JSON-encoded array:\n\n~~~\n[\n \"Input error - User not found\",\n \"Resource error - User not associated to a line\"\n]\n~~~\n\n\nUpdating resources via PUT\n--------------------------\n\nWhen updating a resource, all fields become optional. In other words, only values that have been changed need to be sent to the server. Please note that this behavior may change in future versions of the API." version: '1.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: /1.1 security: - wazo_auth_token: [] tags: - name: endpoints paths: /endpoints/custom: get: operationId: list_endpoints_custom summary: List Custom endpoints description: '**Required ACL:** `confd.endpoints.custom.read`' tags: - endpoints parameters: - $ref: '#/components/parameters/tenantuuid' - $ref: '#/components/parameters/recurse' - $ref: '#/components/parameters/order' - $ref: '#/components/parameters/direction' - $ref: '#/components/parameters/limit' - $ref: '#/components/parameters/offset' - $ref: '#/components/parameters/search' responses: '200': description: Custom endpoint list content: application/json: schema: $ref: '#/components/schemas/EndpointCustomItems' post: operationId: create_endpoint_custom summary: Create Custom endpoint description: '**Required ACL:** `confd.endpoints.custom.create`' tags: - endpoints parameters: - $ref: '#/components/parameters/tenantuuid' responses: '201': description: Custom endpoint created content: application/json: schema: $ref: '#/components/schemas/EndpointCustom' '400': $ref: '#/components/responses/CreateError' requestBody: content: application/json: schema: $ref: '#/components/schemas/EndpointCustom' description: Custom Endpoint to create required: true /endpoints/custom/{custom_id}: get: operationId: get_endpoint_custom summary: Get Custom Endpoint description: '**Required ACL:** `confd.endpoints.custom.{custom_id}.read`' tags: - endpoints parameters: - $ref: '#/components/parameters/tenantuuid' - $ref: '#/components/parameters/customid' responses: '200': description: Custom Endpoint content: application/json: schema: $ref: '#/components/schemas/EndpointCustom' '404': $ref: '#/components/responses/NotFoundError' put: operationId: update_endpoint_custom summary: Update Custom Endpoint description: '**Required ACL:** `confd.endpoints.custom.{custom_id}.update`' tags: - endpoints parameters: - $ref: '#/components/parameters/tenantuuid' - $ref: '#/components/parameters/customid' responses: '204': $ref: '#/components/responses/ResourceUpdated' '400': $ref: '#/components/responses/UpdateError' '404': $ref: '#/components/responses/NotFoundError' requestBody: content: application/json: schema: $ref: '#/components/schemas/EndpointCustom' required: true delete: operationId: delete_endpoint_custom summary: Delete Custom Endpoint description: '**Required ACL:** `confd.endpoints.custom.{custom_id}.delete`' tags: - endpoints parameters: - $ref: '#/components/parameters/tenantuuid' - $ref: '#/components/parameters/customid' responses: '204': $ref: '#/components/responses/ResourceDeleted' '400': $ref: '#/components/responses/DeleteError' '404': $ref: '#/components/responses/NotFoundError' /endpoints/iax: get: operationId: list_endpoints_iax summary: List IAX endpoints description: '**Required ACL:** `confd.endpoints.iax.read`' tags: - endpoints parameters: - $ref: '#/components/parameters/tenantuuid' - $ref: '#/components/parameters/recurse' - $ref: '#/components/parameters/order' - $ref: '#/components/parameters/direction' - $ref: '#/components/parameters/limit' - $ref: '#/components/parameters/offset' - $ref: '#/components/parameters/search' responses: '200': description: IAX endpoint list content: application/json: schema: $ref: '#/components/schemas/EndpointIAXItems' post: operationId: create_endpoint_iax summary: Create IAX endpoint description: '**Required ACL:** `confd.endpoints.iax.create`' tags: - endpoints parameters: - $ref: '#/components/parameters/tenantuuid' responses: '201': description: IAX endpoint created content: application/json: schema: $ref: '#/components/schemas/EndpointIAX' '400': $ref: '#/components/responses/CreateError' requestBody: content: application/json: schema: $ref: '#/components/schemas/EndpointIAX' description: IAX Endpoint to create /endpoints/iax/{iax_id}: get: operationId: get_endpoint_iax summary: Get IAX Endpoint description: '**Required ACL:** `confd.endpoints.iax.{iax_id}.read`' tags: - endpoints parameters: - $ref: '#/components/parameters/tenantuuid' - $ref: '#/components/parameters/iaxid' responses: '200': description: IAX Endpoint content: application/json: schema: $ref: '#/components/schemas/EndpointIAX' '404': $ref: '#/components/responses/NotFoundError' put: operationId: update_endpoint_iax summary: Update IAX Endpoint description: '**Required ACL:** `confd.endpoints.iax.{iax_id}.update`' tags: - endpoints parameters: - $ref: '#/components/parameters/tenantuuid' - $ref: '#/components/parameters/iaxid' responses: '204': $ref: '#/components/responses/ResourceUpdated' '400': $ref: '#/components/responses/UpdateError' '404': $ref: '#/components/responses/NotFoundError' requestBody: content: application/json: schema: $ref: '#/components/schemas/EndpointIAX' required: true delete: operationId: delete_endpoint_iax summary: Delete IAX Endpoint description: '**Required ACL:** `confd.endpoints.iax.{iax_id}.delete`' tags: - endpoints parameters: - $ref: '#/components/parameters/tenantuuid' - $ref: '#/components/parameters/iaxid' responses: '204': $ref: '#/components/responses/ResourceDeleted' '400': $ref: '#/components/responses/DeleteError' '404': $ref: '#/components/responses/NotFoundError' /endpoints/sccp: get: operationId: list_endpoints_sccp summary: List SCCP endpoints description: '**Required ACL:** `confd.endpoints.sccp.read`' tags: - endpoints parameters: - $ref: '#/components/parameters/tenantuuid' - $ref: '#/components/parameters/recurse' - $ref: '#/components/parameters/order' - $ref: '#/components/parameters/direction' - $ref: '#/components/parameters/limit' - $ref: '#/components/parameters/offset' - $ref: '#/components/parameters/search' responses: '200': description: SCCP endpoint list content: application/json: schema: $ref: '#/components/schemas/EndpointSccpItems' post: operationId: create_endpoint_sccp summary: Create SCCP endpoint description: '**Required ACL:** `confd.endpoints.sccp.create`' tags: - endpoints parameters: - $ref: '#/components/parameters/tenantuuid' responses: '201': description: SCCP endpoint created content: application/json: schema: $ref: '#/components/schemas/EndpointSccp' '400': $ref: '#/components/responses/CreateError' requestBody: content: application/json: schema: $ref: '#/components/schemas/EndpointSccp' description: SCCP Endpoint to create /endpoints/sccp/{sccp_id}: get: operationId: get_endpoint_sccp summary: Get SCCP Endpoint description: '**Required ACL:** `confd.endpoints.sccp.{sccp_id}.read`' tags: - endpoints parameters: - $ref: '#/components/parameters/tenantuuid' - $ref: '#/components/parameters/sccpid' responses: '200': description: SCCP Endpoint content: application/json: schema: $ref: '#/components/schemas/EndpointSccp' '404': $ref: '#/components/responses/NotFoundError' put: operationId: update_endpoint_sccp summary: Update SCCP Endpoint description: '**Required ACL:** `confd.endpoints.sccp.{sccp_id}.update`' tags: - endpoints parameters: - $ref: '#/components/parameters/tenantuuid' - $ref: '#/components/parameters/sccpid' responses: '204': $ref: '#/components/responses/ResourceUpdated' '400': $ref: '#/components/responses/UpdateError' '404': $ref: '#/components/responses/NotFoundError' requestBody: content: application/json: schema: $ref: '#/components/schemas/EndpointSccp' required: true delete: operationId: delete_endpoint_sccp summary: Delete SCCP Endpoint description: '**Required ACL:** `confd.endpoints.sccp.{sccp_id}.delete`' tags: - endpoints parameters: - $ref: '#/components/parameters/tenantuuid' - $ref: '#/components/parameters/sccpid' responses: '204': $ref: '#/components/responses/ResourceDeleted' '400': $ref: '#/components/responses/DeleteError' '404': $ref: '#/components/responses/NotFoundError' /endpoints/sip: get: operationId: list_endpoints_sip summary: List SIP endpoints description: '**Required ACL:** `confd.endpoints.sip.read` List all SIP configurations, each individual configuration includes only fields that it defines. Inherited fields from the templates or default values are not returned here. ' tags: - endpoints parameters: - $ref: '#/components/parameters/tenantuuid' - $ref: '#/components/parameters/recurse' - $ref: '#/components/parameters/order' - $ref: '#/components/parameters/direction' - $ref: '#/components/parameters/limit' - $ref: '#/components/parameters/offset' - $ref: '#/components/parameters/search' - $ref: '#/components/parameters/query_string_uuid_filter' responses: '200': description: SIP endpoint list content: application/json: schema: $ref: '#/components/schemas/EndpointSIPItems' post: operationId: create_endpoint_sip summary: Create a SIP endpoint description: '**Required ACL:** `confd.endpoints.sip.create` Create a new SIP endpoint. This endpoint can inherit from other endpoints, only modify fields that have to be modified. ' tags: - endpoints parameters: - $ref: '#/components/parameters/tenantuuid' responses: '201': description: SIP endpoint created content: application/json: schema: $ref: '#/components/schemas/EndpointSIP' '400': $ref: '#/components/responses/CreateError' requestBody: content: application/json: schema: $ref: '#/components/schemas/EndpointSIP' description: SIP Endpoint to create /endpoints/sip/{sip_uuid}: get: operationId: get_endpoint_sip summary: Get SIP Endpoint description: '**Required ACL:** `confd.endpoints.sip.{sip_uuid}.read`' tags: - endpoints parameters: - $ref: '#/components/parameters/tenantuuid' - $ref: '#/components/parameters/sipuuid' - $ref: '#/components/parameters/endpoint_sip_view' responses: '200': description: SIP Endpoint content: application/json: schema: $ref: '#/components/schemas/EndpointSIP' '404': $ref: '#/components/responses/NotFoundError' put: operationId: update_endpoint_sip summary: Update SIP Endpoint description: '**Required ACL:** `confd.endpoints.sip.{sip_uuid}.update`' tags: - endpoints parameters: - $ref: '#/components/parameters/tenantuuid' - $ref: '#/components/parameters/sipuuid' responses: '204': $ref: '#/components/responses/ResourceUpdated' '400': $ref: '#/components/responses/UpdateError' '404': $ref: '#/components/responses/NotFoundError' requestBody: content: application/json: schema: $ref: '#/components/schemas/EndpointSIP' required: true delete: operationId: delete_endpoint_sip summary: Delete SIP Endpoint description: '**Required ACL:** `confd.endpoints.sip.{sip_uuid}.delete`' tags: - endpoints parameters: - $ref: '#/components/parameters/tenantuuid' - $ref: '#/components/parameters/sipuuid' responses: '204': $ref: '#/components/responses/ResourceDeleted' '400': $ref: '#/components/responses/DeleteError' '404': $ref: '#/components/responses/NotFoundError' /endpoints/sip/templates: get: operationId: list_endpoints_sip_templates summary: List SIP endpoints templates description: '**Required ACL:** `confd.endpoints.sip.templates.read` List all SIP configuration templates, each individual configuration includes only fields that it defines. Inherited fields from the templates or default values are not returned here. ' tags: - endpoints parameters: - $ref: '#/components/parameters/tenantuuid' - $ref: '#/components/parameters/recurse' - $ref: '#/components/parameters/order' - $ref: '#/components/parameters/direction' - $ref: '#/components/parameters/limit' - $ref: '#/components/parameters/offset' - $ref: '#/components/parameters/search' responses: '200': description: SIP endpoint template list content: application/json: schema: $ref: '#/components/schemas/EndpointSIPItems' post: operationId: create_endpoint_sip_template summary: Create a SIP endpoint template description: '**Required ACL:** `confd.endpoints.sip.templates.create` Create a new SIP endpoint configuration template. This endpoint can inherit from other templates, only modify fields that have to be modified. ' tags: - endpoints parameters: - $ref: '#/components/parameters/tenantuuid' responses: '201': description: SIP endpoint created content: application/json: schema: $ref: '#/components/schemas/EndpointSIP' '400': $ref: '#/components/responses/CreateError' requestBody: content: application/json: schema: $ref: '#/components/schemas/EndpointSIP' description: SIP Endpoint to create /endpoints/sip/templates/{template_uuid}: get: operationId: get_endpoint_sip_template summary: Get SIP Endpoint template description: '**Required ACL:** `confd.endpoints.sip.templates.{template_uuid}.read`' tags: - endpoints parameters: - $ref: '#/components/parameters/tenantuuid' - $ref: '#/components/parameters/template_uuid' responses: '200': description: SIP Endpoint template content: application/json: schema: $ref: '#/components/schemas/EndpointSIP' '404': $ref: '#/components/responses/NotFoundError' put: operationId: update_endpoint_sip_template summary: Update SIP Endpoint Template description: '**Required ACL:** `confd.endpoints.sip.templates.{template_uuid}.update`' tags: - endpoints parameters: - $ref: '#/components/parameters/tenantuuid' - $ref: '#/components/parameters/template_uuid' responses: '204': $ref: '#/components/responses/ResourceUpdated' '400': $ref: '#/components/responses/UpdateError' '404': $ref: '#/components/responses/NotFoundError' requestBody: content: application/json: schema: $ref: '#/components/schemas/EndpointSIP' required: true delete: operationId: delete_endpoint_sip_template summary: Delete SIP Endpoint Template description: '**Required ACL:** `confd.endpoints.sip.templates.{template_uuid}.delete`' tags: - endpoints parameters: - $ref: '#/components/parameters/tenantuuid' - $ref: '#/components/parameters/template_uuid' responses: '204': $ref: '#/components/responses/ResourceDeleted' '400': $ref: '#/components/responses/DeleteError' '404': $ref: '#/components/responses/NotFoundError' /lines/{line_id}/endpoints/custom/{custom_id}: put: operationId: associate_line_endpoint_custom summary: Associate line and Custom endpoint description: '**Required ACL:** `confd.lines.{line_id}.endpoints.custom.{custom_id}.update`' tags: - endpoints parameters: - $ref: '#/components/parameters/lineid' - $ref: '#/components/parameters/customid' responses: '204': description: Line and Custom endpoint associated '400': $ref: '#/components/responses/GenericError' '404': $ref: '#/components/responses/NotFoundError' delete: operationId: dissociate_line_endpoint_custom summary: Dissociate line and Custom endpoint description: '**Required ACL:** `confd.lines.{line_id}.endpoints.custom.{custom_id}.delete`' tags: - endpoints parameters: - $ref: '#/components/parameters/lineid' - $ref: '#/components/parameters/customid' responses: '204': description: Line and Custom endpoint dissociated '400': $ref: '#/components/responses/GenericError' '404': $ref: '#/components/responses/NotFoundError' /lines/{line_id}/endpoints/sccp/{sccp_id}: put: operationId: associate_line_endpoint_sccp summary: Associate line and SCCP endpoint description: '**Required ACL:** `confd.lines.{line_id}.endpoints.sccp.{sccp_id}.update`' tags: - endpoints parameters: - $ref: '#/components/parameters/lineid' - $ref: '#/components/parameters/sccpid' responses: '204': description: Line and SCCP endpoint associated '400': $ref: '#/components/responses/GenericError' '404': $ref: '#/components/responses/NotFoundError' delete: operationId: dissociate_line_endpoint_sccp summary: Dissociate line and SCCP endpoint description: '**Required ACL:** `confd.lines.{line_id}.endpoints.sccp.{sccp_id}.delete`' tags: - endpoints parameters: - $ref: '#/components/parameters/lineid' - $ref: '#/components/parameters/sccpid' responses: '204': description: Line and SCCP endpoint dissociated '400': $ref: '#/components/responses/GenericError' '404': $ref: '#/components/responses/NotFoundError' /lines/{line_id}/endpoints/sip/{sip_uuid}: put: operationId: associate_line_endpoint_sip summary: Associate line and SIP endpoint description: '**Required ACL:** `confd.lines.{line_id}.endpoints.sip.{sip_uuid}.update`' tags: - endpoints parameters: - $ref: '#/components/parameters/lineid' - $ref: '#/components/parameters/sipuuid' responses: '204': description: Line and SIP endpoint associated '400': $ref: '#/components/responses/GenericError' '404': $ref: '#/components/responses/NotFoundError' delete: operationId: dissociate_line_endpoint_sip summary: Dissociate line and SIP endpoint description: '**Required ACL:** `confd.lines.{line_id}.endpoints.sip.{sip_uuid}.delete`' tags: - endpoints parameters: - $ref: '#/components/parameters/lineid' - $ref: '#/components/parameters/sipuuid' responses: '204': description: Line and SIP endpoint dissociated '400': $ref: '#/components/responses/GenericError' '404': $ref: '#/components/responses/NotFoundError' /trunks/{trunk_id}/endpoints/custom/{custom_id}: put: operationId: associate_trunk_endpoint_custom summary: Associate trunk and Custom endpoint description: '**Required ACL:** `confd.trunks.{trunk_id}.endpoints.custom.{custom_id}.update`' tags: - endpoints parameters: - $ref: '#/components/parameters/trunkid' - $ref: '#/components/parameters/customid' responses: '204': description: Trunk and Custom endpoint associated '400': $ref: '#/components/responses/GenericError' '404': $ref: '#/components/responses/NotFoundError' delete: operationId: dissociate_trunk_endpoint_custom summary: Dissociate trunk and Custom endpoint description: '**Required ACL:** `confd.trunks.{trunk_id}.endpoints.custom.{custom_id}.delete`' tags: - endpoints parameters: - $ref: '#/components/parameters/trunkid' - $ref: '#/components/parameters/customid' responses: '204': description: Trunk and Custom endpoint dissociated '400': $ref: '#/components/responses/GenericError' '404': $ref: '#/components/responses/NotFoundError' /trunks/{trunk_id}/endpoints/iax/{iax_id}: put: operationId: associate_trunk_endpoint_iax summary: Associate trunk and IAX endpoint description: '**Required ACL:** `confd.trunks.{trunk_id}.endpoints.iax.{iax_id}.update`' tags: - endpoints parameters: - $ref: '#/components/parameters/trunkid' - $ref: '#/components/parameters/iaxid' responses: '204': description: Trunk and IAX endpoint associated '400': $ref: '#/components/responses/GenericError' '404': $ref: '#/components/responses/NotFoundError' delete: operationId: dissociate_trunk_endpoint_iax summary: Dissociate trunk and IAX endpoint description: '**Required ACL:** `confd.trunks.{trunk_id}.endpoints.iax.{iax_id}.delete`' tags: - endpoints parameters: - $ref: '#/components/parameters/trunkid' - $ref: '#/components/parameters/iaxid' responses: '204': description: Trunk and IAX endpoint dissociated '400': $ref: '#/components/responses/GenericError' '404': $ref: '#/components/responses/NotFoundError' /trunks/{trunk_id}/endpoints/sip/{sip_uuid}: put: operationId: associate_trunk_endpoint_sip summary: Associate trunk and SIP endpoint description: '**Required ACL:** `confd.trunks.{trunk_id}.endpoints.sip.{sip_uuid}.update`' tags: - endpoints parameters: - $ref: '#/components/parameters/trunkid' - $ref: '#/components/parameters/sipuuid' responses: '204': description: Trunk and SIP endpoint associated '400': $ref: '#/components/responses/GenericError' '404': $ref: '#/components/responses/NotFoundError' delete: operationId: dissociate_trunk_endpoint_sip summary: Dissociate trunk and SIP endpoint description: '**Required ACL:** `confd.trunks.{trunk_id}.endpoints.sip.{sip_uuid}.delete`' tags: - endpoints parameters: - $ref: '#/components/parameters/trunkid' - $ref: '#/components/parameters/sipuuid' responses: '204': description: Trunk and SIP endpoint dissociated '400': $ref: '#/components/responses/GenericError' '404': $ref: '#/components/responses/NotFoundError' /users/{user_uuid}/lines/{line_id}/associated/endpoints/sip: get: operationId: get_user_line_associated_endpoints_sip summary: Get SIP endpoint of a line for a user description: '**Required ACL:** `confd.users.{user_uuid}.lines.{line_id}.associated.endpoints.sip.read`' tags: - endpoints parameters: - $ref: '#/components/parameters/useruuid' - $ref: '#/components/parameters/lineid' - $ref: '#/components/parameters/endpoint_sip_view' responses: '200': description: SIP endpoint of a line for a user content: application/json: schema: $ref: '#/components/schemas/EndpointSIP' '400': description: Invalid `view` /users/{user_uuid}/lines/main/associated/endpoints/sip: get: operationId: get_user_line_main_associated_endpoints_sip summary: Get SIP endpoint of main line for a user description: '**Required ACL:** `confd.users.{user_uuid}.lines.main.associated.endpoints.sip.read`' tags: - endpoints parameters: - $ref: '#/components/parameters/useruuid' - $ref: '#/components/parameters/endpoint_sip_view' responses: '200': description: SIP endpoint of main line for a user content: application/json: schema: $ref: '#/components/schemas/EndpointSIP' '400': description: Invalid `view` components: schemas: SIPIdentifySectionOptions: title: PJSIP Identify Section Options $ref: '#/components/schemas/KeyValueOption' SIPTransportRelation: properties: uuid: type: string required: - uuid EndpointSIP: title: SIP Endpoint properties: uuid: type: string description: The UUID of this resource readOnly: true name: type: string description: The name of the PJSIP entity, auto-generated if missing label: type: string description: The human readable name for this configuration aor_section_options: type: array items: $ref: '#/components/schemas/SIPAORSectionOptions' description: A list of PJSIP AOR section options for this endpoint auth_section_options: type: array items: $ref: '#/components/schemas/SIPAuthSectionOptions' description: A list of PJSIP auth section options for this endpoint endpoint_section_options: type: array items: $ref: '#/components/schemas/SIPEndpointSectionOptions' description: A list of PJSIP endpoint section options for this endpoint identify_section_options: type: array items: $ref: '#/components/schemas/SIPIdentifySectionOptions' description: A list of PJSIP identify section options for this endpoint registration_section_options: type: array items: $ref: '#/components/schemas/SIPRegistrationSectionOptions' description: A list of PJSIP registration section options for this endpoint registration_outbound_auth_section_options: type: array items: $ref: '#/components/schemas/SIPAuthSectionOptions' description: A list of PJSIP auth section options for this endpoint outbound_auth_section_options: type: array items: $ref: '#/components/schemas/SIPAuthSectionOptions' description: A list of PJSIP auth section options for this endpoint transport: description: The transport used by this endpoint $ref: '#/components/schemas/SIPTransportRelation' templates: type: array items: $ref: '#/components/schemas/EndpointSIPTemplatesRelation' description: 'A list of templates this configuration will inherit from. The inheritance only applies to option sections. Not to the name, label and other fields. For a given list of templates [A, B, C] A will be applied over B. C will be applied over (A,B) etc. ' tenant_uuid: type: string description: The UUID of the tenant readOnly: true asterisk_id: type: string description: The ID of the Asterisk onto which this configuration applies. EndpointRelationLine: properties: line: type: array readOnly: true items: $ref: '#/components/schemas/LineRelationBase' SIPAuthSectionOptions: title: PJSIP Auth Section Options $ref: '#/components/schemas/KeyValueOption' EndpointSIPItems: title: SIP Endpoints properties: items: items: $ref: '#/components/schemas/EndpointSIP' type: array total: type: integer KeyValueOption: description: "Options must have the following form:\n```\n{\n \"options\": [\n [\"option\", \"value\"],\n ]\n}\n```\n" title: Key Value type: array items: type: string maxItems: 2 minItems: 2 example: - option - value EndpointSccpRelationBase: properties: id: type: integer description: SCCP Endpoint ID readOnly: true EndpointCustomItems: title: Custom Endpoints properties: items: items: $ref: '#/components/schemas/EndpointCustom' type: array total: type: integer EndpointSIPTemplatesRelation: properties: uuid: type: string description: The UUID of this resource label: type: string description: The label of this resource readOnly: true required: - uuid EndpointCustomRelationBase: properties: id: type: integer description: Custom Endpoint ID readOnly: true interface: type: string description: Asterisk interface to use. (e.g. 'dahdi/i1') TrunkRelationBase: properties: id: type: integer readOnly: true description: The id of the trunk tenant_uuid: type: string description: The UUID of the tenant readOnly: true SIPAORSectionOptions: title: PJSIP AOR Section Options $ref: '#/components/schemas/KeyValueOption' EndpointCustom: title: Custom Endpoint allOf: - $ref: '#/components/schemas/EndpointCustomRelationBase' - properties: tenant_uuid: type: string description: The UUID of the tenant readOnly: true enabled: type: boolean description: Endpoint can be used when it is enabled default: true - $ref: '#/components/schemas/EndpointRelationTrunk' - $ref: '#/components/schemas/EndpointRelationLine' - required: - interface SIPEndpointSectionOptions: title: SIP Endpoint Section Options $ref: '#/components/schemas/KeyValueOption' EndpointSccpItems: title: SCCP Endpoints properties: items: items: $ref: '#/components/schemas/EndpointSccp' type: array total: type: integer SIPRegistrationSectionOptions: title: PJSIP Registration Section Options $ref: '#/components/schemas/KeyValueOption' EndpointSccp: title: SCCP Endpoint allOf: - $ref: '#/components/schemas/EndpointSccpRelationBase' - properties: tenant_uuid: type: string description: The UUID of the tenant readOnly: true options: description: "Advanced configuration options. Options are appended at the end of a \nSCCP account in the file 'sccp.conf' used by asterisk.\nPlease consult the asterisk documentation for further details on available\nparameters. Because of database limitations, only the following options are allowed:\n\n * cid_name\n * cid_num\n * allow\n * disallow\n \nOptions must have the following the form:\n\n```\n{\n \"options\": [\n [\"name1\", \"value1\"],\n [\"name2\", \"value2\"]\n ]\n}\n```\n\nThe resulting configuration in sip.conf will have the following form:\n\n```\n[1000]\nname1=value1\nname2=value2\n```\n" type: array items: $ref: '#/components/schemas/KeyValueOption' - $ref: '#/components/schemas/EndpointRelationTrunk' - $ref: '#/components/schemas/EndpointRelationLine' Error: type: array items: type: string EndpointRelationTrunk: properties: trunk: $ref: '#/components/schemas/TrunkRelationBase' readOnly: true LineRelationBase: properties: id: type: integer description: Line ID readOnly: true name: type: string description: The name of the line readOnly: true EndpointIAX: title: IAX Endpoint allOf: - $ref: '#/components/schemas/EndpointIAXRelationBase' - properties: tenant_uuid: type: string description: The UUID of the tenant readOnly: true type: type: string enum: - friend - peer - user default: friend description: Type of IAX account host: type: string description: Hosts that are allowed to use this IAX account default: dynamic options: description: "Advanced configuration: options. Options are appended at the end of a IAX account in the file 'iax.conf' used by asterisk. Please consult the asterisk documentation for further details on available parameters. Because of database limitations, the following options can only be configured once:\n\n* accountcode\n* adsi\n* allow\n* amaflags\n* auth\n* callerid\n* category\n* cid_number\n* codecpriority\n* commented\n* context\n* dbsecret\n* defaultip\n* deny\n* encryption\n* forceencryption\n* forcejitterbuffer\n* fullname\n* immediate\n* inkeys\n* jitterbuffer\n* keyrotate\n* language\n* mailbox\n* mask\n* maxauthreq\n* mohinterpret\n* mohsuggest\n* outkey\n* parkinglot\n* peercontext\n* permit\n* port\n* protocol\n* qualify\n* qualifyfreqnoto\n* qualifyfreqok\n* qualifysmoothing\n* regexten\n* requirecalltoken\n* secret\n* sendani\n* setvar\n* sourceaddress\n* timezone\n* transfer\n* trunk\n* username\n\nAny other options may be repeated as many times as needed. Options must have the following form:\n```\n{\n \"options\": [\n [\"name1\", \"value1\"],\n [\"name2\", \"value2\"]\n ]\n}\n```\n\nThe resulting configuration in iax.conf will have the following form:\n```\n[iaxusername]\ncontext=default\nsecret=iaxsecret\nname1=value1\nname2=value2\n```\n" type: array items: $ref: '#/components/schemas/KeyValueOption' default: [] - $ref: '#/components/schemas/EndpointRelationTrunk' - $ref: '#/components/schemas/EndpointRelationLine' EndpointIAXItems: title: IAX Endpoints properties: items: items: $ref: '#/components/schemas/EndpointIAX' type: array total: type: integer EndpointIAXRelationBase: properties: id: type: integer description: IAX Endpoint ID readOnly: true name: type: string description: IAX name default: autogenerated responses: NotFoundError: description: The resource requested was not found on the server content: application/json: schema: $ref: '#/components/schemas/Error' ResourceDeleted: description: Resource was deleted successfully CreateError: description: An error occurred when creating the resource content: application/json: schema: $ref: '#/components/schemas/Error' GenericError: description: An error occurred during the operation content: application/json: schema: $ref: '#/components/schemas/Error' ResourceUpdated: description: Resource was updated successfully UpdateError: description: An error occurred when updating the resource content: application/json: schema: $ref: '#/components/schemas/Error' DeleteError: description: An error occurred when deleting the resource content: application/json: schema: $ref: '#/components/schemas/Error' parameters: sccpid: required: true name: sccp_id in: path schema: type: integer lineid: required: true name: line_id in: path schema: type: integer useruuid: required: true name: user_uuid in: path description: the user's UUID schema: type: string format: uuid tenantuuid: name: Wazo-Tenant in: header description: The tenant's UUID, defining the ownership of a given resource. required: false schema: type: string customid: required: true name: custom_id in: path schema: type: integer offset: required: false name: offset in: query description: Number of items to skip over in the list. Useful for pagination. schema: type: integer order: required: false name: order in: query description: Name of the field to use for sorting the list of items returned. schema: type: string template_uuid: required: true name: template_uuid in: path 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 recurse: name: recurse in: query description: Should the query include sub-tenants required: false schema: type: boolean default: false 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 iaxid: required: true name: iax_id in: path schema: type: integer query_string_uuid_filter: in: query name: uuid required: false description: Search filter for resource UUID, can be used to search multiple elements. Using a comma separated list of UUID style: form explode: false schema: type: array items: type: string format: uuid maxItems: 20 minItems: 1 uniqueItems: true trunkid: description: Trunk's ID name: trunk_id in: path required: true schema: type: integer endpoint_sip_view: required: false name: view in: query description: 'Different view of the SIP endpoint The `default` view, when the argument is omitted, is to include only options that are defined on the specified endpoint. The `merged` view includes all options from included templates. ' schema: type: string enum: - merged sipuuid: required: true name: sip_uuid in: path schema: type: string limit: required: false name: limit in: query description: Maximum number of items to return in the list schema: type: integer securitySchemes: wazo_auth_token: type: apiKey name: X-Auth-Token in: header x-xivo-port: 9486 x-xivo-name: confd x-apievangelist-source: harvested_from: https://github.com/wazo-platform/wazo-confd assembly: base plugin api.yml deep-merged with all plugin api.yml fragments, reproducing what the running service serves at /api/confd/1.1/api/api.yml (see wazo_confd/plugins/api/http.py — xivo.chain_map.ChainMap) spec_version: Swagger 2.0 (as published by Wazo) harvested: '2026-08-17'