{"openapi":"3.0.0","info":{"title":"OVHcloud API specification","description":"Specification for OVHcloud API","version":"1.0","contact":{"name":"OVH","email":"api@ml.ovh.net"}},"servers":[{"url":"https://api.eu.ovhcloud.com/1.0"}],"components":{"schemas":{"any":{"description":"Can be anything (text, int, bool, json, html, etc.)","example":"This is a content of any type !"},"coreTypes.CountryEnum":{"type":"string","description":"ISO country codes","enum":["ac","ad","ae","af","ag","ai","al","am","an","ao","aq","ar","as","at","au","aw","ax","az","ba","bb","bd","be","bf","bg","bh","bi","bj","bl","bm","bn","bo","bq","br","bs","bt","bv","bw","by","bz","ca","cc","cd","cf","cg","ch","ci","ck","cl","cm","cn","co","cr","cs","cu","cv","cw","cx","cy","cz","de","dj","dk","dm","do","dz","ec","ee","eg","eh","er","es","et","fc","fd","fi","fj","fk","fm","fo","fr","fx","ga","gb","gd","ge","gf","gg","gh","gi","gl","gm","gn","gp","gq","gr","gs","gt","gu","gw","gy","hk","hm","hn","hr","ht","hu","id","ie","il","im","in","io","iq","ir","is","it","je","jm","jo","jp","ke","kg","kh","ki","km","kn","kp","kr","kw","ky","kz","la","lb","lc","li","lk","lr","ls","lt","lu","lv","ly","ma","mc","md","me","mf","mg","mh","mk","ml","mm","mn","mo","mp","mq","mr","ms","mt","mu","mv","mw","mx","my","mz","na","nc","ne","nf","ng","ni","nl","no","np","nr","nu","nz","om","pa","pe","pf","pg","ph","pk","pl","pm","pn","pr","ps","pt","pw","py","qa","qc","re","ro","rs","ru","rw","sa","sb","sc","sd","se","sg","sh","si","sj","sk","sl","sm","sn","so","sr","ss","st","sv","sx","sy","sz","tc","td","tf","tg","th","tj","tk","tl","tm","tn","to","tp","tr","tt","tv","tw","tz","ua","ug","uk","um","us","uy","uz","va","vc","ve","vg","vi","vn","vu","we","wf","ws","ye","yt","yu","za","zm","zw"]},"duration":{"type":"string","description":"Duration (e.g., P1Y2M3DT4H6M9S)","example":"P1Y2M3DT4H6M9S"},"email":{"type":"string","description":"Email address (e.g., api@ml.ovh.net)","format":"email","example":"api@ml.ovh.net"},"iam.ResourceMetadata":{"type":"object","description":"IAM resource metadata embedded in services models","properties":{"displayName":{"type":"string","description":"Resource display name","nullable":true,"readOnly":true},"id":{"type":"string","description":"Unique identifier of the resource","format":"uuid","readOnly":true},"state":{"allOf":[{"$ref":"#/components/schemas/iam.ResourceMetadata.StateEnum"}],"description":"Resource state","nullable":true,"readOnly":true},"tags":{"type":"object","description":"Resource tags. Tags that were internally computed are prefixed with ovh:","nullable":true,"additionalProperties":{"type":"string"},"readOnly":true},"urn":{"type":"string","description":"Unique resource name used in policies","readOnly":true}}},"iam.ResourceMetadata.StateEnum":{"type":"string","description":"Resource state","enum":["EXPIRED","IN_CREATION","OK","SUSPENDED"]},"iam.resource.TagFilter":{"type":"object","description":"Resource tag filter","properties":{"operator":{"allOf":[{"$ref":"#/components/schemas/iam.resource.TagFilter.OperatorEnum"}],"description":"Operator to use in order to filter on the value (defaults to 'EQ')","nullable":true,"readOnly":true},"value":{"type":"string","description":"Value to use in order to filter tags","readOnly":true}}},"iam.resource.TagFilter.OperatorEnum":{"type":"string","description":"Operator that can be used in order to filter resources tags","enum":["EQ","EXISTS","ILIKE","LIKE","NEQ","NEXISTS"]},"internationalPhoneNumber":{"type":"string","description":"International phone number","format":"phone-number"},"ip":{"type":"string","description":"IP address (e.g., 192.0.2.0)","format":"ipv4","example":"192.0.2.0"},"ipBlock":{"type":"string","description":"IP (v4 or v6) CIDR notation (e.g., 192.0.2.0/24)","format":"ip-block","example":"192.0.2.0/24"},"ipInterface":{"type":"string","description":"IP address (e.g., 192.0.2.0)","format":"ipv4","example":"192.0.2.0"},"ipv4":{"type":"string","description":"IPv4 address (e.g., 192.0.2.0)","format":"ipv4","example":"192.0.2.0"},"ipv4Block":{"type":"string","description":"IPv4 CIDR notation (e.g., 192.0.2.0/24)","format":"ipv4-block","example":"192.0.2.0/24"},"ipv6":{"type":"string","description":"IPv6 address (e.g., 2001:41d0:1:1994::1)","format":"ipv6","example":"2001:41d0:1:1994::1"},"ipv6Block":{"type":"string","description":"IPv6 CIDR notation (e.g., 2001:41d0::/128)","format":"ipv6-block","example":"2001:41d0::/128"},"macAddress":{"type":"string","description":"MAC address (e.g., 00:00:5e:00:53:01)","format":"mac-address","example":"00:00:5e:00:53:01"},"order.Contract":{"type":"object","description":"A contract","properties":{"content":{"type":"string","description":"Terms of the contract","readOnly":true},"name":{"type":"string","description":"Name of the contract","readOnly":true},"url":{"type":"string","description":"URL to download the contract","readOnly":true}}},"order.CurrencyCodeEnum":{"type":"string","description":"Currency code","enum":["AUD","CAD","CZK","EUR","GBP","INR","LTL","MAD","N/A","PLN","SGD","TND","USD","XOF","points"]},"order.Order":{"type":"object","description":"An order","properties":{"contracts":{"type":"array","description":"List of contracts related to the order","items":{"$ref":"#/components/schemas/order.Contract"},"readOnly":true},"details":{"type":"array","description":"Details of the order","items":{"$ref":"#/components/schemas/order.OrderDetail"},"readOnly":true},"orderId":{"type":"integer","description":"Identifier of the order","nullable":true,"readOnly":true},"prices":{"allOf":[{"$ref":"#/components/schemas/order.OrderPrices"}],"description":"Prices of the order including with and without taxes","readOnly":true},"url":{"type":"string","description":"URL to download the order","nullable":true,"readOnly":true}}},"order.OrderDetail":{"type":"object","description":"Detail of an order","properties":{"cartItemID":{"type":"integer","description":"Cart Item ID the details is related to","nullable":true,"readOnly":true},"description":{"type":"string","description":"Description of the detail","readOnly":true},"detailType":{"allOf":[{"$ref":"#/components/schemas/order.OrderDetailTypeEnum"}],"description":"Type of detail","nullable":true,"readOnly":true},"domain":{"type":"string","description":"Service name","readOnly":true},"originalTotalPrice":{"allOf":[{"$ref":"#/components/schemas/order.Price"}],"description":"Original price of the detail before reduction application","readOnly":true},"quantity":{"type":"integer","description":"Quantity of the service","readOnly":true},"reductionTotalPrice":{"allOf":[{"$ref":"#/components/schemas/order.Price"}],"description":"Total price of the reduction","readOnly":true},"reductions":{"type":"array","description":"List of reductions applied to the detail","items":{"$ref":"#/components/schemas/order.Reduction"},"readOnly":true},"totalPrice":{"allOf":[{"$ref":"#/components/schemas/order.Price"}],"description":"Price total of the services","readOnly":true},"unitPrice":{"allOf":[{"$ref":"#/components/schemas/order.Price"}],"description":"Unitary price of the service","readOnly":true}}},"order.OrderDetailTypeEnum":{"type":"string","description":"Product type of item in order","enum":["ACCESSORY","CAUTION","CHOOSED","CONSUMPTION","CREATION","DELIVERY","DURATION","GIFT","INSTALLATION","LICENSE","MUTE","OTHER","OUTPLAN","QUANTITY","REFUND","RENEW","SPECIAL","SWITCH","TRANSFER","VOUCHER"]},"order.OrderPrices":{"type":"object","description":"Prices of an order","properties":{"originalWithoutTax":{"allOf":[{"$ref":"#/components/schemas/order.Price"}],"description":"Price before reduction application","nullable":true,"readOnly":true},"reduction":{"allOf":[{"$ref":"#/components/schemas/order.Price"}],"description":"Price concerning the reduced amount","nullable":true,"readOnly":true},"tax":{"allOf":[{"$ref":"#/components/schemas/order.Price"}],"description":"Tax amount","readOnly":true},"withTax":{"allOf":[{"$ref":"#/components/schemas/order.Price"}],"description":"Price with tax","readOnly":true},"withoutTax":{"allOf":[{"$ref":"#/components/schemas/order.Price"}],"description":"Price without tax","readOnly":true}}},"order.Price":{"type":"object","description":"Price with its currency and textual representation","properties":{"currencyCode":{"allOf":[{"$ref":"#/components/schemas/order.CurrencyCodeEnum"}],"description":"Currency code","readOnly":true},"priceInUcents":{"type":"integer","description":"Price in microcents","nullable":true,"readOnly":true},"text":{"type":"string","description":"Textual representation","readOnly":true},"value":{"type":"number","description":"The effective price","readOnly":true}}},"order.Reduction":{"type":"object","description":"Order detail reduction","properties":{"context":{"allOf":[{"$ref":"#/components/schemas/order.ReductionContextEnum"}],"description":"In which context the reduction is applied","readOnly":true},"description":{"type":"string","description":"Promotion description","readOnly":true},"price":{"allOf":[{"$ref":"#/components/schemas/order.Price"}],"description":"Reduction price applied with this promotion","readOnly":true},"reductionDescription":{"type":"string","description":"Reduction description","readOnly":true},"type":{"allOf":[{"$ref":"#/components/schemas/order.ReductionTypeEnum"}],"description":"Reduction effect, price modification","readOnly":true},"value":{"allOf":[{"$ref":"#/components/schemas/order.Price"}],"description":"The reduction value","readOnly":true}}},"order.ReductionContextEnum":{"type":"string","description":"Context of the reduction","enum":["promotion","voucher"]},"order.ReductionTypeEnum":{"type":"string","description":"Type of reduction","enum":["fixed_amount","forced_amount","percentage"]},"phoneNumber":{"type":"string","description":"Phone number","format":"phone-number"},"service.RenewType":{"type":"object","description":"Map a possible renew for a specific service","properties":{"automatic":{"type":"boolean","description":"The service is automatically renewed"},"deleteAtExpiration":{"type":"boolean","description":"The service will be deleted at expiration"},"forced":{"type":"boolean","description":"The service forced to be renewed"},"manualPayment":{"type":"boolean","description":"The service needs to be manually renewed and paid","nullable":true},"period":{"type":"integer","description":"period of renew in month","nullable":true}}},"service.RenewalTypeEnum":{"type":"string","description":"Detailed renewal type of a service","enum":["automaticForcedProduct","automaticV2012","automaticV2014","automaticV2016","manual","oneShot","option"]},"service.StateEnum":{"type":"string","description":"service.StateEnum","enum":["autorenewInProgress","expired","inCreation","ok","pendingDebt","unPaid"]},"services.Service":{"type":"object","description":"Details about a Service","properties":{"canDeleteAtExpiration":{"type":"boolean","description":"Indicates that the service can be set up to be deleted at expiration","readOnly":true},"contactAdmin":{"type":"string","readOnly":true},"contactBilling":{"type":"string","readOnly":true},"contactTech":{"type":"string","readOnly":true},"creation":{"type":"string","format":"date","readOnly":true},"domain":{"type":"string","readOnly":true},"engagedUpTo":{"type":"string","nullable":true,"format":"date","readOnly":true},"expiration":{"type":"string","format":"date","readOnly":true},"possibleRenewPeriod":{"type":"array","description":"All the possible renew period of your service in month","nullable":true,"items":{"type":"integer"},"readOnly":true},"renew":{"allOf":[{"$ref":"#/components/schemas/service.RenewType"}],"description":"Way of handling the renew","nullable":true},"renewalType":{"allOf":[{"$ref":"#/components/schemas/service.RenewalTypeEnum"}],"readOnly":true},"serviceId":{"type":"integer","readOnly":true},"status":{"allOf":[{"$ref":"#/components/schemas/service.StateEnum"}],"readOnly":true}}},"spare.xdsl.XdslSpareWithIAM":{"type":"object","description":"Spare properties","properties":{"brand":{"type":"string","description":"Modem brand model","readOnly":true},"iam":{"allOf":[{"$ref":"#/components/schemas/iam.ResourceMetadata"}],"description":"IAM resource metadata","nullable":true,"readOnly":true},"macAddress":{"type":"string","description":"Mac address","readOnly":true}}},"telephony.Contact":{"type":"object","description":"Contact information structure","properties":{"address":{"type":"string","description":"Contact address","nullable":true},"city":{"type":"string","description":"Contact city","nullable":true},"country":{"allOf":[{"$ref":"#/components/schemas/coreTypes.CountryEnum"}],"description":"Contact country","nullable":true},"email":{"type":"string","nullable":true},"firstname":{"type":"string","description":"Contact firstname","nullable":true},"name":{"type":"string","description":"Contact name","nullable":true},"organisation":{"type":"string","description":"Contact organisation","nullable":true},"phone":{"type":"string","description":"Contact phone","nullable":true},"zip":{"type":"string","description":"Contact zip","nullable":true}}},"telephony.Rma":{"type":"object","description":"Current Return Merchandise Authorisation","properties":{"cancellable":{"type":"boolean","description":"Is the RMA cancellable?","readOnly":true},"creationDatetime":{"type":"string","description":"Creation datetime of the return merchandise authorisation ticket","format":"date-time","readOnly":true},"equipmentReference":{"type":"string","description":"Merchandise reference","readOnly":true},"id":{"type":"string","description":"Return merchandise authorisation identifier","readOnly":true},"newMerchandise":{"type":"string","description":"New merchandise brand in case of exchange","nullable":true,"readOnly":true},"offerTypeNew":{"allOf":[{"$ref":"#/components/schemas/telephony.RmaOfferTypeEnum"}],"description":"Offer type of the new merchandise in case of exchange","nullable":true,"readOnly":true},"offerTypeOld":{"allOf":[{"$ref":"#/components/schemas/telephony.RmaOfferTypeEnum"}],"description":"Offer type of the return merchandise","readOnly":true},"process":{"allOf":[{"$ref":"#/components/schemas/telephony.RmaReplaceTypeEnum"}],"description":"Return merchandise authorisation type"},"receptionDatetime":{"type":"string","description":"Reception datetime of the return merchandise authorisation ticket","nullable":true,"format":"date-time","readOnly":true},"shippingContact":{"allOf":[{"$ref":"#/components/schemas/telephony.Contact"}],"description":"Contact information structure"},"status":{"allOf":[{"$ref":"#/components/schemas/telephony.RmaStatusEnum"}],"description":"Return merchandise authorisation step","readOnly":true},"steps":{"type":"array","description":"Indicates the current status of the RMA with a list of steps","items":{"$ref":"#/components/schemas/telephony.RmaStep"},"readOnly":true},"terminationDatetime":{"type":"string","description":"Termination datetime of the return merchandise authorisation ticket","nullable":true,"format":"date-time","readOnly":true},"type":{"allOf":[{"$ref":"#/components/schemas/telephony.RmaTypeEnum"}],"description":"Typology process of merchandise return","readOnly":true}}},"telephony.RmaChangeTypeEnum":{"type":"string","description":"Types of return merchandise authorisation you can change to","enum":["resiliate","toSip"]},"telephony.RmaOfferTypeEnum":{"type":"string","description":"Return merchandise authorisation offer type","enum":["deposit","loan","purchase"]},"telephony.RmaReplaceTypeEnum":{"type":"string","description":"Return merchandise authorisation type","enum":["changePhone","phoneRestitution","undefined"]},"telephony.RmaStatusEnum":{"type":"string","description":"Return merchandise authorisation step","enum":["closed","open","received"]},"telephony.RmaStep":{"type":"object","description":"Informations related to the current RMA step status","properties":{"description":{"type":"string","description":"A brief description of the step","readOnly":true},"doneDate":{"type":"string","description":"The date when this step was done","nullable":true,"format":"date-time","readOnly":true},"infos":{"type":"string","description":"Additional information about the step","nullable":true,"readOnly":true},"name":{"allOf":[{"$ref":"#/components/schemas/telephony.RmaStepNameEnum"}],"description":"RMA step names","readOnly":true},"status":{"allOf":[{"$ref":"#/components/schemas/telephony.RmaStepStatusEnum"}],"description":"Status of the RMA step","readOnly":true}}},"telephony.RmaStepNameEnum":{"type":"string","description":"RMA step names","enum":["dispatchJustification","equipmentSending","equipmentTesting","opening","parcelReception","parcelValidation","validation"]},"telephony.RmaStepStatusEnum":{"type":"string","description":"Status of the RMA step","enum":["done","todo"]},"telephony.RmaTypeEnum":{"type":"string","description":"Return merchandise authorisation type","enum":["after sale equipment service exchange","after sale phone service exchange","equipment restitution","fast exchange","old merchandise reception before exchange","phone restitution","resends due to shipping lost by the carrier","resends due to shipping not withdraw","specific return merchandise authorisation","termination","unknown"]},"time":{"type":"string","description":"Time (e.g., 15:04:05)","format":"time","example":"15:04:05"},"xdsl.ModemExchangeInfo":{"type":"object","description":"Information about modem exchange","properties":{"canExchange":{"type":"boolean","description":"To know if you can exchange your modem","readOnly":true},"newModel":{"type":"string","description":"Model of the new modem","readOnly":true},"price":{"allOf":[{"$ref":"#/components/schemas/order.Price"}],"description":"Price with it's currency and textual representation","readOnly":true},"priceWithTax":{"allOf":[{"$ref":"#/components/schemas/order.Price"}],"description":"Price with it's currency and textual representation","readOnly":true}}},"xdsl.modem.comfortExchange.post":{"type":"object","description":"xdsl.modem.comfortExchange.post","properties":{"contactShipping":{"type":"string","description":"Customer identifier for shipping address. By default Internet access address will be used. Allowed values are nichandle or «/me/contact/xyz»"}}},"xdsl.rma.changeType.post":{"type":"object","description":"xdsl.rma.changeType.post","properties":{"type":{"allOf":[{"$ref":"#/components/schemas/telephony.RmaChangeTypeEnum"}],"description":"Types of return merchandise authorisation you can change to"}},"required":["type"]},"xdsl.spare.replace.post":{"type":"object","description":"xdsl.spare.replace.post","properties":{"domain":{"type":"string","description":"The modem to replace by the spare"}},"required":["domain"]}},"securitySchemes":{"oAuth2AuthCode":{"type":"oauth2","description":"Oauth2","x-client-id":"1bb9c7df371741c0","x-client-secret":"a5b4de870aca620d10fbf63cd18d205b","flows":{"authorizationCode":{"authorizationUrl":"https://auth.eu.ovhcloud.com/oauth2/authorize","tokenUrl":"https://auth.eu.ovhcloud.com/oauth2/token","scopes":{"account/all":"Manage your account","all":"Manage your whole account and all your services","services/all":"Manage your services lifecycle and billing"}}}}}},"paths":{"/xdsl/spare":{"get":{"summary":"List the xDSL spares","description":"Returns the names of the spare modems of the account.","security":[{"oAuth2AuthCode":[]}],"parameters":[{"in":"query","name":"iamTags","description":"Filter resources on IAM tags","schema":{"type":"object","additionalProperties":{"type":"array","items":{"$ref":"#/components/schemas/iam.resource.TagFilter"}}}}],"responses":{"200":{"description":"successful operation","content":{"application/json":{"schema":{"type":"array","items":{"type":"string"}}}}}},"x-developer-hub-navigation":[["Web Cloud","Internet","Access","Spare & RMA@@@80"]],"x-badges":[{"color":"green","label":"Stable production version"}],"x-code-samples":[{"lang":"python","label":"Python","source":"'''\nFirst, install the latest release of Python wrapper: $ pip install ovh\n'''\nimport json\nimport ovh\n\n# Instantiate an OVH Client.\n# You can generate new credentials with full access to your account on\n# the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)\nclient = ovh.Client(\n\tendpoint='ovh-eu',               # Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)\n\tapplication_key='xxxxxxxxxx',    # Application Key\n\tapplication_secret='xxxxxxxxxx', # Application Secret\n\tconsumer_key='xxxxxxxxxx',       # Consumer Key\n)\n\nresult = client.get(\"/xdsl/spare\")\n\n# Pretty print\nprint(json.dumps(result, indent=4))"},{"lang":"php","label":"PHP","source":"<?php\n/**\n * First, download the latest release of PHP wrapper on github\n * And include this script into the folder with extracted files\n */\nrequire __DIR__ . '/vendor/autoload.php';\nuse \\Ovh\\Api;\n\n/**\n * Instantiate an OVH Client.\n * You can generate new credentials with full access to your account on\n * the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)\n */\n$ovh = new Api('xxxxxxxxxx',  // Application Key\n               'xxxxxxxxxx',  // Application Secret\n               'ovh-eu',      // Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)\n               'xxxxxxxxxx'); // Consumer Key\n\n$result = $ovh->get(\"/xdsl/spare\");\n\nprint_r($result);\n?>"}],"x-iam-actions":[{"name":"xdslSpare:apiovh:get","required":true}],"x-expanded-response":"SpareXdslXdslSpareWithIAM"}},"/xdsl/spare/brands":{"get":{"summary":"List the brands of xDSL spares","description":"Returns the modem brands available as spares.","security":[{"oAuth2AuthCode":[]}],"responses":{"200":{"description":"successful operation","content":{"application/json":{"schema":{"type":"array","items":{"type":"string"}}}}}},"x-developer-hub-navigation":[["Web Cloud","Internet","Access","Spare & RMA@@@100"]],"x-badges":[{"color":"green","label":"Stable production version"}],"x-code-samples":[{"lang":"python","label":"Python","source":"'''\nFirst, install the latest release of Python wrapper: $ pip install ovh\n'''\nimport json\nimport ovh\n\n# Instantiate an OVH Client.\n# You can generate new credentials with full access to your account on\n# the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)\nclient = ovh.Client(\n\tendpoint='ovh-eu',               # Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)\n\tapplication_key='xxxxxxxxxx',    # Application Key\n\tapplication_secret='xxxxxxxxxx', # Application Secret\n\tconsumer_key='xxxxxxxxxx',       # Consumer Key\n)\n\nresult = client.get(\"/xdsl/spare/brands\")\n\n# Pretty print\nprint(json.dumps(result, indent=4))"},{"lang":"php","label":"PHP","source":"<?php\n/**\n * First, download the latest release of PHP wrapper on github\n * And include this script into the folder with extracted files\n */\nrequire __DIR__ . '/vendor/autoload.php';\nuse \\Ovh\\Api;\n\n/**\n * Instantiate an OVH Client.\n * You can generate new credentials with full access to your account on\n * the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)\n */\n$ovh = new Api('xxxxxxxxxx',  // Application Key\n               'xxxxxxxxxx',  // Application Secret\n               'ovh-eu',      // Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)\n               'xxxxxxxxxx'); // Consumer Key\n\n$result = $ovh->get(\"/xdsl/spare/brands\");\n\nprint_r($result);\n?>"}]}},"/xdsl/spare/{spare}":{"delete":{"summary":"Delete an xDSL spare","description":"Removes the spare modem from the account, as if it no longer belonged to OVHcloud.","security":[{"oAuth2AuthCode":[]}],"parameters":[{"in":"path","name":"spare","description":"Spare","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"successful operation"}},"x-developer-hub-navigation":[["Web Cloud","Internet","Access","Spare & RMA@@@160"]],"x-badges":[{"color":"green","label":"Stable production version"}],"x-code-samples":[{"lang":"python","label":"Python","source":"'''\nFirst, install the latest release of Python wrapper: $ pip install ovh\n'''\nimport json\nimport ovh\n\n# Instantiate an OVH Client.\n# You can generate new credentials with full access to your account on\n# the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)\nclient = ovh.Client(\n\tendpoint='ovh-eu',               # Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)\n\tapplication_key='xxxxxxxxxx',    # Application Key\n\tapplication_secret='xxxxxxxxxx', # Application Secret\n\tconsumer_key='xxxxxxxxxx',       # Consumer Key\n)\n\nresult = client.delete(\"/xdsl/spare/{spare}\")\n\n# Pretty print\nprint(json.dumps(result, indent=4))"},{"lang":"php","label":"PHP","source":"<?php\n/**\n * First, download the latest release of PHP wrapper on github\n * And include this script into the folder with extracted files\n */\nrequire __DIR__ . '/vendor/autoload.php';\nuse \\Ovh\\Api;\n\n/**\n * Instantiate an OVH Client.\n * You can generate new credentials with full access to your account on\n * the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)\n */\n$ovh = new Api('xxxxxxxxxx',  // Application Key\n               'xxxxxxxxxx',  // Application Secret\n               'ovh-eu',      // Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)\n               'xxxxxxxxxx'); // Consumer Key\n\n$result = $ovh->delete(\"/xdsl/spare/{spare}\");\n\nprint_r($result);\n?>"}],"x-iam-actions":[{"name":"xdslSpare:apiovh:delete","required":true}]},"get":{"summary":"Get an xDSL spare","description":"Returns the brand and MAC address of a spare modem.","security":[{"oAuth2AuthCode":[]}],"parameters":[{"in":"path","name":"spare","description":"Spare","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"successful operation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/spare.xdsl.XdslSpareWithIAM"}}}}},"x-developer-hub-navigation":[["Web Cloud","Internet","Access","Spare & RMA@@@90"]],"x-badges":[{"color":"green","label":"Stable production version"}],"x-code-samples":[{"lang":"python","label":"Python","source":"'''\nFirst, install the latest release of Python wrapper: $ pip install ovh\n'''\nimport json\nimport ovh\n\n# Instantiate an OVH Client.\n# You can generate new credentials with full access to your account on\n# the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)\nclient = ovh.Client(\n\tendpoint='ovh-eu',               # Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)\n\tapplication_key='xxxxxxxxxx',    # Application Key\n\tapplication_secret='xxxxxxxxxx', # Application Secret\n\tconsumer_key='xxxxxxxxxx',       # Consumer Key\n)\n\nresult = client.get(\"/xdsl/spare/{spare}\")\n\n# Pretty print\nprint(json.dumps(result, indent=4))"},{"lang":"php","label":"PHP","source":"<?php\n/**\n * First, download the latest release of PHP wrapper on github\n * And include this script into the folder with extracted files\n */\nrequire __DIR__ . '/vendor/autoload.php';\nuse \\Ovh\\Api;\n\n/**\n * Instantiate an OVH Client.\n * You can generate new credentials with full access to your account on\n * the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)\n */\n$ovh = new Api('xxxxxxxxxx',  // Application Key\n               'xxxxxxxxxx',  // Application Secret\n               'ovh-eu',      // Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)\n               'xxxxxxxxxx'); // Consumer Key\n\n$result = $ovh->get(\"/xdsl/spare/{spare}\");\n\nprint_r($result);\n?>"}],"x-iam-actions":[{"name":"xdslSpare:apiovh:get","required":true}]}},"/xdsl/spare/{spare}/compatibleReplacement":{"get":{"summary":"List the replacement brands of a spare","description":"Returns the modem brands the spare is compatible with as a replacement.","security":[{"oAuth2AuthCode":[]}],"parameters":[{"in":"path","name":"spare","description":"Spare","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"successful operation","content":{"application/json":{"schema":{"type":"array","items":{"type":"string"}}}}}},"x-developer-hub-navigation":[["Web Cloud","Internet","Access","Spare & RMA@@@110"]],"x-badges":[{"color":"green","label":"Stable production version"}],"x-code-samples":[{"lang":"python","label":"Python","source":"'''\nFirst, install the latest release of Python wrapper: $ pip install ovh\n'''\nimport json\nimport ovh\n\n# Instantiate an OVH Client.\n# You can generate new credentials with full access to your account on\n# the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)\nclient = ovh.Client(\n\tendpoint='ovh-eu',               # Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)\n\tapplication_key='xxxxxxxxxx',    # Application Key\n\tapplication_secret='xxxxxxxxxx', # Application Secret\n\tconsumer_key='xxxxxxxxxx',       # Consumer Key\n)\n\nresult = client.get(\"/xdsl/spare/{spare}/compatibleReplacement\")\n\n# Pretty print\nprint(json.dumps(result, indent=4))"},{"lang":"php","label":"PHP","source":"<?php\n/**\n * First, download the latest release of PHP wrapper on github\n * And include this script into the folder with extracted files\n */\nrequire __DIR__ . '/vendor/autoload.php';\nuse \\Ovh\\Api;\n\n/**\n * Instantiate an OVH Client.\n * You can generate new credentials with full access to your account on\n * the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)\n */\n$ovh = new Api('xxxxxxxxxx',  // Application Key\n               'xxxxxxxxxx',  // Application Secret\n               'ovh-eu',      // Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)\n               'xxxxxxxxxx'); // Consumer Key\n\n$result = $ovh->get(\"/xdsl/spare/{spare}/compatibleReplacement\");\n\nprint_r($result);\n?>"}],"x-iam-actions":[{"name":"xdslSpare:apiovh:compatibleReplacement/get","required":true}]}},"/xdsl/spare/{spare}/replace":{"post":{"operationId":"replaceModemBySpare","summary":"Replace a modem with a spare","description":"Replaces the modem of an access with the spare modem.","security":[{"oAuth2AuthCode":[]}],"parameters":[{"in":"path","name":"spare","description":"Spare","required":true,"schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/xdsl.spare.replace.post"}}}},"responses":{"200":{"description":"successful operation"}},"x-developer-hub-navigation":[["Web Cloud","Internet","Access","Spare & RMA@@@140"]],"x-badges":[{"color":"green","label":"Stable production version"}],"x-code-samples":[{"lang":"python","label":"Python","source":"'''\nFirst, install the latest release of Python wrapper: $ pip install ovh\n'''\nimport json\nimport ovh\n\n# Instantiate an OVH Client.\n# You can generate new credentials with full access to your account on\n# the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)\nclient = ovh.Client(\n\tendpoint='ovh-eu',               # Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)\n\tapplication_key='xxxxxxxxxx',    # Application Key\n\tapplication_secret='xxxxxxxxxx', # Application Secret\n\tconsumer_key='xxxxxxxxxx',       # Consumer Key\n)\n\n# Request body type: xdsl.spare.replace.post\nresult = client.post(\"/xdsl/spare/{spare}/replace\",\n\tdomain = None, # The modem to replace by the spare (type: string)\n)\n\n# Pretty print\nprint(json.dumps(result, indent=4))"},{"lang":"php","label":"PHP","source":"<?php\n/**\n * First, download the latest release of PHP wrapper on github\n * And include this script into the folder with extracted files\n */\nrequire __DIR__ . '/vendor/autoload.php';\nuse \\Ovh\\Api;\n\n/**\n * Instantiate an OVH Client.\n * You can generate new credentials with full access to your account on\n * the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)\n */\n$ovh = new Api('xxxxxxxxxx',  // Application Key\n               'xxxxxxxxxx',  // Application Secret\n               'ovh-eu',      // Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)\n               'xxxxxxxxxx'); // Consumer Key\n\n// Request body type: xdsl.spare.replace.post\n$result = $ovh->post(\"/xdsl/spare/{spare}/replace\", array(\n\tdomain => null, // The modem to replace by the spare (type: string)\n));\n\nprint_r($result);\n?>"}],"x-iam-actions":[{"name":"xdslSpare:apiovh:replace","required":true}]}},"/xdsl/spare/{spare}/returnMerchandise":{"post":{"summary":"Return a broken spare","description":"Returns the broken spare modem with an instant refund.","security":[{"oAuth2AuthCode":[]}],"parameters":[{"in":"path","name":"spare","description":"Spare","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"successful operation"}},"x-developer-hub-navigation":[["Web Cloud","Internet","Access","Spare & RMA@@@150"]],"x-badges":[{"color":"green","label":"Stable production version"}],"x-code-samples":[{"lang":"python","label":"Python","source":"'''\nFirst, install the latest release of Python wrapper: $ pip install ovh\n'''\nimport json\nimport ovh\n\n# Instantiate an OVH Client.\n# You can generate new credentials with full access to your account on\n# the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)\nclient = ovh.Client(\n\tendpoint='ovh-eu',               # Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)\n\tapplication_key='xxxxxxxxxx',    # Application Key\n\tapplication_secret='xxxxxxxxxx', # Application Secret\n\tconsumer_key='xxxxxxxxxx',       # Consumer Key\n)\n\nresult = client.post(\"/xdsl/spare/{spare}/returnMerchandise\")\n\n# Pretty print\nprint(json.dumps(result, indent=4))"},{"lang":"php","label":"PHP","source":"<?php\n/**\n * First, download the latest release of PHP wrapper on github\n * And include this script into the folder with extracted files\n */\nrequire __DIR__ . '/vendor/autoload.php';\nuse \\Ovh\\Api;\n\n/**\n * Instantiate an OVH Client.\n * You can generate new credentials with full access to your account on\n * the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)\n */\n$ovh = new Api('xxxxxxxxxx',  // Application Key\n               'xxxxxxxxxx',  // Application Secret\n               'ovh-eu',      // Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)\n               'xxxxxxxxxx'); // Consumer Key\n\n$result = $ovh->post(\"/xdsl/spare/{spare}/returnMerchandise\");\n\nprint_r($result);\n?>"}],"x-iam-actions":[{"name":"xdslSpare:apiovh:returnMerchandise","required":true}]}},"/xdsl/spare/{spare}/serviceInfos":{"get":{"summary":"Get service information","description":"Returns the service status, creation and expiration dates, renewal settings and contacts of the spare.","security":[{"oAuth2AuthCode":[]}],"parameters":[{"in":"path","name":"spare","description":"Spare","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"successful operation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/services.Service"}}}}},"x-developer-hub-navigation":[["Web Cloud","Internet","Access","Spare & RMA@@@120"]],"x-badges":[{"color":"green","label":"Stable production version"}],"x-code-samples":[{"lang":"python","label":"Python","source":"'''\nFirst, install the latest release of Python wrapper: $ pip install ovh\n'''\nimport json\nimport ovh\n\n# Instantiate an OVH Client.\n# You can generate new credentials with full access to your account on\n# the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)\nclient = ovh.Client(\n\tendpoint='ovh-eu',               # Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)\n\tapplication_key='xxxxxxxxxx',    # Application Key\n\tapplication_secret='xxxxxxxxxx', # Application Secret\n\tconsumer_key='xxxxxxxxxx',       # Consumer Key\n)\n\nresult = client.get(\"/xdsl/spare/{spare}/serviceInfos\")\n\n# Pretty print\nprint(json.dumps(result, indent=4))"},{"lang":"php","label":"PHP","source":"<?php\n/**\n * First, download the latest release of PHP wrapper on github\n * And include this script into the folder with extracted files\n */\nrequire __DIR__ . '/vendor/autoload.php';\nuse \\Ovh\\Api;\n\n/**\n * Instantiate an OVH Client.\n * You can generate new credentials with full access to your account on\n * the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)\n */\n$ovh = new Api('xxxxxxxxxx',  // Application Key\n               'xxxxxxxxxx',  // Application Secret\n               'ovh-eu',      // Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)\n               'xxxxxxxxxx'); // Consumer Key\n\n$result = $ovh->get(\"/xdsl/spare/{spare}/serviceInfos\");\n\nprint_r($result);\n?>"}],"x-iam-actions":[{"name":"xdslSpare:apiovh:serviceInfos/get","required":true}]},"put":{"summary":"Update service information","description":"Changes the renewal settings of the spare: automatic renewal, renewal period and deletion at expiration.","security":[{"oAuth2AuthCode":[]}],"parameters":[{"in":"path","name":"spare","description":"Spare","required":true,"schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/services.Service"}}}},"responses":{"200":{"description":"successful operation"}},"x-developer-hub-navigation":[["Web Cloud","Internet","Access","Spare & RMA@@@130"]],"x-badges":[{"color":"green","label":"Stable production version"}],"x-code-samples":[{"lang":"python","label":"Python","source":"'''\nFirst, install the latest release of Python wrapper: $ pip install ovh\n'''\nimport json\nimport ovh\n\n# Instantiate an OVH Client.\n# You can generate new credentials with full access to your account on\n# the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)\nclient = ovh.Client(\n\tendpoint='ovh-eu',               # Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)\n\tapplication_key='xxxxxxxxxx',    # Application Key\n\tapplication_secret='xxxxxxxxxx', # Application Secret\n\tconsumer_key='xxxxxxxxxx',       # Consumer Key\n)\n\n# Request body type: services.Service\nresult = client.put(\"/xdsl/spare/{spare}/serviceInfos\",\n\trenew = None, # Way of handling the renew (type: service.RenewType, nullable)\n)\n\n# Pretty print\nprint(json.dumps(result, indent=4))"},{"lang":"php","label":"PHP","source":"<?php\n/**\n * First, download the latest release of PHP wrapper on github\n * And include this script into the folder with extracted files\n */\nrequire __DIR__ . '/vendor/autoload.php';\nuse \\Ovh\\Api;\n\n/**\n * Instantiate an OVH Client.\n * You can generate new credentials with full access to your account on\n * the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)\n */\n$ovh = new Api('xxxxxxxxxx',  // Application Key\n               'xxxxxxxxxx',  // Application Secret\n               'ovh-eu',      // Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)\n               'xxxxxxxxxx'); // Consumer Key\n\n// Request body type: services.Service\n$result = $ovh->put(\"/xdsl/spare/{spare}/serviceInfos\", array(\n\trenew => null, // Way of handling the renew (type: service.RenewType, nullable)\n));\n\nprint_r($result);\n?>"}],"x-iam-actions":[{"name":"xdslSpare:apiovh:serviceInfos/edit","required":true}]}},"/xdsl/{serviceName}/modem/comfortExchange":{"get":{"operationId":"getAccessModemReplacement","summary":"Get the modem exchange offer","description":"Returns whether the modem of the access can be exchanged for the latest model, the new model and the price with and without tax.","security":[{"oAuth2AuthCode":[]}],"parameters":[{"in":"path","name":"serviceName","description":"Service name","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"successful operation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/xdsl.ModemExchangeInfo"}}}}},"x-developer-hub-navigation":[["Web Cloud","Internet","Access","Spare & RMA@@@10"]],"x-badges":[{"color":"green","label":"Stable production version"}],"x-code-samples":[{"lang":"python","label":"Python","source":"'''\nFirst, install the latest release of Python wrapper: $ pip install ovh\n'''\nimport json\nimport ovh\n\n# Instantiate an OVH Client.\n# You can generate new credentials with full access to your account on\n# the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)\nclient = ovh.Client(\n\tendpoint='ovh-eu',               # Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)\n\tapplication_key='xxxxxxxxxx',    # Application Key\n\tapplication_secret='xxxxxxxxxx', # Application Secret\n\tconsumer_key='xxxxxxxxxx',       # Consumer Key\n)\n\nresult = client.get(\"/xdsl/{serviceName}/modem/comfortExchange\")\n\n# Pretty print\nprint(json.dumps(result, indent=4))"},{"lang":"php","label":"PHP","source":"<?php\n/**\n * First, download the latest release of PHP wrapper on github\n * And include this script into the folder with extracted files\n */\nrequire __DIR__ . '/vendor/autoload.php';\nuse \\Ovh\\Api;\n\n/**\n * Instantiate an OVH Client.\n * You can generate new credentials with full access to your account on\n * the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)\n */\n$ovh = new Api('xxxxxxxxxx',  // Application Key\n               'xxxxxxxxxx',  // Application Secret\n               'ovh-eu',      // Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)\n               'xxxxxxxxxx'); // Consumer Key\n\n$result = $ovh->get(\"/xdsl/{serviceName}/modem/comfortExchange\");\n\nprint_r($result);\n?>"}],"x-iam-actions":[{"name":"xdsl:apiovh:modem/comfortExchange/get","required":true}]},"post":{"operationId":"replaceAccessModem","summary":"Order a modem exchange","description":"Orders the replacement of the modem of the access by the latest model. Fees apply. Returns the order.","security":[{"oAuth2AuthCode":[]}],"parameters":[{"in":"path","name":"serviceName","description":"Service name","required":true,"schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/xdsl.modem.comfortExchange.post"}}}},"responses":{"200":{"description":"successful operation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/order.Order"}}}}},"x-developer-hub-navigation":[["Web Cloud","Internet","Access","Spare & RMA@@@20"]],"x-badges":[{"color":"green","label":"Stable production version"}],"x-code-samples":[{"lang":"python","label":"Python","source":"'''\nFirst, install the latest release of Python wrapper: $ pip install ovh\n'''\nimport json\nimport ovh\n\n# Instantiate an OVH Client.\n# You can generate new credentials with full access to your account on\n# the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)\nclient = ovh.Client(\n\tendpoint='ovh-eu',               # Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)\n\tapplication_key='xxxxxxxxxx',    # Application Key\n\tapplication_secret='xxxxxxxxxx', # Application Secret\n\tconsumer_key='xxxxxxxxxx',       # Consumer Key\n)\n\n# Request body type: xdsl.modem.comfortExchange.post\nresult = client.post(\"/xdsl/{serviceName}/modem/comfortExchange\",\n\tcontactShipping = None, # Customer identifier for shipping address. By default Internet access address will be used. Allowed values are nichandle or «/me/contact/xyz» (type: string)\n)\n\n# Pretty print\nprint(json.dumps(result, indent=4))"},{"lang":"php","label":"PHP","source":"<?php\n/**\n * First, download the latest release of PHP wrapper on github\n * And include this script into the folder with extracted files\n */\nrequire __DIR__ . '/vendor/autoload.php';\nuse \\Ovh\\Api;\n\n/**\n * Instantiate an OVH Client.\n * You can generate new credentials with full access to your account on\n * the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)\n */\n$ovh = new Api('xxxxxxxxxx',  // Application Key\n               'xxxxxxxxxx',  // Application Secret\n               'ovh-eu',      // Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)\n               'xxxxxxxxxx'); // Consumer Key\n\n// Request body type: xdsl.modem.comfortExchange.post\n$result = $ovh->post(\"/xdsl/{serviceName}/modem/comfortExchange\", array(\n\tcontactShipping => null, // Customer identifier for shipping address. By default Internet access address will be used. Allowed values are nichandle or «/me/contact/xyz» (type: string)\n));\n\nprint_r($result);\n?>"}],"x-iam-actions":[{"name":"xdsl:apiovh:modem/comfortExchange/create","required":true}]}},"/xdsl/{serviceName}/rma":{"get":{"summary":"List the RMAs of an xDSL access","description":"Returns the IDs of the return merchandise authorizations of the access.","security":[{"oAuth2AuthCode":[]}],"parameters":[{"in":"path","name":"serviceName","description":"Service name","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"successful operation","content":{"application/json":{"schema":{"type":"array","items":{"type":"string"}}}}}},"x-developer-hub-navigation":[["Web Cloud","Internet","Access","Spare & RMA@@@30"]],"x-badges":[{"color":"green","label":"Stable production version"}],"x-code-samples":[{"lang":"python","label":"Python","source":"'''\nFirst, install the latest release of Python wrapper: $ pip install ovh\n'''\nimport json\nimport ovh\n\n# Instantiate an OVH Client.\n# You can generate new credentials with full access to your account on\n# the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)\nclient = ovh.Client(\n\tendpoint='ovh-eu',               # Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)\n\tapplication_key='xxxxxxxxxx',    # Application Key\n\tapplication_secret='xxxxxxxxxx', # Application Secret\n\tconsumer_key='xxxxxxxxxx',       # Consumer Key\n)\n\nresult = client.get(\"/xdsl/{serviceName}/rma\")\n\n# Pretty print\nprint(json.dumps(result, indent=4))"},{"lang":"php","label":"PHP","source":"<?php\n/**\n * First, download the latest release of PHP wrapper on github\n * And include this script into the folder with extracted files\n */\nrequire __DIR__ . '/vendor/autoload.php';\nuse \\Ovh\\Api;\n\n/**\n * Instantiate an OVH Client.\n * You can generate new credentials with full access to your account on\n * the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)\n */\n$ovh = new Api('xxxxxxxxxx',  // Application Key\n               'xxxxxxxxxx',  // Application Secret\n               'ovh-eu',      // Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)\n               'xxxxxxxxxx'); // Consumer Key\n\n$result = $ovh->get(\"/xdsl/{serviceName}/rma\");\n\nprint_r($result);\n?>"}],"x-iam-actions":[{"name":"xdsl:apiovh:rma/get","required":true}],"x-expanded-response":"TelephonyRma"}},"/xdsl/{serviceName}/rma/{id}":{"delete":{"summary":"Delete an RMA of an xDSL access","description":"Cancels the return merchandise authorization, when it is still cancellable.","security":[{"oAuth2AuthCode":[]}],"parameters":[{"in":"path","name":"id","description":"Id","required":true,"schema":{"type":"string"}},{"in":"path","name":"serviceName","description":"Service name","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"successful operation"}},"x-developer-hub-navigation":[["Web Cloud","Internet","Access","Spare & RMA@@@60"]],"x-badges":[{"color":"green","label":"Stable production version"}],"x-code-samples":[{"lang":"python","label":"Python","source":"'''\nFirst, install the latest release of Python wrapper: $ pip install ovh\n'''\nimport json\nimport ovh\n\n# Instantiate an OVH Client.\n# You can generate new credentials with full access to your account on\n# the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)\nclient = ovh.Client(\n\tendpoint='ovh-eu',               # Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)\n\tapplication_key='xxxxxxxxxx',    # Application Key\n\tapplication_secret='xxxxxxxxxx', # Application Secret\n\tconsumer_key='xxxxxxxxxx',       # Consumer Key\n)\n\nresult = client.delete(\"/xdsl/{serviceName}/rma/{id}\")\n\n# Pretty print\nprint(json.dumps(result, indent=4))"},{"lang":"php","label":"PHP","source":"<?php\n/**\n * First, download the latest release of PHP wrapper on github\n * And include this script into the folder with extracted files\n */\nrequire __DIR__ . '/vendor/autoload.php';\nuse \\Ovh\\Api;\n\n/**\n * Instantiate an OVH Client.\n * You can generate new credentials with full access to your account on\n * the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)\n */\n$ovh = new Api('xxxxxxxxxx',  // Application Key\n               'xxxxxxxxxx',  // Application Secret\n               'ovh-eu',      // Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)\n               'xxxxxxxxxx'); // Consumer Key\n\n$result = $ovh->delete(\"/xdsl/{serviceName}/rma/{id}\");\n\nprint_r($result);\n?>"}],"x-iam-actions":[{"name":"xdsl:apiovh:rma/delete","required":true}]},"get":{"summary":"Get an RMA of an xDSL access","description":"Returns a return merchandise authorization with its type, process, status and steps, the returned and new equipment, the shipping contact and its dates.","security":[{"oAuth2AuthCode":[]}],"parameters":[{"in":"path","name":"id","description":"Id","required":true,"schema":{"type":"string"}},{"in":"path","name":"serviceName","description":"Service name","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"successful operation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/telephony.Rma"}}}}},"x-developer-hub-navigation":[["Web Cloud","Internet","Access","Spare & RMA@@@40"]],"x-badges":[{"color":"green","label":"Stable production version"}],"x-code-samples":[{"lang":"python","label":"Python","source":"'''\nFirst, install the latest release of Python wrapper: $ pip install ovh\n'''\nimport json\nimport ovh\n\n# Instantiate an OVH Client.\n# You can generate new credentials with full access to your account on\n# the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)\nclient = ovh.Client(\n\tendpoint='ovh-eu',               # Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)\n\tapplication_key='xxxxxxxxxx',    # Application Key\n\tapplication_secret='xxxxxxxxxx', # Application Secret\n\tconsumer_key='xxxxxxxxxx',       # Consumer Key\n)\n\nresult = client.get(\"/xdsl/{serviceName}/rma/{id}\")\n\n# Pretty print\nprint(json.dumps(result, indent=4))"},{"lang":"php","label":"PHP","source":"<?php\n/**\n * First, download the latest release of PHP wrapper on github\n * And include this script into the folder with extracted files\n */\nrequire __DIR__ . '/vendor/autoload.php';\nuse \\Ovh\\Api;\n\n/**\n * Instantiate an OVH Client.\n * You can generate new credentials with full access to your account on\n * the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)\n */\n$ovh = new Api('xxxxxxxxxx',  // Application Key\n               'xxxxxxxxxx',  // Application Secret\n               'ovh-eu',      // Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)\n               'xxxxxxxxxx'); // Consumer Key\n\n$result = $ovh->get(\"/xdsl/{serviceName}/rma/{id}\");\n\nprint_r($result);\n?>"}],"x-iam-actions":[{"name":"xdsl:apiovh:rma/get","required":true}]},"put":{"summary":"Update an RMA of an xDSL access","description":"Changes the process or the shipping contact of a return merchandise authorization.","security":[{"oAuth2AuthCode":[]}],"parameters":[{"in":"path","name":"id","description":"Id","required":true,"schema":{"type":"string"}},{"in":"path","name":"serviceName","description":"Service name","required":true,"schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/telephony.Rma"}}}},"responses":{"200":{"description":"successful operation"}},"x-developer-hub-navigation":[["Web Cloud","Internet","Access","Spare & RMA@@@50"]],"x-badges":[{"color":"green","label":"Stable production version"}],"x-code-samples":[{"lang":"python","label":"Python","source":"'''\nFirst, install the latest release of Python wrapper: $ pip install ovh\n'''\nimport json\nimport ovh\n\n# Instantiate an OVH Client.\n# You can generate new credentials with full access to your account on\n# the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)\nclient = ovh.Client(\n\tendpoint='ovh-eu',               # Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)\n\tapplication_key='xxxxxxxxxx',    # Application Key\n\tapplication_secret='xxxxxxxxxx', # Application Secret\n\tconsumer_key='xxxxxxxxxx',       # Consumer Key\n)\n\n# Request body type: telephony.Rma\nresult = client.put(\"/xdsl/{serviceName}/rma/{id}\",\n\tprocess = None, # Return merchandise authorisation type (type: telephony.RmaReplaceTypeEnum)\n\tshippingContact = None, # Contact information structure (type: telephony.Contact)\n)\n\n# Pretty print\nprint(json.dumps(result, indent=4))"},{"lang":"php","label":"PHP","source":"<?php\n/**\n * First, download the latest release of PHP wrapper on github\n * And include this script into the folder with extracted files\n */\nrequire __DIR__ . '/vendor/autoload.php';\nuse \\Ovh\\Api;\n\n/**\n * Instantiate an OVH Client.\n * You can generate new credentials with full access to your account on\n * the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)\n */\n$ovh = new Api('xxxxxxxxxx',  // Application Key\n               'xxxxxxxxxx',  // Application Secret\n               'ovh-eu',      // Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)\n               'xxxxxxxxxx'); // Consumer Key\n\n// Request body type: telephony.Rma\n$result = $ovh->put(\"/xdsl/{serviceName}/rma/{id}\", array(\n\tprocess => null, // Return merchandise authorisation type (type: telephony.RmaReplaceTypeEnum)\n\tshippingContact => null, // Contact information structure (type: telephony.Contact)\n));\n\nprint_r($result);\n?>"}],"x-iam-actions":[{"name":"xdsl:apiovh:rma/edit","required":true}]}},"/xdsl/{serviceName}/rma/{id}/changeType":{"post":{"operationId":"updateRMAType","summary":"Change the type of an RMA","description":"Changes a return merchandise authorization to a resiliation or to a SIP switch.","security":[{"oAuth2AuthCode":[]}],"parameters":[{"in":"path","name":"id","description":"Id","required":true,"schema":{"type":"string"}},{"in":"path","name":"serviceName","description":"Service name","required":true,"schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/xdsl.rma.changeType.post"}}}},"responses":{"200":{"description":"successful operation"}},"x-developer-hub-navigation":[["Web Cloud","Internet","Access","Spare & RMA@@@70"]],"x-badges":[{"color":"green","label":"Stable production version"}],"x-code-samples":[{"lang":"python","label":"Python","source":"'''\nFirst, install the latest release of Python wrapper: $ pip install ovh\n'''\nimport json\nimport ovh\n\n# Instantiate an OVH Client.\n# You can generate new credentials with full access to your account on\n# the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)\nclient = ovh.Client(\n\tendpoint='ovh-eu',               # Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)\n\tapplication_key='xxxxxxxxxx',    # Application Key\n\tapplication_secret='xxxxxxxxxx', # Application Secret\n\tconsumer_key='xxxxxxxxxx',       # Consumer Key\n)\n\n# Request body type: xdsl.rma.changeType.post\nresult = client.post(\"/xdsl/{serviceName}/rma/{id}/changeType\",\n\ttype = None, # Types of return merchandise authorisation you can change to (type: telephony.RmaChangeTypeEnum)\n)\n\n# Pretty print\nprint(json.dumps(result, indent=4))"},{"lang":"php","label":"PHP","source":"<?php\n/**\n * First, download the latest release of PHP wrapper on github\n * And include this script into the folder with extracted files\n */\nrequire __DIR__ . '/vendor/autoload.php';\nuse \\Ovh\\Api;\n\n/**\n * Instantiate an OVH Client.\n * You can generate new credentials with full access to your account on\n * the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)\n */\n$ovh = new Api('xxxxxxxxxx',  // Application Key\n               'xxxxxxxxxx',  // Application Secret\n               'ovh-eu',      // Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)\n               'xxxxxxxxxx'); // Consumer Key\n\n// Request body type: xdsl.rma.changeType.post\n$result = $ovh->post(\"/xdsl/{serviceName}/rma/{id}/changeType\", array(\n\ttype => null, // Types of return merchandise authorisation you can change to (type: telephony.RmaChangeTypeEnum)\n));\n\nprint_r($result);\n?>"}],"x-iam-actions":[{"name":"xdsl:apiovh:rma/changeType","required":true}]}}}}
