{"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 !"},"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"},"email.mxplan.Server":{"type":"object","description":"Server","properties":{"currentDiskUsage":{"type":"integer","description":"Current disk usage in MB","nullable":true,"readOnly":true},"diskSize":{"type":"integer","description":"Total disk size in MB","nullable":true,"readOnly":true},"ip":{"allOf":[{"$ref":"#/components/schemas/ipv4"}],"description":"ipV4","readOnly":true},"ipV6":{"allOf":[{"$ref":"#/components/schemas/ipv6"}],"description":"ipV6","nullable":true,"readOnly":true},"isAValid":{"type":"boolean","description":"If true your dns A record is valid","readOnly":true},"isAaaaValid":{"type":"boolean","description":"If true your dns AAAA record is valid","readOnly":true},"isPtrV6Valid":{"type":"boolean","description":"If true your dns ptrV6 record is valid","readOnly":true},"isPtrValid":{"type":"boolean","description":"If true your dns ptr record is valid","readOnly":true},"state":{"allOf":[{"$ref":"#/components/schemas/email.pro.ServerStateEnum"}],"description":"Server state","readOnly":true},"taskPendingId":{"type":"integer","description":"Task pending id","readOnly":true},"version":{"type":"integer","description":"Server version","nullable":true,"readOnly":true}}},"email.mxplan.Service":{"type":"object","description":"MXPlan service","properties":{"complexityEnabled":{"type":"boolean","description":"enable policy for strong and secure passwords"},"displayName":{"type":"string","description":"service displayName","nullable":true},"domain":{"type":"string","description":"Domain name of your service","readOnly":true},"hostname":{"type":"string","description":"Hostname of your service","nullable":true,"readOnly":true},"isZimbra":{"type":"boolean","description":"Service use Zimbra as backend","readOnly":true},"lastUpdateDate":{"type":"string","description":"Update date","nullable":true,"format":"date-time","readOnly":true},"lockoutDuration":{"type":"integer","description":"number of minutes account will remain locked if it occurs"},"lockoutObservationWindow":{"type":"integer","description":"number of minutes that must elapse after a failed logon to reset lockout trigger"},"lockoutThreshold":{"type":"integer","description":"number of attempts before account to be locked","nullable":true},"maxPasswordAge":{"type":"integer","description":"maximum number of days that account's password is valid before expiration","nullable":true},"maxReceiveSize":{"type":"integer","description":"Maximum message size that You can receive in MB"},"maxSendSize":{"type":"integer","description":"Maximum message size that You can send in MB"},"minPasswordAge":{"type":"integer","description":"minimum number of days before able to change account's password","nullable":true},"minPasswordLength":{"type":"integer","description":"minimum number of characters password must contain","nullable":true},"offer":{"allOf":[{"$ref":"#/components/schemas/email.mxplan.ServiceOfferEnum"}],"description":"Type of your offer","readOnly":true},"spamAndVirusConfiguration":{"allOf":[{"$ref":"#/components/schemas/email.pro.spamAndVirusConfiguration"}],"description":"Spam and Antivirus configuration"},"state":{"allOf":[{"$ref":"#/components/schemas/email.pro.ServiceStateEnum"}],"description":"State of your service","readOnly":true},"taskPendingId":{"type":"integer","description":"Task pending id","readOnly":true},"webUrl":{"type":"string","description":"URL for web interface","nullable":true,"readOnly":true}}},"email.mxplan.ServiceOfferEnum":{"type":"string","description":"Service Offer name","enum":["MXPLAN"]},"email.mxplan.ServiceWithIAM":{"type":"object","description":"MXPlan service","properties":{"complexityEnabled":{"type":"boolean","description":"enable policy for strong and secure passwords"},"displayName":{"type":"string","description":"service displayName","nullable":true},"domain":{"type":"string","description":"Domain name of your service","readOnly":true},"hostname":{"type":"string","description":"Hostname of your service","nullable":true,"readOnly":true},"iam":{"allOf":[{"$ref":"#/components/schemas/iam.ResourceMetadata"}],"description":"IAM resource metadata","nullable":true,"readOnly":true},"isZimbra":{"type":"boolean","description":"Service use Zimbra as backend","readOnly":true},"lastUpdateDate":{"type":"string","description":"Update date","nullable":true,"format":"date-time","readOnly":true},"lockoutDuration":{"type":"integer","description":"number of minutes account will remain locked if it occurs"},"lockoutObservationWindow":{"type":"integer","description":"number of minutes that must elapse after a failed logon to reset lockout trigger"},"lockoutThreshold":{"type":"integer","description":"number of attempts before account to be locked","nullable":true},"maxPasswordAge":{"type":"integer","description":"maximum number of days that account's password is valid before expiration","nullable":true},"maxReceiveSize":{"type":"integer","description":"Maximum message size that You can receive in MB"},"maxSendSize":{"type":"integer","description":"Maximum message size that You can send in MB"},"minPasswordAge":{"type":"integer","description":"minimum number of days before able to change account's password","nullable":true},"minPasswordLength":{"type":"integer","description":"minimum number of characters password must contain","nullable":true},"offer":{"allOf":[{"$ref":"#/components/schemas/email.mxplan.ServiceOfferEnum"}],"description":"Type of your offer","readOnly":true},"spamAndVirusConfiguration":{"allOf":[{"$ref":"#/components/schemas/email.pro.spamAndVirusConfiguration"}],"description":"Spam and Antivirus configuration"},"state":{"allOf":[{"$ref":"#/components/schemas/email.pro.ServiceStateEnum"}],"description":"State of your service","readOnly":true},"taskPendingId":{"type":"integer","description":"Task pending id","readOnly":true},"webUrl":{"type":"string","description":"URL for web interface","nullable":true,"readOnly":true}}},"email.pro.ServerStateEnum":{"type":"string","description":"Server State","enum":["configurationPending","notConfigured","ok"]},"email.pro.ServiceStateEnum":{"type":"string","description":"Service State","enum":["creating","deleting","inMaintenance","ok","reopening","suspended","suspending"]},"email.pro.spamAndVirusConfiguration":{"type":"object","description":"Spam and Antyvirus configuration","properties":{"checkDKIM":{"type":"boolean","description":"Check DKIM of message"},"checkSPF":{"type":"boolean","description":"Check SPF of message"},"deleteSpam":{"type":"boolean","description":"If message is a spam delete it"},"deleteVirus":{"type":"boolean","description":"If message is a virus delete it"},"putInJunk":{"type":"boolean","description":"If message is a spam or virus put in junk. Overridden by deleteSpam or deleteVirus"},"tagSpam":{"type":"boolean","description":"If message is a spam change its subject"},"tagVirus":{"type":"boolean","description":"If message is a virus change its subject"}}},"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"},"phoneNumber":{"type":"string","description":"Phone number","format":"phone-number"},"time":{"type":"string","description":"Time (e.g., 15:04:05)","format":"time","example":"15:04:05"}},"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":{"/email/mxplan":{"get":{"summary":"List MX Plan services","description":"List MX Plan services. Returns the names of the MX Plan services of the account. Filter them by IAM tags with `iamTags`.","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","Email and Collaborative Solutions","MX Plan","Zimbra platform","Services@@@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(\"/email/mxplan\")\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(\"/email/mxplan\");\n\nprint_r($result);\n?>"}],"x-iam-actions":[{"name":"emailMxplan:apiovh:get","required":true}],"x-expanded-response":"EmailMxplanServiceWithIAM"}},"/email/mxplan/{service}":{"get":{"summary":"Get the MX Plan service","description":"Get the MX Plan service. Returns the state, offer, hostname and web interface URL of the service, its message size limits, its password and lockout policy, and its spam and virus configuration.","security":[{"oAuth2AuthCode":[]}],"parameters":[{"in":"path","name":"service","description":"The internal name of your mxplan organization","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"successful operation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/email.mxplan.ServiceWithIAM"}}}}},"x-developer-hub-navigation":[["Web Cloud","Email and Collaborative Solutions","MX Plan","Zimbra platform","Services@@@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\nresult = client.get(\"/email/mxplan/{service}\")\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(\"/email/mxplan/{service}\");\n\nprint_r($result);\n?>"}],"x-iam-actions":[{"name":"emailMxplan:apiovh:get","required":true}]},"put":{"summary":"Update the MX Plan service","description":"Update the MX Plan service. Updates the display name, message size limits, password and lockout policy, and spam and virus configuration of the service.","security":[{"oAuth2AuthCode":[]}],"parameters":[{"in":"path","name":"service","description":"The internal name of your mxplan organization","required":true,"schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/email.mxplan.Service"}}}},"responses":{"200":{"description":"successful operation"}},"x-developer-hub-navigation":[["Web Cloud","Email and Collaborative Solutions","MX Plan","Zimbra platform","Services@@@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\n# Request body type: email.mxplan.Service\nresult = client.put(\"/email/mxplan/{service}\",\n\tcomplexityEnabled = None, # enable policy for strong and secure passwords (type: boolean)\n\tdisplayName = None, # service displayName (type: string, nullable)\n\tlockoutDuration = None, # number of minutes account will remain locked if it occurs (type: integer)\n\tlockoutObservationWindow = None, # number of minutes that must elapse after a failed logon to reset lockout trigger (type: integer)\n\tlockoutThreshold = None, # number of attempts before account to be locked (type: integer, nullable)\n\tmaxPasswordAge = None, # maximum number of days that account's password is valid before expiration (type: integer, nullable)\n\tmaxReceiveSize = None, # Maximum message size that You can receive in MB (type: integer)\n\tmaxSendSize = None, # Maximum message size that You can send in MB (type: integer)\n\tminPasswordAge = None, # minimum number of days before able to change account's password (type: integer, nullable)\n\tminPasswordLength = None, # minimum number of characters password must contain (type: integer, nullable)\n\tspamAndVirusConfiguration = None, # Spam and Antivirus configuration (type: email.pro.spamAndVirusConfiguration)\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: email.mxplan.Service\n$result = $ovh->put(\"/email/mxplan/{service}\", array(\n\tcomplexityEnabled => null, // enable policy for strong and secure passwords (type: boolean)\n\tdisplayName => null, // service displayName (type: string, nullable)\n\tlockoutDuration => null, // number of minutes account will remain locked if it occurs (type: integer)\n\tlockoutObservationWindow => null, // number of minutes that must elapse after a failed logon to reset lockout trigger (type: integer)\n\tlockoutThreshold => null, // number of attempts before account to be locked (type: integer, nullable)\n\tmaxPasswordAge => null, // maximum number of days that account's password is valid before expiration (type: integer, nullable)\n\tmaxReceiveSize => null, // Maximum message size that You can receive in MB (type: integer)\n\tmaxSendSize => null, // Maximum message size that You can send in MB (type: integer)\n\tminPasswordAge => null, // minimum number of days before able to change account's password (type: integer, nullable)\n\tminPasswordLength => null, // minimum number of characters password must contain (type: integer, nullable)\n\tspamAndVirusConfiguration => null, // Spam and Antivirus configuration (type: email.pro.spamAndVirusConfiguration)\n));\n\nprint_r($result);\n?>"}],"x-iam-actions":[{"name":"emailMxplan:apiovh:put","required":true}]}},"/email/mxplan/{service}/server":{"get":{"summary":"Get the server","description":"Get the server. Returns the state, IPv4 and IPv6 addresses, version and disk usage of the server, and whether its A, AAAA and PTR DNS records are valid.","security":[{"oAuth2AuthCode":[]}],"parameters":[{"in":"path","name":"service","description":"The internal name of your mxplan organization","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"successful operation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/email.mxplan.Server"}}}}},"x-developer-hub-navigation":[["Web Cloud","Email and Collaborative Solutions","MX Plan","Zimbra platform","Services@@@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(\"/email/mxplan/{service}/server\")\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(\"/email/mxplan/{service}/server\");\n\nprint_r($result);\n?>"}],"x-iam-actions":[{"name":"emailMxplan:apiovh:server/get","required":true}]}},"/email/mxplan/{service}/updateFlagsOnAllAccounts":{"post":{"summary":"Update spam and virus flags","description":"Update spam and virus flags. Updates the spam and virus flags of all the active email accounts of the service.","security":[{"oAuth2AuthCode":[]}],"parameters":[{"in":"path","name":"service","description":"The internal name of your mxplan organization","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"successful operation"}},"x-developer-hub-navigation":[["Web Cloud","Email and Collaborative Solutions","MX Plan","Zimbra platform","Services@@@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\nresult = client.post(\"/email/mxplan/{service}/updateFlagsOnAllAccounts\")\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(\"/email/mxplan/{service}/updateFlagsOnAllAccounts\");\n\nprint_r($result);\n?>"}],"x-iam-actions":[{"name":"emailMxplan:apiovh:updateFlagsOnAllAccounts","required":true}]}}}}
