{
    "swagger": "2.0",
    "info": {
        "description": "An Orange Business API for managing incidents.\n\n\n# Internationalization\nBy default, data are in English but you can request data in French by specifying a language code in the Accept-Language header.\n_Example: Accept-Language: fr_\n\n### Resources \n- **incidents** : A incident defines an event impacting the service.\n- **attachments** : Attachments defines all files associated to an incident.\n- **notes** :  notes are comments on the incident written by Orange or the Customer.\n- **freezePeriods** :  periods when the incident is frozen\n- **aggregation** : calculate counters based on grouped attribute values.\n- **status** : used to know the status of API components.\n- **version** : provides the version of the API.\n- **doc** : allows to download the swagger file.\n- **Retention policy** : Some objects have a limited retention policy (incidents,autodiag, jobs). refer to each object description for its retention policy.\n\n### Incident API performs the following operations :\n- Create or update a incident, retrieve an incident or a collection of incidents.\n- Add a note, retrieve notes.\n- Upload a attachment/file, list or download attachments.\n- Generate statistics on incidents\n\n### OAuth 2.0 Scopes\n\n| Scope | Features |\n| --- | --- |\n| b2b:incident | Grants access to list and have details of incidents and also to report new incidents |\n| b2b:incident:readonly | \tGrants access to list and have details of incidents |\n\n***\nCopyright \ufffd Orange Business 2026. All Rights Reserved.\n\n # Authentication\nexplanation on seach\n\n# Search\nexplanation on seach\n\n",
        "version": "1.10.0",
        "title": "Incident API",
        "x-logo": {
            "url": "https://raw.githubusercontent.com/obs-api/swaggers/main/assets/logo.png",
            "backgroundColor": "#FFFFFF"
        },
        "contact": {
            "name": "Orange Business - API for Business",
            "email": "api.tech-expert@orange.com",
            "url": "https://developer.orange.com/resources/contact-us/"
        }
    },
    "host": "api.orange.com",
    "basePath": "/incident/b2b/v1",
    "schemes": [
        "https"
    ],
    "produces": [
        "application/json;charset=utf-8"
    ],
    "tags": [
        {
            "name": "Incidents",
            "description": "Manage Incidents of the Orange Business solutions.\n\nAdopting the Orange internal data retention policy , incidents are kept in the database for 13 months after being moved to the validated or archived state. After this period, the incident is removed from the API4BIZ database.\n"
        }, 
         {
            "name": "autodiag",
            "description": "Manage Autodiags of the Orange Business solutions"
        },
        {
            "name": "Notes",
            "description": "A note is a comment on an incident added by the Customer staff or Orange staff."
        },
        {
            "name": "Attachments",
            "description": "Attachments are files, documents associated to an incident or a note of an incident. These attachments can be provided by Orange staff, Orange Automatic tools or by Customers"
        },
        {
            "name": "Freeze Periods",
            "description": "Provide the list of freeze Periods"
        },
        {
            "name": "Miscellaneous",
            "description": "Information on the API and the user."
        }
    ],
    "paths": {
        "/incidents": {
            "post": {
                "tags": [
                    "Incidents"
                ],
                "consumes": [
                    "application/json;charset=utf-8"
                ],
                "produces": [
                    "application/json;charset=utf-8"
                ],
                "operationId": "CreateIncident",
                "summary": "Create an Incident.",
                "description": "\nThis operation allow to report a new incident to Orange Business.\n\nSpecific business errors for current operation will be encapsulated in HTTP Response 422 Unprocessable entity \n",
                "deprecated": false,
                "parameters": [
                    {
                        "name": "body",
                        "required": true,
                        "description": "Body of the POST method describing the incident",
                        "in": "body",
                        "schema": {
                            "$ref": "#/definitions/IncidentPOST"
                        }
                    },
                    {
                        "name": "X-API-KEY",
                        "required": false,
                        "in": "header",
                        "description": "The API Key required for using Orange Business API.",
                        "type": "string"
                    }
                ],
                "responses": {
                    "201": {
                        "description": "Created",
                        "schema": {
                            "$ref": "#/definitions/IncidentPOSTResponse"
                        },
                        "headers": {
                            "Content-Location": {
                                "type": "string",
                                "description": "URI of the new Incident."
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "schema": {
                            "$ref": "#/definitions/ZError"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "$ref": "#/definitions/ZError"
                        }
                    }
                }
            },
            "get": {
                "tags": [
                    "Incidents"
                ],
                "produces": [
                    "application/json;charset=utf-8"
                ],
                "operationId": "ListIncidents",
                "summary": "List all Incidents",
                "description": "This operation lists all incidents.\n\nFiltering, pagination, sorting and partial response are available.\n\nSpecific business errors for current operation will be encapsulated in HTTP Response 422 Unprocessable entity.\n",
                "deprecated": false,
                "parameters": [
                    {
                        "name": "X-API-Key",
                        "required": false,
                        "in": "header",
                        "description": "The API Key required for using Orange Business API.",
                        "type": "string"
                    },
                    {
                        "name": "offset",
                        "required": false,
                        "in": "query",
                        "description": "The index of the first element to retrieve. Zero is the first item of the collection.",
                        "type": "integer",
                        "format": "int32",
                        "default": 0,
                        "minimum": 0
                    },
                    {
                        "name": "limit",
                        "required": false,
                        "in": "query",
                        "description": "The maximum number of items to retrieve.",
                        "type": "integer",
                        "format": "int32",
                        "default": 25,
                        "minimum": 0,
                        "maximum": 250
                    },
                    {
                        "name": "sort",
                        "required": false,
                        "in": "query",
                        "type": "string",
                        "description": "Allow to sort the response in the order of one attribut or a list of attributs separed by a comma. To specify the descending order, the attribut must be prefixed by a '-'.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "id",
                                "-id",
                                "customerReference",
                                "-customerReference",
                                "status",
                                "-status",
                                "impact",
                                "-impact",
                                "priority",
                                "-priority",
                                "urgency",
                                "-urgency",
                                "serviceCondition",
                                "-serviceCondition",
                                "type",
                                "-type",
                                "origin",
                                "-origin",
                                "shortDescription",
                                "-shortDescription",
                                "description",
                                "-description",
                                "customer.id",
                                "-customer.id",
                                "customer.name",
                                "-customer.name",
                                "configurationItems.id",
                                "-configurationItems.id",
                                "configurationItems.reference",
                                "-configurationItems.reference",
                                "configurationItems.type",
                                "-configurationItems.type",
                                "configurationItems.customerReference",
                                "-configurationItems.customerReference",
                                "location.id",
                                "-location.id",
                                "location.name",
                                "-location.name",
                                "location.customerReference",
                                "-location.customerReference",
                                "servicePoint.id",
                                "-servicePoint.id",
                                "servicePoint.name",
                                "-servicePoint.name",
                                "servicePoint.reference",
                                "-servicePoint.reference",
                                "servicePoint.customerReference",
                                "-servicePoint.customerReference",
                                "servicePoint.serviceLevelManagement.id",
                                "-servicePoint.serviceLevelManagement.id",
                                "servicePoint.serviceLevelManagement.coverageTime",
                                "-servicePoint.serviceLevelManagement.coverageTime",
                                "servicePoint.serviceLevelManagement.restoreTime",
                                "-servicePoint.serviceLevelManagement.restoreTime",
                                "servicePoint.serviceLevelManagement.responseTime",
                                "-servicePoint.serviceLevelManagement.responseTime",
                                "keyDates.openedAt",
                                "-keyDates.openedAt",
                                "keyDates.detectedAt",
                                "-keyDates.detectedAt",
                                "keyDates.committedAt",
                                "-keyDates.committedAt",
                                "keyDates.resolvedAt",
                                "-keyDates.resolvedAt",
                                "keyDates.restoredAt",
                                "-keyDates.restoredAt",
                                "keyDates.closedAt",
                                "-keyDates.closedAt",
                                "keyDates.modifiedAt",
                                "-keyDates.modifiedAt",
                                "keyDates.validatedAt",
                                "-keyDates.validatedAt",
                                "contacts.primary.name",
                                "-contacts.primary.name",
                                "contacts.primary.firstName",
                                "-contacts.primary.firstName",
                                "contacts.primary.phone",
                                "-contacts.primary.phone",
                                "contacts.primary.mobile",
                                "-contacts.primary.mobile",
                                "contacts.primary.email",
                                "-contacts.primary.email",
                                "closureSummary.isRootCause",
                                "-closureSummary.isRootCause",
                                "closureSummary.initialCategory",
                                "-closureSummary.initialCategory",
                                "closureSummary.cause",
                                "-closureSummary.cause",
                                "closureSummary.closedAt",
                                "-closureSummary.closedAt",
                                "closureSummary.reason",
                                "-closureSummary.reason",
                                "createdAt",
                                "-createdAt",
                                "updatedAt",
                                "-updatedAt"
                            ]
                        }
                    },
                    {
                        "name": "fields",
                        "required": false,
                        "in": "query",
                        "description": "Specify attributes returned by the request",
                        "type": "string",
                        "items": {
                            "type": "string",
                            "enum": [
                                "id",
                                "customerReference",
                                "status",
                                "impact",
                                "priority",
                                "urgency",
                                "serviceCondition",
                                "type",
                                "origin",
                                "shortDescription",
                                "description",
                                "customer.id",
                                "customer.name",
                                "configurationItems.id",
                                "configurationItems.reference",
                                "configurationItems.type",
                                "configurationItems.customerReference",
                                "location.id",
                                "location.name",
                                "location.customerReference",
                                "servicePoint.id",
                                "servicePoint.name",
                                "servicePoint.reference",
                                "servicePoint.customerReference",
                                "servicePoint.serviceLevelManagement.id",
                                "servicePoint.serviceLevelManagement.coverageTime",
                                "servicePoint.serviceLevelManagement.restoreTime",
                                "servicePoint.serviceLevelManagement.responseTime",
                                "keyDates.openedAt",
                                "keyDates.detectedAt",
                                "keyDates.committedAt",
                                "keyDates.resolvedAt",
                                "keyDates.restoredAt",
                                "keyDates.closedAt",
                                "keyDates.modifiedAt",
                                "keyDates.validatedAt",
                                "contacts.primary.name",
                                "contacts.primary.firstName",
                                "contacts.primary.phone",
                                "contacts.primary.mobile",
                                "contacts.primary.email",
                                "closureSummary.isRootCause",
                                "closureSummary.initialCategory",
                                "closureSummary.cause",
                                "closureSummary.closedAt",
                                "closureSummary.reason",
                                "attachments.id",
                                "attachments.type",
                                "createdAt",
                                "updatedAt"
                            ]
                        }
                    },
                    {
                        "name": "displayLinks",
                        "in": "query",
                        "description": "Flag for displaying the HATEOS links of linked ressources.",
                        "type": "boolean",
                        "default": false
                    },
                    {
                        "name": "displayNulls",
                        "required": false,
                        "in": "query",
                        "description": "Flag for displaying all fields even if the value is null.",
                        "type": "boolean",
                        "default": false
                    },
                    {
                        "name": "id",
                        "required": false,
                        "in": "query",
                        "description": "Filters incidents having Orange Single Identifier (fka. `id`) matching the requested identifier list (separated by comma). \n_example: id=20993, 33333_",
                        "type": "string",
                        "items": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "customerReference",
                        "required": false,
                        "in": "query",
                        "description": "Filter the reponse by the customer reference",
                        "type": "string"
                    },
                    {
                        "name": "status",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the status of the Incident. Possible Values are  `NEW`, `IN_PROGRESS`, `RESTORED`, `RESOLVED`, `CLOSED`, `ARCHIVED`, ON_HOLD, VALIDATED, DISPATCHED, UNKNOWN or a seach expression.",
                        "type": "string"
                    },
                    {
                        "name": "impact",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the impact level of the Incident. Possible values are `HIGH`, `MEDIUM`, `LOW`, `UNKNOWN` or a seach expression.",
                        "type": "string"
                    },
                    {
                        "name": "priority",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the priority of the Incident. Possible values are `P1` (High Priority), `P2`, `P3`, `P4`, `P5` (Low Prioirty) and `UNKNOWN`.",
                        "type": "string"
                    },
                    {
                        "name": "urgency",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the urgency level of the Incident. Possible values are `HIGH`, `MEDIUM`, `LOW`, `UNKNOWN` or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "serviceCondition",
                        "in": "query",
                        "description": "Filter by the service Condition of the Incident. Possible values are `INTERUPTED`, `BACKUP`, `LIMITED`, `DEGRADED`, `MAJOR_DEGRADED`, `TRANSPARENT`, `NO_SERVICE_IMPACT`, `OTHER` or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "type",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the type of the Incident. Possible value is FAILURE. Additional values will be inserted in next versions of the API.",
                        "type": "string"
                    },
                    {
                        "name": "origin",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the origin of the Incident. Possible values are `CUSTOMER`, `PROVIDER`, `PROBES`, `UNKNOWN` or a search expression.",
                        "type": "string"
                    },
                    {
                        "type": "string",
                        "in": "query",
                        "name": "shortDescription",
                        "description": "Filter by shortDescription. The value can be an exact value or a search expression."
                    },
                    {
                        "type": "string",
                        "in": "query",
                        "name": "description",
                        "description": "Filter by description. The value can be an exact value or a search expression."
                    },
                    {
                        "name": "customer.id",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the customer id associated to the incident. Value can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "customer.name",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the customer name associated to the incident. Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "type": "string",
                        "in": "query",
                        "name": "configurationItems.id",
                        "description": "Filter by identifiers of Configuration Items impacted by the issue. Can be an exact value or a seach expression."
                    },
                    {
                        "type": "string",
                        "in": "query",
                        "name": "configurationItems.name",
                        "description": "Filter by the names of Configuration Items impacted by the issue. Can be an exact value or a seach expression."
                    },
                    {
                        "type": "string",
                        "in": "query",
                        "name": "configurationItems.reference",
                        "description": "Filter by references of the Configuration Items impacted by the issue. Can be an exact value or a seach expression."
                    },
                    {
                        "type": "string",
                        "in": "query",
                        "name": "configurationItems.customerName",
                        "description": "Filter by Customer references of the Configuration Items impacted by the issue. Can be an exact value or a seach expression."
                    },
                    {
                        "name": "location.id",
                        "required": false,
                        "in": "query",
                        "description": "Filter the reponse by the Orange identifer of the Location. Can be an exact value or a search expression.",
                        "type": "string",
                        "items": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "location.name",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the name of the location. Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "location.customerReference",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the Customer Reference of the location. Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "contacts.primary.name",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the Contact last name or full name associated to the incident. Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "contacts.primary.firstname",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the Contact first name associated to the incident. Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "contacts.primary.phone",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the Contact phone associated to the incident. Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "contacts.primary.mobile",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the Contact mobile associated to the incident. Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "contacts.primary.email",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the Contact email associated to the incident. Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "servicePoint.id",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the idenfier of the Service Point.Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "type": "string",
                        "in": "query",
                        "name": "servicePoint.reference",
                        "description": "Filter by the reference of the Service Point.Can be an exact value or a search expression."
                    },
                    {
                        "name": "servicePoint.customerReference",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the customer reference of the Service Point. Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "servicePoint.serviceLevelManagement.id",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the identifier of the Service Level Management. Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "servicePoint.serviceLevelManagement.coverageTime",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the Coverage time of the Service Level Management. Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "servicePoint.serviceLevelManagement.restoreTime",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the Restore time of the Service Level Management. Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "servicePoint.serviceLevelManagement.responseTime",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the Response time of the Service Level Management. Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "attachements.id",
                        "required": false,
                        "in": "query",
                        "description": "Filter by attachements identifier.",
                        "type": "string"
                    },
                    {
                        "name": "closureSummary.isRootCause",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the flag if the incident is the root cause of the trouble. Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "closureSummary.initialCategory",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the initial category of the incident. Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "closureSummary.cause",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the closure cause of the incident. Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "closureSummary.closedAt",
                        "required": false,
                        "in": "query",
                        "description": "Filter by closure date of the incident. Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "closureSummary.reason",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the closure reason of the incident. Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "closureSummary.responsible",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the responsability of the incident. Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "keyDates.openedAt",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the opening date of the Incident. Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "keyDates.detectedAt",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the creation date of the Incident. Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "keyDates.committedAt",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the committed date of the Incident. Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "keyDates.resolvedAt",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the resolving date of the Incident. Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "keyDates.restoredAt",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the restoration date of the Incident. Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "keyDates.closedAt",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the close date of the Incident. Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "keyDates.modifiedAt",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the last modified date of the Incident. Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "keyDates.validatedAt",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the validation date of the Incident. Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "createdAt",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the creation date of the Incident. Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "updatedAt",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the last update date of the Incident. Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "includes",
                        "description": "Specify additional items to add in the response",
                        "in": "query",
                        "type": "array",
                        "items": {
                            "type": "string",
                            "enum": [
                                "attachments",
                                "notes",
                                "freezePeriods"
                            ]
                        },
                        "allowEmptyValue": false
                    },
                    {
                        "name": "notes.createdAt",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the creation date of the Notes. Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "in": "query",
                        "name": "offer.id",
                        "type": "string",
                        "description": "Filters by the Offer identifier of the configuration item. Several values can be specified (separated by a comma)"
                    },
                    {
                        "in": "query",
                        "name": "offer.name",
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "Filters by the Offer name assowciated to the configuration item. Several values can be specified (separated by a comma)"
                    },
                    {
                        "in": "query",
                        "name": "offer.family",
                        "type": "string",
                        "description": "Filters by the Offer Family of the configuration item. Several values can be specified (separated by a comma)"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Ok",
                        "schema": {
                            "type": "array",
                            "description": "Return a list of Incidents",
                            "items": {
                                "$ref": "#/definitions/Incident"
                            }
                        },
                        "headers": {
                            "X-Total-Count": {
                                "description": "The total number of items matching criterias.",
                                "type": "integer",
                                "format": "int32"
                            },
                            "X-Result-Count": {
                                "description": "The actual number of items returned in the response body.",
                                "type": "integer",
                                "format": "int32"
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "schema": {
                            "$ref": "#/definitions/ZError"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "$ref": "#/definitions/ZError"
                        }
                    }
                },
                "security": [
                    {
                        "Orange Developer": [
                            "b2b:incident",
                            "b2b:incident:readOnly"
                        ]
                    }
                ]
            }
        },
        "/incidents/aggregate": {
            "get": {
                "summary": "Aggregate Incidents",
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "description": "List of counters.",
                            "type": "object"
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "schema": {
                            "$ref": "#/definitions/ZError"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "$ref": "#/definitions/ZError"
                        }
                    }
                },
                "operationId": "AggregateIncident",
                "description": "This method allows to group incidents and to count the number of items by group",
                "parameters": [
                    {
                        "type": "string",
                        "in": "header",
                        "name": "X-API-KEY",
                        "description": " The API Key required for using Orange Business API."
                    },
                    {
                        "type": "string",
                        "in": "query",
                        "name": "groupBy",
                        "required": true,
                        "description": "Attribut list (separated by comma) for grouping items"
                    },
                    {
                        "name": "id",
                        "required": false,
                        "in": "query",
                        "description": "Filters incidents having Orange Single Identifier (fka. `id`) matching the requested identifier list (separated by comma). \n_example: id=20993, 33333_",
                        "type": "string",
                        "items": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "customerReference",
                        "required": false,
                        "in": "query",
                        "description": "Filter the reponse by the customer reference",
                        "type": "string"
                    },
                    {
                        "name": "status",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the status of the Incident. Possible Values are  `NEW`, `IN_PROGRESS`, `RESTORED`, `RESOLVED`, `CLOSED`, `ARCHIVED`, `ON_HOLD`, `VALIDATED`, `DISPATCHED`, `UNKNOWN` or a seach expression.",
                        "type": "string"
                    },
                    {
                        "name": "impact",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the impact level of the Incident. Possible values are `HIGH`, `MEDIUM`, `LOW`, `UNKNOWN` or a seach expression.",
                        "type": "string"
                    },
                    {
                        "name": "priority",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the priority of the Incident. Possible values are `P1` (High Priority), `P2`, `P3`, `P4`, `P5` (Low Prioirty) and `UNKNOWN`",
                        "type": "string"
                    },
                    {
                        "name": "urgency",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the urgency level of the Incident. Possible values are `HIGH`, `MEDIUM`, `LOW`, `UNKNOWN` or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "serviceCondition",
                        "in": "query",
                        "description": "Filter by the service Condition of the Incident. Possible values are `INTERUPTED`, `BACKUP`, `LIMITED`, `DEGRADED`, `MAJOR_DEGRADED`, `TRANSPARENT`, `NO_SERVICE_IMPACT`, `OTHER` or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "type",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the type of the Incident. Possible value is `FAILURE`. Additional values will be inserted in next versions of the API.",
                        "type": "string"
                    },
                    {
                        "name": "origin",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the origin of the Incident. Possible values are `CUSTOMER`, `PROVIDER`, `PROBES`, `UNKNOWN` or a search expression.",
                        "type": "string"
                    },
                    {
                        "type": "string",
                        "in": "query",
                        "name": "shortDescription",
                        "description": "Filter by shortDescription. The value can be an exact value or a search expression."
                    },
                    {
                        "type": "string",
                        "in": "query",
                        "name": "description",
                        "description": "Filter by description. The value can be an exact value or a search expression."
                    },
                    {
                        "name": "customer.id",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the customer id associated to the incident. Value can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "customer.name",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the customer name associated to the incident. Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "type": "string",
                        "in": "query",
                        "name": "configurationItems.id",
                        "description": "Filter by identifiers of Configuration Items impacted by the issue. Can be an exact value or a seach expression."
                    },
                    {
                        "type": "string",
                        "in": "query",
                        "name": "configurationItems.name",
                        "description": "Filter by the names of Configuration Items impacted by the issue. Can be an exact value or a seach expression."
                    },
                    {
                        "type": "string",
                        "in": "query",
                        "name": "configurationItems.reference",
                        "description": "Filter by references of the Configuration Items impacted by the issue. Can be an exact value or a seach expression."
                    },
                    {
                        "type": "string",
                        "in": "query",
                        "name": "configurationItems.customerName",
                        "description": "Filter by Customer references of the Configuration Items impacted by the issue. Can be an exact value or a seach expression."
                    },
                    {
                        "name": "location.id",
                        "required": false,
                        "in": "query",
                        "description": "Filter the reponse by the Orange identifer of the Location. Can be an exact value or a search expression.",
                        "type": "string",
                        "items": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "location.name",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the name of the location. Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "location.customerReference",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the Customer Reference of the location. Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "contacts.primary.name",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the Contact last name or full name associated to the incident. Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "contacts.primary.firstname",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the Contact first name associated to the incident. Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "contacts.primary.phone",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the Contact phone associated to the incident. Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "contacts.primary.mobile",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the Contact mobile associated to the incident. Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "contacts.primary.email",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the Contact email associated to the incident. Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "servicePoint.id",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the idenfier of the Service Point.Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "type": "string",
                        "in": "query",
                        "name": "servicePoint.reference",
                        "description": "Filter by the reference of the Service Point.Can be an exact value or a search expression."
                    },
                    {
                        "name": "servicePoint.customerReference",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the customer reference of the Service Point. Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "servicePoint.serviceLevelManagement.id",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the identifier of the Service Level Management. Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "servicePoint.serviceLevelManagement.coverageTime",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the Coverage time of the Service Level Management. Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "servicePoint.serviceLevelManagement.restoreTime",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the Restore time of the Service Level Management. Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "servicePoint.serviceLevelManagement.responseTime",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the Response time of the Service Level Management. Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "closureSummary.isRootCause",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the flag if the incident is the root cause of the trouble. Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "closureSummary.initialCategory",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the initial category of the incident. Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "closureSummary.cause",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the closure cause of the incident. Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "closureSummary.closedAt",
                        "required": false,
                        "in": "query",
                        "description": "Filter by closure date of the incident. Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "closureSummary.reason",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the closure reason of the incident. Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "closureSummary.responsible",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the responsability of the incident. Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "keyDates.openedAt",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the opening date of the Incident. Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "keyDates.detectedAt",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the creation date of the Incident. Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "keyDates.committedAt",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the committed date of the Incident. Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "keyDates.resolvedAt",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the resolving date of the Incident. Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "keyDates.restoredAt",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the restoration date of the Incident. Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "keyDates.closedAt",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the close date of the Incident. Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "keyDates.modifiedAt",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the last modified date of the Incident. Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "keyDates.validatedAt",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the validation date of the Incident. Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "createdAt",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the creation date of the Incident. Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "updatedAt",
                        "required": false,
                        "in": "query",
                        "description": "Filter by the last update date of the Incident. Can be an exact value or a search expression.",
                        "type": "string"
                    },
                    {
                        "name": "isEscalated",
                        "required": false,
                        "in": "query",
                        "description": "TODO - Filter incidents that are escalated or not.",
                        "type": "boolean"
                    },
                    {
                        "name": "event.id",
                        "required": false,
                        "in": "query",
                        "description": "TODO - Filter by the identifier of the Event that generate the Incident",
                        "type": "string",
                        "items": {
                            "type": "string"
                        }
                    },
                    {
                        "in": "query",
                        "name": "offer.id",
                        "type": "string",
                        "description": "Filters by the Offer identifier of the configuration item. Several values can be specified (separated by a comma)"
                    },
                    {
                        "in": "query",
                        "name": "offer.name",
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "Filters by the Offer name associated to the configuration item. Several values can be specified (separated by a comma)"
                    },
                    {
                        "in": "query",
                        "name": "offer.family",
                        "type": "string",
                        "description": "Filters by the Offer Family of the configuration item. Several values can be specified (separated by a comma)"
                    }
                ],
                "tags": [
                    "Incidents"
                ]
            }
        },
        "/incidents/aggregate/{groupby}": {
            "get": {
                "tags": [
                    "Incidents"
                ],
                "produces": [
                    "application/json;charset=utf-8"
                ],
                "parameters": [
                    {
                        "name": "groupby",
                        "description": "grouping item",
                        "in": "path",
                        "required": true,
                        "type": "string",
                        "enum": [
                            "status"
                        ]
                    },
                    {
                        "type": "string",
                        "in": "header",
                        "name": "X-API-KEY",
                        "description": " The API Key required for using Orange Business API."
                    }
                ],
                "summary": "Aggregate Pre-Cached Incidents",
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "description": "List of counters.",
                            "type": "object"
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "schema": {
                            "$ref": "#/definitions/ZError"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "$ref": "#/definitions/ZError"
                        }
                    }
                },
                "operationId": "AggregateIncidentCached",
                "description": "This method allows to fetch pre-cached aggregates of incidents based on criterion"
            }
        },
        "/incidents/{incidentId}": {
            "get": {
                "tags": [
                    "Incidents"
                ],
                "produces": [
                    "application/json;charset=utf-8"
                ],
                "operationId": "GetIncident",
                "summary": "Get Incident Details",
                "description": "This method allows to retrieve all information about an incident",
                "deprecated": false,
                "parameters": [
                    {
                        "name": "incidentId",
                        "description": "Orange Incident Number",
                        "required": true,
                        "in": "path",
                        "type": "string"
                    },
                    {
                        "name": "X-API-KEY",
                        "required": false,
                        "in": "header",
                        "description": "The API Key required for using Orange Business API.",
                        "type": "string"
                    },
                    {
                        "name": "fields",
                        "required": false,
                        "in": "query",
                        "description": "Specify attributes returned by the request",
                        "type": "string",
                        "items": {
                            "type": "string",
                            "enum": [
                                "id",
                                "customerReference",
                                "status",
                                "impact",
                                "priority",
                                "urgency",
                                "serviceCondition",
                                "type",
                                "origin",
                                "shortDescription",
                                "description",
                                "customer.id",
                                "customer.name",
                                "configurationItems.id",
                                "configurationItems.reference",
                                "configurationItems.type",
                                "configurationItems.customerReference",
                                "location.id",
                                "location.name",
                                "location.customerReference",
                                "servicePoint.id",
                                "servicePoint.name",
                                "servicePoint.reference",
                                "servicePoint.customerReference",
                                "servicePoint.serviceLevelManagement.id",
                                "servicePoint.serviceLevelManagement.coverageTime",
                                "servicePoint.serviceLevelManagement.restoreTime",
                                "servicePoint.serviceLevelManagement.responseTime",
                                "keyDates.openedAt",
                                "keyDates.detectedAt",
                                "keyDates.committedAt",
                                "keyDates.resolvedAt",
                                "keyDates.restoredAt",
                                "keyDates.closedAt",
                                "keyDates.modifiedAt",
                                "keyDates.validatedAt",
                                "contacts.primary.name",
                                "contacts.primary.firstName",
                                "contacts.primary.phone",
                                "contacts.primary.mobile",
                                "contacts.primary.email",
                                "closureSummary.isRootCause",
                                "closureSummary.initialCategory",
                                "closureSummary.cause",
                                "closureSummary.closedAt",
                                "closureSummary.reason",
                                "createdAt",
                                "updatedAt"
                            ]
                        }
                    },
                    {
                        "name": "displayLinks",
                        "required": false,
                        "in": "query",
                        "description": "Flag for displaying the HATEOS links of linked ressources.",
                        "type": "boolean",
                        "default": false
                    },
                    {
                        "name": "displayNulls",
                        "required": false,
                        "in": "query",
                        "description": "Flag for displaying all fields even if the value is null.",
                        "type": "boolean",
                        "default": false
                    },
                    {
                        "name": "includes",
                        "description": "Specify additional items to add in the response",
                        "in": "query",
                        "type": "string",
                        "items": {
                            "type": "string",
                            "enum": [
                                "attachments",
                                "notes",
                                "freezePeriods"
                            ]
                        },
                        "allowEmptyValue": false
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Ok",
                        "schema": {
                            "$ref": "#/definitions/Incident"
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "schema": {
                            "$ref": "#/definitions/ZError"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "$ref": "#/definitions/ZError"
                        }
                    }
                }
            },
            "patch": {
                "tags": [
                    "Incidents"
                ],
                "consumes": [
                    "application/json;charset=utf-8"
                ],
                "produces": [
                    "application/json;charset=utf-8"
                ],
                "operationId": "UpdateIncident",
                "summary": "Update an incident.",
                "description": "This method allows to modify a few attributes of the incident record.",
                "deprecated": false,
                "parameters": [
                    {
                        "name": "incidentId",
                        "description": "Orange Incident Number",
                        "required": true,
                        "in": "path",
                        "type": "string"
                    },
                    {
                        "name": "X-API-KEY",
                        "required": false,
                        "in": "header",
                        "description": "The API Key required for using Orange Business API.",
                        "type": "string"
                    },
                    {
                        "in": "body",
                        "name": "body",
                        "description": "Body of the request containing attributes to update.",
                        "schema": {
                            "$ref": "#/definitions/IncidentPath"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "type": "object",
                            "description": "Response of the request",
                            "properties": {
                                "id": {
                                    "type": "string",
                                    "description": "Single Identifier of the Incident."
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "schema": {
                            "$ref": "#/definitions/ZError"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "$ref": "#/definitions/ZError"
                        }
                    }
                }
            }
        },
        "/incidents/{incidentId}/notes": {
            "post": {
                "tags": [
                    "Notes"
                ],
                "consumes": [
                    "application/json;charset=utf-8"
                ],
                "produces": [
                    "application/json;charset=utf-8"
                ],
                "operationId": "AddNote",
                "summary": "Add a Note to an Incident",
                "description": "This method allows to add a new note to an incident. When two notes containing identical values in the text and author fields are submitted within a 20-minute timeframe, the previous note is overwritten by the new one, and the 'createdAt' date of the note is refreshed.",
                "deprecated": false,
                "parameters": [
                    {
                        "name": "incidentId",
                        "description": "Orange Incident Number",
                        "in": "path",
                        "required": true,
                        "type": "string"
                    },
                    {
                        "name": "X-API-KEY",
                        "required": false,
                        "in": "header",
                        "description": "The API Key required for using Orange Business API.",
                        "type": "string"
                    },
                    {
                        "in": "body",
                        "name": "body",
                        "description": "Body of the request containing the note attributes.",
                        "schema": {
                            "$ref": "#/definitions/IncidentNotePOST"
                        }
                    }
                ],
                "responses": {
                    "201": {
                        "description": "Created",
                        "schema": {
                            "$ref": "#/definitions/IncidentModificationResponse"
                        },
                        "headers": {
                            "Content-Location": {
                                "type": "string",
                                "description": "URI of the new Incident Note."
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "schema": {
                            "$ref": "#/definitions/ZError"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "$ref": "#/definitions/ZError"
                        }
                    }
                }
            },
            "get": {
                "tags": [
                    "Notes"
                ],
                "produces": [
                    "application/json;charset=utf-8"
                ],
                "operationId": "ListIncidentNotes",
                "summary": "List all Notes of an Incident",
                "description": "This method allows to list all notes associated to an incident.",
                "deprecated": false,
                "parameters": [
                    {
                        "name": "incidentId",
                        "description": "Orange Incident Number",
                        "in": "path",
                        "required": true,
                        "type": "string"
                    },
                    {
                        "name": "X-API-KEY",
                        "required": false,
                        "in": "header",
                        "description": "The API Key required for using Orange Business API.",
                        "type": "string"
                    },
                    {
                        "name": "offset",
                        "required": false,
                        "in": "query",
                        "description": "The index of the first element to retrieve. Zero is the first item of the collection.",
                        "type": "integer",
                        "format": "int32",
                        "default": 0,
                        "minimum": 0
                    },
                    {
                        "name": "limit",
                        "required": false,
                        "in": "query",
                        "description": "The maximum number of items to retrieve.",
                        "type": "integer",
                        "format": "int32",
                        "default": 20,
                        "minimum": 0
                    },
                    {
                        "name": "sort",
                        "required": false,
                        "in": "query",
                        "type": "string",
                        "items": {
                            "type": "string",
                            "enum": [
                                "id",
                                "-id",
                                "author.name",
                                "-author.name",
                                "createdAt",
                                "-createdAt"
                            ]
                        },
                        "description": "Allow to sort the response via an attribut or a list of attributes. For Desc order, the attribut must be prefixed with a '-'. "
                    },
                    {
                        "name": "fields",
                        "required": false,
                        "description": "Reduce the response",
                        "in": "query",
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "required": false,
                        "description": "Identifier of the incident note",
                        "in": "query",
                        "type": "string"
                    },
                    {
                        "name": "author.name",
                        "required": false,
                        "description": "Filter by the author of the note",
                        "in": "query",
                        "type": "string"
                    },
                    {
                        "name": "createdAt",
                        "required": false,
                        "description": "Filter by the creation date of the item",
                        "in": "query",
                        "type": "string"
                    },
                    {
                        "name": "origin",
                        "required": false,
                        "description": "Filter by the origin of the item",
                        "in": "query",
                        "type": "string",
                        "enum": [
                            "Customer",
                            "Orange"
                        ]
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Ok",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/IncidentNote"
                            }
                        },
                        "headers": {
                            "X-Total-Count": {
                                "description": "The total number of items matching criterias.",
                                "type": "integer",
                                "format": "int32"
                            },
                            "X-Result-Count": {
                                "description": "The actual number of items returned in the response.",
                                "type": "integer",
                                "format": "int32"
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "schema": {
                            "$ref": "#/definitions/ZError"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "$ref": "#/definitions/ZError"
                        }
                    }
                }
            }
        },
        "/incidents/{incidentId}/attachments": {
            "post": {
                "tags": [
                    "Attachments"
                ],
                "consumes": [
                    "application/json;charset=utf-8"
                ],
                "produces": [
                    "application/json;charset=utf-8"
                ],
                "operationId": "AddAttachment",
                "summary": "Upload an Attachment",
                "description": "This method allows to add a new attachment to an incident.It is not possible to remove or delete a document",
                "deprecated": false,
                "parameters": [
                    {
                        "name": "incidentId",
                        "in": "path",
                        "description": "Orange Incident Number",
                        "type": "string",
                        "required": true
                    },
                    {
                        "name": "X-API-KEY",
                        "required": false,
                        "in": "header",
                        "description": "The API Key required for using Orange Business API.",
                        "type": "string"
                    },
                    {
                        "name": "async",
                        "required": false,
                        "in": "query",
                        "description": "If true, runs the job asynchronously and returns a job ID. Use GET /jobs/{id} to check status. If false, runs synchronously and waits for completion.",
                        "type": "boolean",
                        "default": false
                    },
                    {
                        "in": "body",
                        "name": "body",
                        "description": "Information require for upload a file.",
                        "schema": {
                            "type": "object",
                            "description": "Attributes on the file to upload.",
                            "properties": {
                                "name": {
                                    "type": "string",
                                    "description": "Name of the file."
                                },
                                "content": {
                                    "type": "string",
                                    "description": "Content of the file encoded in Base64."
                                },
                                "description": {
                                    "type": "string",
                                    "description": "Description of the file"
                                },
                                "type": {
                                    "type": "string",
                                    "description": "Mine Type of the file.",
                                    "enum": [
                                        "application/pdf",
                                        "text/plain",
                                        "text/html",
                                        "image/gif",
                                        "image/jpeg",
                                        "image/png",
                                        "application/zip",
                                        "text/csv",
                                        "application/xls"
                                    ]
                                }
                            }
                        }
                    }
                ],
                "responses": {
                    "201": {
                        "description": "Created",
                        "schema": {
                            "$ref": "#/definitions/PostAttachmentSyncResponse"
                        },
                        "headers": {
                            "Content-Location": {
                                "type": "string",
                                "description": "URI of the new Incident Attachment."
                            }
                        }
                    },
                    "202": {
                        "description": "Accepted",
                        "schema": {
                            "$ref": "#/definitions/PostAttachmentAsyncResponse"
                        },
                        "headers": {
                            "Location": {
                                "type": "string",
                                "description": "The URI of the created asynchronous job"
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "schema": {
                            "$ref": "#/definitions/ZError"
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "schema": {
                            "$ref": "#/definitions/PostAttachmentError"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "$ref": "#/definitions/ZError"
                        }
                    },
                    "504": {
                        "description": "Gateway Timeout",
                        "schema": {
                            "$ref": "#/definitions/PostAttachmentError"
                        }
                    }
                }
            },
            "get": {
                "tags": [
                    "Attachments"
                ],
                "produces": [
                    "application/json;charset=utf-8"
                ],
                "operationId": "ListAttachments",
                "summary": "List all Attachments of an Incident.",
                "description": "The method allows to retrieve the complete list of attachments of a specific incident.",
                "deprecated": false,
                "parameters": [
                    {
                        "name": "incidentId",
                        "in": "path",
                        "description": "Orange Incident Number",
                        "required": true,
                        "type": "string"
                    },
                    {
                        "name": "X-API-KEY",
                        "required": false,
                        "in": "header",
                        "description": "The API Key required for using Orange Business API.",
                        "type": "string"
                    },
                    {
                        "name": "offset",
                        "required": false,
                        "in": "query",
                        "description": "The index of the first element to retrieve. Zero is the first item of the collection.",
                        "type": "integer",
                        "format": "int32",
                        "default": 0,
                        "minimum": 0
                    },
                    {
                        "name": "limit",
                        "required": false,
                        "in": "query",
                        "description": "The maximum number of items to retrieve.",
                        "type": "integer",
                        "format": "int32",
                        "default": 20
                    },
                    {
                        "name": "sort",
                        "required": false,
                        "in": "query",
                        "description": "Allow to sort following one or several attributes separated by a comma. For descending order, just prefix the attribute with a '-'\nFor example: ?sort=-createdAt",
                        "type": "string",
                        "enum": [
                            "id",
                            "-id",
                            "name",
                            "-name",
                            "size",
                            "-size",
                            "type",
                            "-type",
                            "createdAt",
                            "-createdAt"
                        ]
                    },
                    {
                        "name": "fields",
                        "required": false,
                        "in": "query",
                        "description": "Allow to receive partial response by specifying a list of attributes separed by a comma. The 'content' attribute is by default not returned.\nExample: ?fields=name,type,content",
                        "type": "string",
                        "enum": [
                            "id",
                            "name",
                            "content",
                            "size",
                            "type",
                            "createdAt"
                        ]
                    },
                    {
                        "name": "displayLinks",
                        "required": false,
                        "in": "query",
                        "description": "If the href to a linked resource must be displayed or not.",
                        "type": "boolean",
                        "default": false
                    },
                    {
                        "name": "displayNulls",
                        "required": false,
                        "in": "query",
                        "description": "If the name to a linked resource must be displayed or not.",
                        "type": "boolean",
                        "default": false
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Ok",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/Attachment"
                            }
                        },
                        "headers": {
                            "X-Total-Count": {
                                "description": "The total number of items matching criterias.",
                                "type": "integer",
                                "format": "int32"
                            },
                            "X-Result-Count": {
                                "description": "The actual number of items returned in the response body.",
                                "type": "integer",
                                "format": "int32"
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "schema": {
                            "$ref": "#/definitions/ZError"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "$ref": "#/definitions/ZError"
                        }
                    }
                }
            }
        },
        "/incidents/{incidentId}/attachments/{attachmentId}": {
            "get": {
                "tags": [
                    "Attachments"
                ],
                "produces": [
                    "application/pdf",
                    "application/xls",
                    "application/xlsx",
                    "application/zip",
                    "image/gif",
                    "image/jpeg",
                    "image/png",
                    "text/csv",
                    "text/plain",
                    "text/html"
                ],
                "operationId": "GetAttachment",
                "summary": "Download an Attachement",
                "description": "The method allows to download an attachment.",
                "deprecated": false,
                "parameters": [
                    {
                        "name": "incidentId",
                        "in": "path",
                        "description": "Orange Incident Number",
                        "required": true,
                        "type": "string"
                    },
                    {
                        "name": "attachmentId",
                        "description": "Orange Identifier of the attachment",
                        "required": true,
                        "in": "path",
                        "type": "string"
                    },
                    {
                        "name": "X-API-KEY",
                        "required": false,
                        "in": "header",
                        "description": "The API Key required for using Orange Business API.",
                        "type": "string"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Ok",
                        "schema": {
                            "description": "Content of the file in binary mode.",
                            "type": "string",
                            "format": "binary"
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "schema": {
                            "$ref": "#/definitions/ZError"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "$ref": "#/definitions/ZError"
                        }
                    }
                }
            }
        },
        "/incidents/{incidentId}/freezePeriods": {
            "get": {
                "tags": [
                    "Freeze Periods"
                ],
                "produces": [
                    "application/json;charset=utf-8"
                ],
                "operationId": "ListFreezePeriods",
                "summary": "List all Freeze Periods of an Incident.",
                "deprecated": false,
                "parameters": [
                    {
                        "name": "incidentId",
                        "in": "path",
                        "description": "Orange Incident Number",
                        "required": true,
                        "type": "string"
                    },
                    {
                        "name": "X-API-KEY",
                        "required": false,
                        "description": "The API Key required for using Orange Business API.",
                        "in": "header",
                        "type": "string"
                    },
                    {
                        "name": "offset",
                        "required": false,
                        "in": "query",
                        "description": "The index of the first element to retrieve. Zero is the first item of the collection.",
                        "type": "integer",
                        "format": "int32",
                        "default": 0,
                        "minimum": 0
                    },
                    {
                        "name": "limit",
                        "required": false,
                        "in": "query",
                        "description": "The maximum number of items to retrieve.",
                        "type": "integer",
                        "format": "int32",
                        "default": 20
                    },
                    {
                        "name": "displayLinks",
                        "required": false,
                        "in": "query",
                        "description": "If the href to a linked resource must be displayed or not.",
                        "type": "boolean",
                        "default": false
                    },
                    {
                        "name": "displayNulls",
                        "required": false,
                        "in": "query",
                        "description": "If the name to a linked resource must be displayed or not.",
                        "type": "boolean",
                        "default": false
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Ok",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/FreezePeriods"
                            }
                        },
                        "headers": {
                            "X-Total-Count": {
                                "description": "The total number of items matching criterias.",
                                "type": "integer",
                                "format": "int32"
                            },
                            "X-Result-Count": {
                                "description": "The actual number of items returned in the response body.",
                                "type": "integer",
                                "format": "int32"
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "schema": {
                            "$ref": "#/definitions/ZError"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "$ref": "#/definitions/ZError"
                        }
                    }
                },
                "description": "List Freeze Periods of an incident."
            }
        },
         "/autodiag": {
                "post": {
                    "tags": [
                        "autodiag"
                    ],
                    "consumes": [
                        "application/json;charset=utf-8"
                    ],
                    "produces": [
                        "application/json;charset=utf-8"
                    ],
                    "operationId": "autodiag",
                    "summary": "Run a new autodiagnostic",
                    "description": "Run an autodiagnostic for an equipment. Eligibility will be checked before launching.Optional parameters cannot be combined.autodiag without parameter : launch the autodiag autodiag with resetPort : launch a reset port to the equipment. (in autodiag response without parameter, field resetPort should be true) autodiag with getResult : get result of resetPort action. \n Usage of /autodiag in UAT/sandbox will poll or trigger actions on real production assets. When testing, be very cautious in your actions. Doing a simple autodiag is harmless where doing a reset port will reboot the device and connectivity will be lost.",
                    "deprecated": false,
                    "parameters": [
                        {
                            "name": "resetPort",
                            "in": "query",
                            "description": "Flag for the Reset Port.",
                            "type": "boolean",
                            "enum":[true , false],
                            "default": false
                        },
                        {
                            "name": "getResult",
                            "in": "query",
                            "description": "Flag for the Get Result.",
                             "type": "boolean",
                            "enum":[true , false],
                            "default": false
                        },
                        {
                            "name": "body",
                            "required": true,
                            "description": "Body of the POST method describing the autodiag",
                            "in": "body",
                            "schema": {
                                "$ref": "#/definitions/AutodiagPOST"
                            }
                        },
                        {
                            "name": "X-API-KEY",
                            "required": false,
                            "in": "header",
                            "description": "The API Key required for using Orange Business API.",
                            "type": "string"
                        }
                    ],
                    "responses": {
                        "202": {
                            "description": "Accepted",
                            "schema": {
                                "$ref": "#/definitions/AutodiagPOSTResponse"
                            },
                            "headers": {
                                "Content-Location": {
                                    "type": "string",
                                    "description": "URI of the autodiag."
                                }
                            }
                        },
                        "403": {
                            "description": "Forbidden",
                            "schema": {
                                "$ref": "#/definitions/ZError"
                            }
                        },
                        "500": {
                            "description": "Internal Server Error",
                            "schema": {
                                "$ref": "#/definitions/ZError"
                            }
                        }
                    }
                }
        },
        "/autodiag/{autodiagID}": {
            "get": {
                "tags": [
                    "autodiag"
                ],
                "produces": [
                    "application/json;charset=utf-8"
                ],
                "operationId": "Getautodiag",
                "summary": "Get autodiag  Details",
                "description": "This method allows to retrieve all information about an autodiag. As autodiags are ephemeral data, retention is set to 24h.",
                "deprecated": false,
                "parameters": [
                    {
                        "name": "autodiagID",
                        "description": "autodiagID",
                        "required": true,
                        "in": "path",
                        "type": "string"
                    },
                    {
                        "name": "X-API-KEY",
                        "required": false,
                        "in": "header",
                        "description": "The API Key required for using Orange Business API.",
                        "type": "string"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Ok",
                        "schema": {
                            "$ref": "#/definitions/Autodiag"
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "schema": {
                            "$ref": "#/definitions/ZError"
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "schema": {
                            "$ref": "#/definitions/ZError"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "$ref": "#/definitions/ZError"
                        }
                    }
                }
            }
        },
        "/doc": {
            "get": {
                "produces": [
                    "application/json;charset=utf-8"
                ],
                "parameters": [],
                "operationId": "DownloadSwagger",
                "summary": "Download Swagger",
                "description": "Provide the current version of the Swagger File. \nThe API key is not required for this end-point.",
                "deprecated": false,
                "responses": {
                    "200": {
                        "description": "Ok",
                        "schema": {
                            "$ref": "#/definitions/Documentation"
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "schema": {
                            "$ref": "#/definitions/ZError"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "$ref": "#/definitions/ZError"
                        }
                    }
                },
                "tags": [
                    "Miscellaneous"
                ]
            }
        },
        "/status": {
            "get": {
                "produces": [
                    "application/json;charset=utf-8"
                ],
                "parameters": [],
                "operationId": "GetStatus",
                "summary": "Provide the status of the API",
                "description": "This method allows to get the status of the components of the Incident Management API",
                "deprecated": false,
                "responses": {
                    "200": {
                        "description": "Ok",
                        "schema": {
                            "$ref": "#/definitions/APIStatus"
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "schema": {
                            "$ref": "#/definitions/ZError"
                        }
                    },
                    "503": {
                        "description": "Service Unavailable",
                        "schema": {
                            "$ref": "#/definitions/APIStatus"
                        }
                    }
                },
                "tags": [
                    "Miscellaneous"
                ]
            }
        },
        "/version": {
            "get": {
                "produces": [
                    "application/json;charset=utf-8"
                ],
                "parameters": [],
                "operationId": "GetVersion",
                "summary": "Provide the version of the API",
                "description": "This method provides detailed information on the API (Version/patch...)",
                "deprecated": false,
                "responses": {
                    "200": {
                        "description": "Ok",
                        "schema": {
                            "description": "Response to the request.",
                            "type": "object",
                            "properties": {
                                "version": {
                                    "description": "Version of the API",
                                    "type": "object",
                                    "required": [
                                        "major",
                                        "minor",
                                        "patch"
                                    ],
                                    "properties": {
                                        "major": {
                                            "description": "Major number of the API version",
                                            "type": "string"
                                        },
                                        "minor": {
                                            "description": "Minor number of the API version",
                                            "type": "string"
                                        },
                                        "patch": {
                                            "description": "Patch number of the API version",
                                            "type": "string"
                                        }
                                    }
                                },
                                "deprecated": {
                                    "description": "Flag indicating if the API is deprecated",
                                    "type": "boolean",
                                    "default": false
                                }
                            },
                            "required": [
                                "version",
                                "deprecated"
                            ]
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "schema": {
                            "$ref": "#/definitions/ZError"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "$ref": "#/definitions/ZError"
                        }
                    }
                },
                "tags": [
                    "Miscellaneous"
                ]
            }
        },
        "/jobs/{jobId}": {
            "get": {
                "tags": [
                    "Async Jobs"
                ],
                "produces": [
                    "application/json;charset=utf-8"
                ],
                "parameters": [
                    {
                        "name": "jobId",
                        "description": "UUID of the job",
                        "in": "path",
                        "required": true,
                        "type": "string"
                    },
                    {
                        "type": "string",
                        "in": "header",
                        "name": "X-API-KEY",
                        "description": " The API Key required for using Orange Business API."
                    }
                ],
                "summary": "Retrieves the status and details of an asynchronous job.",
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "$ref": "#/definitions/GetJobResponse"
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "schema": {
                            "$ref": "#/definitions/ZError"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "$ref": "#/definitions/ZError"
                        }
                    }
                },
                "operationId": "GetAsyncJobsDetails",
                "description": "This method to get the status and details of an asynchronous job. As jobs are ephemeral data, retention is set to 24h."
            }
        },
        "/me": {
            "get": {
                "summary": "Get User Information.",
                "tags": [
                    "Miscellaneous"
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "$ref": "#/definitions/ME"
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "schema": {
                            "$ref": "#/definitions/ZError"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "$ref": "#/definitions/ZError"
                        }
                    }
                },
                "operationId": "GetMe",
                "description": "This endpoint provides information on the connected user.",
                "security": [
                    {
                        "Orange Developer": [
                            "b2b:incident:readOnly",
                            "b2b:incident"
                        ]
                    }
                ],
                "parameters": [
                    {
                        "type": "string",
                        "in": "header",
                        "name": "X-API-Key",
                        "description": "The API Key required for using Orange Business API."
                    }
                ]
            }
        }
    },
    "definitions": {
        "HyperlinkMethod": {
            "type": "string",
            "description": "HTTP verb used for the link.",
            "enum": [
                "GET",
                "POST",
                "PATCH",
                "DELETE"
            ]
        },
        "ContactSupport": {
            "type": "string",
            "enum": [
                "PHONE",
                "MOBILE",
                "EMAIL"
            ],
            "description": "the preferred method to contact the individual",
            "title": ""
        },
        "ZError": {
            "required": [
                "code",
                "message"
            ],
            "description": "Information on the error.",
            "type": "object",
            "properties": {
                "code": {
                    "type": "integer",
                    "description": "Internal Code of the error.",
                    "format": "int32"
                },
                "message": {
                    "type": "string",
                    "description": "Title of the error."
                },
                "description": {
                    "type": "string",
                    "description": "Details on the error."
                },
                "infoURL": {
                    "type": "string",
                    "description": "URI on more information on the error"
                }
            }
        },
        "IncidentNote": {
            "description": "List of Notes associated to the Incident.",
            "required": [
                "id",
                "origin",
                "body"
            ],
            "type": "object",
            "properties": {
                "id": {
                    "description": "Identifier of the incident note",
                    "type": "string"
                },
                "author": {
                    "$ref": "#/definitions/Author"
                },
                "origin": {
                    "description": "Origin of the Note.",
                    "type": "string",
                    "enum": [
                        "Customer",
                        "Orange"
                    ]
                },
                "body": {
                    "description": "The message of the Note.",
                    "type": "string"
                },
                "attachment": {
                    "description": "URI of the content related to the note's attachment.",
                    "type": "string"
                },
                "createdAt": {
                    "description": "Date of the creation of the note",
                    "type": "string",
                    "format": "date-time"
                }
            }
        },
        "IncidentModificationResponse": {
            "description": "Response of the request.",
            "required": [
                "id"
            ],
            "type": "object",
            "properties": {
                "id": {
                    "description": "Single Identifier of an incident",
                    "type": "string"
                }
            }
        },
        "PostAttachmentSyncResponse": {
            "description": "Response of the request.",
            "required": [
                "id"
            ],
            "type": "object",
            "properties": {
                "id": {
                    "description": "Single Identifier of an incident",
                    "type": "string"
                },
                "attachmentId": {
                    "description": "The identifier for the attachment that was successfully posted.",
                    "type": "string"
                },
                "href": {
                    "description": "URI of the new Incident Attachment.",
                    "type": "string"
                }
            }
        },
        "PostAttachmentAsyncResponse": {
            "description": "Response of the request.",
            "type": "object",
            "properties": {
                "location": {
                    "description": "The URI of the created asynchronous job",
                    "type": "string"
                }
            }
        },
        "PostAttachmentError": {
            "required": [
                "code",
                "message"
            ],
            "description": "Information on the error.",
            "type": "object",
            "properties": {
                "id": {
                    "description": "Single Identifier of an incident",
                    "type": "string"
                },
                "state": {
                    "description": "Indicates the current status of the request.",
                    "type": "string"
                },
                "code": {
                    "type": "string",
                    "description": "Internal status Code of the error."
                },
                "message": {
                    "type": "string",
                    "description": "Error Message."
                },
                "attachmentId": {
                    "description": "The identifier for the attachment that was successfully posted.",
                    "type": "string"
                },
                "href": {
                    "description": "URI of the new Incident Attachment.",
                    "type": "string"
                },
                "description": {
                    "type": "string",
                    "description": "Details on the error."
                },
                "infoURL": {
                    "type": "string",
                    "description": "URI on more information on the error"
                }
            }
        },
        "GetJobResponse": {
            "required": [
                "uuid"
            ],
            "description": "Information about the asynchronous job.",
            "type": "object",
            "properties": {
                "uuid": {
                    "description": "The unique identifier of the job.",
                    "type": "string"
                },
                "description": {
                    "type": "string",
                    "description": ""
                },
                "state": {
                    "description": "Indicates the current status of the job.",
                    "type": "string"
                },
                "code": {
                    "type": "string",
                    "description": "Status code representing the job outcome."
                },
                "message": {
                    "type": "string",
                    "description": "Additional information or messages related to the job."
                },
                "start_time": {
                    "description": "The date and time when the job started.",
                    "type": "string",
                    "format": "date-time"
                },
                "end_time": {
                    "description": "The date and time when the job ended.",
                    "type": "string",
                    "format": "date-time"
                },
                "href": {
                    "description": "The URI of the newly created incident attachment.",
                    "type": "string"
                },
                "additional_details": {
                    "description": "Additional details, if available.",
                    "type": "object"
                }
            }
        },
        "Attachment": {
            "description": "List of files attached to the Incident.",
            "required": [
                "name",
                "type",
                "size",
                "createdAt"
            ],
            "type": "object",
            "properties": {
                "name": {
                    "description": "Display name of the file.",
                    "type": "string"
                },
                "type": {
                    "description": "Extension of the file such ..png; .txt, .zip, etc...",
                    "type": "string"
                },
                "size": {
                    "description": "Size in octets of the file.",
                    "type": "string"
                },
                "href": {
                    "description": "URI on the content of the file.",
                    "type": "string"
                },
                "createdAt": {
                    "description": "Date of the publication of the file",
                    "type": "string",
                    "format": "date-time"
                },
                "content": {
                    "type": "string",
                    "description": "Content of the file in Base64",
                    "format": "byte"
                }
            }
        },
        "Incident": {
            "description": "Object representing the Incident",
            "type": "object",
            "x-examples": {
                "example-1": {}
            },
            "properties": {
                "id": {
                    "description": "Incident number, it is an unique id for identifying the incident. **This ID is managed by Orange Business**",
                    "type": "string"
                },
                "customerReference": {
                    "description": "Customer Reference of the incident. Allow to indicate, the Incident number of a third party Incident Management system. \nThis can be set via the POST method or updated via the PATCH method. ",
                    "type": "string"
                },
                "status": {
                    "type": "string",
                    "description": "Status of the incident. Available values are NEW for the creation, **IN_PROGRESS**, ON_HOLD",
                    "enum": [
                        "NEW",
                        "IN_PROGRESS",
                        "RESTORED",
                        "RESOLVED",
                        "CLOSED",
                        "ARCHIVED",
                        "ON_HOLD",
                        "VALIDATED",
                        "DISPATCHED"
                    ],
                    "default": "NEW",
                    "example": "IN_PROGRESS"
                },
                "impact": {
                    "description": "Impact level of the current incident.",
                    "type": "string",
                    "enum": [
                        "HIGH",
                        "MEDIUM",
                        "LOW",
                        "UNKNOWN"
                    ]
                },
                "urgency": {
                    "type": "string",
                    "enum": [
                        "HIGH",
                        "MEDIUM",
                        "LOW",
                        "UNKNOWN"
                    ],
                    "description": "Urgency of the incident."
                },
                "serviceCondition": {
                    "type": "string",
                    "description": "Service condition of the incident",
                    "enum": [
                        "BACKUP",
                        "LIMITED",
                        "DEGRADED",
                        "MAJOR_DEGRADED",
                        "TRANSPARENT",
                        "OTHER",
                        "INTERRUPTED",
                        "NO_SERVICE_IMPACT"
                    ]
                },
                "type": {
                    "type": "string",
                    "description": "Type of the incident, support only FAILURE",
                    "enum": [
                        "FAILURE"
                    ]
                },
                "origin": {
                    "type": "string",
                    "description": "Root of the creation of the incident by Customer, Probes or Orange Staff). ",
                    "enum": [
                        "CUSTOMER",
                        "ORANGE",
                        "PROACTIVE",
                        "INTERNAL"
                    ]
                },
                "priority": {
                    "type": "string",
                    "enum": [
                        "P1",
                        "P2",
                        "P3",
                        "P4",
                        "P5",
                        "UNKNOWN"
                    ],
                    "description": "Priority of the incident."
                },
                "shortDescription": {
                    "description": "Short description of the incident. Information provided at the opening of the Incident.",
                    "type": "string"
                },
                "description": {
                    "description": "Detailed description of the incident. Information provided at the opening of the Incident.",
                    "type": "string"
                },
                "servicePoint": {
                    "$ref": "#/definitions/ServicePoint"
                },
                "escalationLevel": {
                    "description": "Indicate the level of the escalation of the incident. If the value is null, the ticket is not in escalation mode.",
                    "type": "string"
                },
                "onHoldReason": {
                    "type": "string",
                    "description": "Information on the reason of the onhold status."
                },
                "customer": {
                    "$ref": "#/definitions/Customer"
                },
                "location": {
                    "$ref": "#/definitions/Location"
                },
                "contacts": {
                    "type": "object",
                    "properties": {
                        "primary": {
                            "$ref": "#/definitions/Individual"
                        }
                    }
                },
                "keyDates": {
                    "type": "object",
                    "description": "Important dates of the Incident.\n",
                    "properties": {
                        "openedAt": {
                            "type": "string",
                            "format": "date-time",
                            "example": "2020-01-01T00:00:00Z",
                            "description": "Date when the ticket has been created. Use the [ISO-8601](https://www.w3.org/TR/NOTE-datetime) format.\n_Example: 2015-04-09T12:07:56Z_"
                        },
                        "detectedAt": {
                            "type": "string",
                            "format": "date-time",
                            "example": "2020-01-01T00:00:00Z",
                            "description": "Date when the issue has been detected. Use the [ISO-8601](https://www.w3.org/TR/NOTE-datetime) format.\n_Example: 2015-04-09T12:07:56Z_"
                        },
                        "committedAt": {
                            "type": "string",
                            "format": "date-time",
                            "example": "2020-01-01T00:00:00Z",
                            "description": "Date when the ticket must be fixed. Use the [ISO-8601](https://www.w3.org/TR/NOTE-datetime) format.\n_Example: 2015-04-09T12:07:56Z_"
                        },
                        "resolvedAt": {
                            "type": "string",
                            "format": "date-time",
                            "example": "2020-01-01T00:00:00Z",
                            "description": "Use the [ISO-8601](https://www.w3.org/TR/NOTE-datetime) format.\n_Example: 2015-04-09T12:07:56Z_"
                        },
                        "restoredAt": {
                            "type": "string",
                            "format": "date-time",
                            "example": "2020-01-01T00:00:00Z",
                            "description": "Use the [ISO-8601](https://www.w3.org/TR/NOTE-datetime) format.\n_Example: 2015-04-09T12:07:56Z_"
                        },
                        "closedAt": {
                            "type": "string",
                            "format": "date-time",
                            "example": "2020-01-01T00:00:00Z",
                            "description": "Date when the ticket is closed. Use the [ISO-8601](https://www.w3.org/TR/NOTE-datetime) format.\n_Example: 2015-04-09T12:07:56Z_"
                        },
                        "validatedAt": {
                            "type": "string",
                            "format": "date-time",
                            "example": "2020-01-01T00:00:00Z",
                            "description": "Use the [ISO-8601](https://www.w3.org/TR/NOTE-datetime) format.\n_Example: 2015-04-09T12:07:56Z_"
                        },
                        "archivedAt": {
                            "type": "string",
                            "format": "date-time",
                            "example": "2020-01-01T00:00:00Z",
                            "description": "Date when the ticket has been archived in our system.Use the [ISO-8601](https://www.w3.org/TR/NOTE-datetime) format.\n_Example: 2015-04-09T12:07:56Z_"
                        },
                        "escalatedAt": {
                            "type": "string",
                            "format": "date-time",
                            "example": "2020-01-01T00:00:00Z",
                            "description": "Date of the current secalation. If no escalation in progress the attribute is null. Use the [ISO-8601](https://www.w3.org/TR/NOTE-datetime) format.\n_Example: 2015-04-09T12:07:56Z_\n*This feature will be available in a next version*"
                        },
                        "modifiedAt": {
                            "type": "string",
                            "description": "Date of the last modification. Use the [ISO-8601](https://www.w3.org/TR/NOTE-datetime) format.\n_Example: 2015-04-09T12:07:56Z_"
                        }
                    }
                },
                "offer": {
                    "$ref": "#/definitions/Offer"
                },
                "configurationItems": {
                    "type": "array",
                    "items": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string",
                                "description": "Orange Single Identifier of the Configuration Item."
                            },
                            "type": {
                                "type": "string",
                                "description": "Type of the Configuration Item."
                            },
                            "reference": {
                                "type": "string",
                                "description": "Orange Reference of the Configuration Item."
                            },
                            "customerReference": {
                                "type": "string",
                                "description": "Customer Reference of the Configuration Item."
                            }
                        }
                    }
                },
                "createdAt": {
                    "description": "Date of the Incident has been created in the system. Use the [ISO-8601](https://www.w3.org/TR/NOTE-datetime) format.\n_Example: 2015-04-09T12:07:56Z_",
                    "type": "string",
                    "format": "date-time"
                },
                "updatedAt": {
                    "description": "Date of the Incident has been updated the last time in the system. Use the [ISO-8601](https://www.w3.org/TR/NOTE-datetime) format.\n_Example: 2015-04-09T12:07:56Z_",
                    "type": "string",
                    "format": "date-time"
                },
                "events": {
                    "$ref": "#/definitions/Event"
                },
                "attachments": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/Attachment"
                    }
                },
                "notes": {
                    "$ref": "#/definitions/IncidentNote"
                },
                "freezePeriods": {
                    "$ref": "#/definitions/FreezePeriods"
                },
                "_links": {
                    "$ref": "#/definitions/IncidentLinks"
                }
            },
            "required": [
                "id",
                "customerReference",
                "status",
                "impact",
                "urgency",
                "serviceCondition",
                "type",
                "origin",
                "shortDescription",
                "description",
                "onHoldReason",
                "customer",
                "location",
                "keyDates",
                "createdAt",
                "updatedAt"
            ]
        },
        "Offer": {
            "type": "object",
            "description": "Information on the associated Offer.",
            "properties": {
                "id": {
                    "type": "string",
                    "description": "Orange Single Identifier of an Offer"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the main Offer associatzed to the device"
                },
                "family": {
                    "type": "string",
                    "description": "Family of the offer such as NETWORK, VOICE..."
                }
            },
            "required": [
                "id",
                "name",
                "family"
            ]
        },
        "Location": {
            "description": "Location where the issue has been detected.",
            "required": [
                "id",
                "name",
                "customerReference",
                "address"
            ],
            "type": "object",
            "properties": {
                "id": {
                    "description": "Single identifier of the location",
                    "type": "string"
                },
                "name": {
                    "description": "Name of the building, company etc..",
                    "type": "string"
                },
                "customerReference": {
                    "description": "Customer Reference of the location.",
                    "type": "string"
                },
                "address": {
                    "$ref": "#/definitions/Address"
                }
            }
        },
        "Address": {
            "description": "Information on the Address.",
            "required": [
                "street",
                "extendedStreet",
                "postalCode",
                "city",
                "locality",
                "country"
            ],
            "type": "object",
            "properties": {
                "street": {
                    "description": "Number of the street.",
                    "type": "string"
                },
                "extendedStreet": {
                    "description": "Letter of the street or extensions such as bis, ter.",
                    "type": "string"
                },
                "postalCode": {
                    "description": "postalCode of the address.",
                    "type": "string"
                },
                "city": {
                    "description": "Name of the city.",
                    "type": "string"
                },
                "locality": {
                    "description": "Locality, county.",
                    "type": "string"
                },
                "country": {
                    "description": "Country of the address.",
                    "type": "string"
                }
            }
        },
        "Individual": {
            "description": "Person.",
            "type": "object",
            "properties": {
                "name": {
                    "type": "string",
                    "description": "Last name or Full name of the contact (First name + last name)"
                },
                "firstName": {
                    "type": "string",
                    "description": "First name of the contact"
                },
                "phone": {
                    "type": "string",
                    "description": "Phone number of the contact"
                },
                "mobile": {
                    "type": "string",
                    "description": "Mobile phone number of the contact"
                },
                "email": {
                    "type": "string",
                    "description": "email of the contact",
                    "format": "email"
                }
            },
            "required": [
                "name"
            ]
        },
        "Author": {
            "description": "Person wrote the Note.",
            "type": "object",
            "properties": {
                "name": {
                    "type": "string",
                    "description": "Full name of the Author (First name + last name)"
                }
            },
            "required": [
                "name"
            ]
        },
        "APIStatus": {
            "description": "Model of a status.",
            "type": "object",
            "properties": {
                "name": {
                    "description": "Service internal name.",
                    "type": "string"
                },
                "status": {
                    "type": "string",
                    "description": "\"ok\" if the service is functional (not taking into account the components health), \"ko\" if something is wrong (missing configuration data, database is down...)",
                    "enum": [
                        "ok",
                        "ko"
                    ]
                },
                "version": {
                    "description": "API version (major dot minor dot patch numbers).",
                    "type": "string"
                }
            },
            "required": [
                "name",
                "status",
                "version"
            ]
        },
        "ConfigurationItemPOST": {
            "description": "If you want to report an incident on an Equipment, product, you must provide at least one of these attributes.",
            "type": "object",
            "properties": {
                "id": {
                    "description": "Single identifier of the configurationItem.",
                    "type": "string"
                },
                "name": {
                    "description": "Name of the configuration Item.",
                    "type": "string"
                },
                "reference": {
                    "description": "Orange Reference of the configuration Item.",
                    "type": "string"
                },
                "customerReference": {
                    "description": "Customer Reference of the configuration Item.",
                    "type": "string"
                }
            }
        },
        "Customer": {
            "description": "Information on the Customer Account.",
            "required": [
                "id",
                "name"
            ],
            "type": "object",
            "properties": {
                "id": {
                    "description": "Unique identifier of the customer account.",
                    "type": "string"
                },
                "name": {
                    "description": "Name of the Customer.",
                    "type": "string"
                }
            }
        },
        "IncidentNotePOST": {
            "description": "Attributes required to post a new Incident Note.",
            "type": "object",
            "properties": {
                "author": {
                    "$ref": "#/definitions/Author"
                },
                "note": {
                    "description": "comment of the note",
                    "type": "string"
                },
                "attachmentId": {
                    "description": "Attachment reference ID for an existing attachment",
                    "type": "string"
                }
            },
            "required": [
                "note"
            ]
        },
        "IncidentPOST": {
            "type": "object",
            "description": "Attributes to provide for reporting an incident.",
            "properties": {
                "customerReference": {
                    "description": "Reference of the incident can be freely updated. Allow to indicate, the Incident number of a third party Incident Management system.",
                    "type": "string"
                },
                "urgency": {
                    "type": "string",
                    "enum": [
                        "HIGH",
                        "MEDIUM",
                        "LOW"
                    ],
                    "description": "Level of the urgency of the trouble"
                },
                "impact": {
                    "description": "Level of the impact of the trouble",
                    "type": "string",
                    "enum": [
                        "HIGH",
                        "MEDIUM",
                        "LOW"
                    ]
                },
                "configurationItem": {
                    "$ref": "#/definitions/ConfigurationItemPOST"
                },
                "servicePoint": {
                    "$ref": "#/definitions/ServicePointPOST"
                },
                "shortDescription": {
                    "description": "Short description of the incident. Information provided at the opening of the Incident.",
                    "type": "string"
                },
                "description": {
                    "description": "Detailed description of the incident. Information provided at the opening of the Incident.",
                    "type": "string"
                },
                "customer": {
                    "$ref": "#/definitions/Customer"
                },
                "contacts": {
                    "type": "object",
                    "description": "Contacts that can be contacted or notified about the incident.",
                    "properties": {
                        "primary": {
                            "$ref": "#/definitions/Individual"
                        }
                    }
                }
            },
            "required": [
                "urgency",
                "impact",
                "shortDescription",
                "description"
            ]
        },
         "AutodiagPOST": {
            "type": "object",
            "description": " AutodiagPOST configurationItem Request",
            "properties": {
                "configurationItemId": {
                    "description": "Single identifier of the configurationItem.",
                    "type": "string"
                }
            }
        },
        "AutodiagPOSTResponse": {
            "description": "Response of the request.",
            "type": "object",
            "properties": {
                "referenceId": {
                    "description": "referenceId of the Autodiag response.",
                    "type": "string"
                }
            }
        },
         "Autodiag": {
            "description": "Object representing the Autodiag",
            "type": "object",
            "properties": {
                "status": {
                    "type": "integer",
                    "description": "Status of the autodiag."
                },
                "message": {
                    "type": "string",
                    "description": "message of the autodiag."
                },
                "data": {
                    "type": "object",
                    "properties": {
                        "tagResetPort": {
                            "type": "object",
                            "properties": {
                                "resetPort": {
                                    "type": "boolean"
                                }
                            }
                        },
                        "codeFonc": {
                            "type": "string",
                            "description": "codeFonc. "
                        },
                        "commentCltEn": {
                            "description": "commentCltEn.",
                            "type": "string"
                        },
                        "conseilCltEn": {
                            "type": "string",
                            "description": "Urgency of the incident."
                        },
                        "commentClt": {
                            "type": "string",
                            "description": "commentClt"
                        },
                        "conseilClt": {
                            "type": "string",
                            "description": "conseilClt"
                        }
                    }
                }
            }
        },
        "FreezePeriods": {
            "description": "List of Freeze Periods declared on the Incident.",
            "required": [
                "id",
                "cause",
                "startedAt"
            ],
            "type": "object",
            "properties": {
                "id": {
                    "description": "single identifier of the freeze period. The last number indicate the number of freeze period.",
                    "type": "string"
                },
                "cause": {
                    "description": "Cause of the freeze period.",
                    "type": "string"
                },
                "description": {
                    "description": "Comment on the freeze period",
                    "type": "string"
                },
                "startedAt": {
                    "description": "Start date fo the freeze period.",
                    "type": "string",
                    "format": "date-time"
                },
                "endedAt": {
                    "description": "End date of the freeze period.",
                    "type": "string",
                    "format": "date-time"
                },
                "duration": {
                    "description": "Duration in minutes of the freeze Period.",
                    "type": "integer",
                    "format": "int32"
                }
            }
        },
        "Documentation": {
            "description": "JSON format of the Swagger",
            "type": "object"
        },
        "Hyperlink": {
            "description": "Information on the request.",
            "required": [
                "href"
            ],
            "type": "object",
            "properties": {
                "href": {
                    "description": "URI on the object.",
                    "type": "string"
                },
                "method": {
                    "$ref": "#/definitions/HyperlinkMethod"
                },
                "payload": {
                    "description": "Body of the request.",
                    "type": "string"
                }
            }
        },
        "IncidentLinks": {
            "description": "URIs on the associated objects.",
            "required": [
                "self"
            ],
            "type": "object",
            "properties": {
                "self": {
                    "$ref": "#/definitions/Hyperlink"
                },
                "location": {
                    "$ref": "#/definitions/Hyperlink"
                },
                "servicePoint": {
                    "$ref": "#/definitions/Hyperlink"
                },
                "configurationItems": {
                    "$ref": "#/definitions/Hyperlink"
                }
            }
        },
        "ME": {
            "title": "Me",
            "type": "object",
            "description": "Information on the connected user and the API Key.",
            "properties": {
                "id": {
                    "type": "string",
                    "description": "Single Identifier of the API key."
                },
                "login": {
                    "type": "string",
                    "description": "Login of the associated user."
                },
                "name": {
                    "type": "string",
                    "description": "Name of the associated user."
                },
                "phone": {
                    "type": "string",
                    "description": "Phone number of the associated user."
                },
                "mobile": {
                    "type": "string",
                    "description": "Mobile number of the associated user."
                },
                "email": {
                    "type": "string",
                    "description": "Email address of the associated user."
                },
                "scopes": {
                    "type": "string",
                    "description": "Scopes defined for the API Key for Machine to Machine connection, or negotiated scopes for User to Machine connection."
                },
                "type": {
                    "type": "string",
                    "enum": [
                        "SANDBOX",
                        "PRODUCTION"
                    ],
                    "description": "Type of the environment (Sandbox or Production)"
                },
                "application": {
                    "type": "string",
                    "description": "Application identifier in Orange Developer Portal."
                },
                "token": {
                    "type": "string",
                    "description": "Token identifier associated to the API Key."
                },
                "createdAt": {
                    "type": "string",
                    "description": "Date of the creation of the API Key."
                },
                "updatedAt": {
                    "type": "string",
                    "description": "Last update date of the API Key."
                },
                "expiredAt": {
                    "type": "string",
                    "description": "Expiration Date of the API Key.\n"
                }
            }
        },
        "Event": {
            "description": "Proactive Event having created the incident",
            "type": "object",
            "properties": {
                "id": {
                    "type": "string",
                    "description": "Orange Single Identifier of the Event."
                },
                "name": {
                    "type": "string",
                    "description": "Name of the Event."
                },
                "createdAt": {
                    "type": "string",
                    "format": "date-time",
                    "description": "Date when the event has been trigged.  Use the [ISO-8601](https://www.w3.org/TR/NOTE-datetime) format.\n_Example: 2015-04-09T12:07:56Z_."
                },
                "isCurrent": {
                    "type": "boolean",
                    "description": "Indicate if it is the current step."
                }
            },
            "required": [
                "id",
                "name",
                "createdAt"
            ]
        },
        "ServicePointPOST": {
            "description": "Service Point where the incident is detected. If you want to report an incident on a Service Point, you must specified one of these attributes.",
            "title": "",
            "type": "object",
            "properties": {
                "id": {
                    "type": "string",
                    "description": "Orange Single Identifier of the Service Point."
                },
                "name": {
                    "type": "string",
                    "description": "name of the Service Point."
                },
                "customerReference": {
                    "type": "string",
                    "description": "Customer Reference of the Service Point."
                },
                "reference": {
                    "type": "string",
                    "description": "Reference of the Service Point."
                }
            }
        },
        "ServicePoint": {
            "description": "Service Point where the incident is detected",
            "type": "object",
            "properties": {
                "id": {
                    "type": "string",
                    "description": "Orange Single Identifier of the Service Point."
                },
                "name": {
                    "type": "string",
                    "description": "Name of the Service Point."
                },
                "customerReference": {
                    "type": "string",
                    "description": "Customer Reference of the Service Point."
                },
                "serviceLevelManagement": {
                    "$ref": "#/definitions/ServiceLevelManagement"
                }
            },
            "title": ""
        },
        "ServiceLevelManagement": {
            "required": [
                "id"
            ],
            "description": "Information on the Service Level Management.",
            "type": "object",
            "properties": {
                "id": {
                    "description": "Single Identifier of the Service Level Management.",
                    "type": "string"
                },
                "coverageTime": {
                    "description": "Coverage Time of the Service Level Management.",
                    "type": "string"
                },
                "restoreTime": {
                    "description": "Restore Time of the Service Level Management.",
                    "type": "integer",
                    "format": "int32"
                },
                "responseTime": {
                    "description": "Response Time of the Service Level Management.",
                    "type": "integer",
                    "format": "int32"
                }
            }
        },
        "IncidentPath": {
            "type": "object",
            "description": "Only the Customer Reference and Incident Short Description can be updated on an Incident Object.",
            "properties": {
                "customerReference": {
                    "type": "string",
                    "description": "Customer Reference of the Incident."
                },
                "shortDescription": {
                    "type": "string",
                    "description": "Short description of the incident."
                }
            },
            "required": [
                "customerReference"
            ]
        },
        "IncidentPOSTResponse": {
            "description": "Response of the request.",
            "required": [
                "id"
            ],
            "type": "object",
            "properties": {
                "id": {
                    "description": "Single Identifier of an incident",
                    "type": "string"
                }
            }
        }
    },
    "securityDefinitions": {
        "Orange Developer": {
            "type": "oauth2",
            "flow": "application",
            "scopes": {
                "b2b:incident:readOnly": "Read Access to Incident for Business API",
                "b2b:incident": "Full Access to Incident for Business API"
            },
            "description": "",
            "tokenUrl": "https://api.orange.com/oauth/v2/token"
        }
    },
    "security": [
        {
            "Orange Developer": [
                "b2b:incident",
                "b2b:incident:readOnly"
            ]
        }
    ]
}