Every API here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for apis
7 MCP tools reach this
find_apisBrowse and filter every API in the catalog.
get_api_artifactsOne API's artifacts, grouped by type.
get_openapiThe primary OpenAPI for this API.
find_similar_apisAPIs that look like this one.
apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
resolveTurn a domain, URL or GitHub org into the provider it belongs to.
find_cohortsEvery scored population of providers in the catalog.
All 92 tools →
Call it yourself
curl for this page
This API
curl "https://apis.io/api/v1/apis/cpanel-market-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we
store it to create your key and to recognise you if you sign in with another
provider. See our Privacy Policy and
Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Cpanel Market API
version: 11.137.9999.106
contact:
email: cs@cpanel.net
name: WebPros International, LLC
url: https://cpanel.net/support/
license:
name: cPanel License
url: https://cpanel.net/legal-notices/
termsOfService: https://cpanel.net/legal-notices/
x-api-evangelist-provenance: 'Harvested verbatim from cPanel''s developer portal on 2026-09-05 via the MCP tool get-full-api-description at https://api.docs.cpanel.net/mcp. ONE mechanical change was made before storage: example values containing PEM private-key or certificate blocks, and AWS-access-key-shaped example strings, were replaced with REDACTED_* placeholders so the file can be stored in a public git repository without tripping secret scanning. No path, operation, parameter, schema or description was altered, added or removed.'
description: 'Operations tagged Market across 2 of this provider''s published API definitions: cpanel-uapi-openapi.yml, cpanel-whm-api-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- description: A server running cPanel.
url: https://{host}:{port}/execute
variables:
host:
default: cpanel-server.tld
description: The hostname of a server running cPanel.
port:
default: '2083'
description: The cPanel port.
- description: A server running WHM.
url: https://{host}:{port}/json-api
variables:
host:
default: whm-server.tld
description: The hostname of a server running WHM.
port:
default: '2087'
description: The WHM port.
security:
- BasicAuth: []
tags:
- description: The Market module for UAPI.
name: Market
paths:
/Market/cancel_pending_ssl_certificate:
get:
x-readonly: false
x-rollback: none
description: This function cancels an order and removes the polling for a pending certificate.
operationId: Market-cancel_pending_ssl_certificate
parameters:
- description: The ID of the ordered item to cancel.
in: query
name: order_item_id
required: true
schema:
example: '10427508'
type: string
- description: The cPanel Market provider's name.
in: query
name: provider
required: true
schema:
example: cPStore
type: string
responses:
'200':
content:
application/json:
schema:
properties:
apiversion:
description: The version of the API.
example: 3
type: integer
func:
description: The name of the method called.
example: cancel_pending_ssl_certificate
type: string
module:
description: The name of the module called.
example: Market
type: string
result:
properties:
data:
description: An object containing order information.
items:
properties:
created_time:
description: When the system created the order.
example: 1458061262
format: unix_timestamp
type: integer
csr:
description: The text of the Certificate Request (CSR).
example: REDACTED_CERTIFICATE_EXAMPLE
format: base64 certificate
type: string
domains:
description: A list of domains on the certificate.
example:
- example1.com
- example2.com
items:
format: domain
type: string
type: array
expired:
description: 'Whether the system has deleted the item from the pending queue.
* `1` - Deleted.
* `0` - **Not** deleted.'
enum:
- 0
- 1
example: 0
type: integer
first_poll_time:
description: The first time that the system polled the provider for the certificate.
example: 1458061262
format: unix_timestamp
type: integer
last_poll_time:
description: 'The last time that the system polled the
provider for the certificate. '
example: 1458061262
format: unix_timestamp
type: integer
last_status_code:
description: 'The last status code of the order.
* `CertificateNotFound` - The system cannot locate the specified certificate.
* `RequiresApproval` - The specified certificate requires approval.
* `OrderCanceled` - The system cancelled the order of the specified certificate.
* `OrderItemCanceled` - The system cancelled the order item of the specified certificate.'
enum:
- CertificateNotFound
- RequiresApproval
- OrderCanceled
- OrderItemCanceled
example: CertificateNotFound
type: string
order_id:
description: The ID of the order.
example: '1392472'
type: string
order_item_id:
description: The ID of the ordered item.
example: '10427508'
type: string
product_id:
description: The product's ID.
example: '143'
type: string
provider:
description: The cPanel Market provider's name.
example: cPStore
type: string
status:
description: 'The status of the order.
* `confirmed` - Payment confirmed.
* `unconfirmed` - Payment **not** confirmed.'
enum:
- confirmed
- unconfirmed
example: confirmed
type: string
support_uri:
description: The URI of the cPanel Market Provider's support site.
example: http://support.example.com/
format: uri
type: string
vhost_names:
description: A list of virtual host names.
example:
- abcde.com
items:
type: string
type: array
type: object
type: array
errors:
description: List of errors if the API failed.
example: null
items:
type: string
type:
- array
- 'null'
messages:
description: List of messages generated by the API.
example: null
items:
type: string
type:
- array
- 'null'
metadata:
properties:
transformed:
description: Post-processing may have transformed the data.
enum:
- 1
example: 1
type: integer
status:
description: '* `1` - Success
* `0` - Failed: Check the errors field for more details.'
enum:
- 0
- 1
example: 1
type: integer
warnings:
description: 'List of warnings generated by the API. Warnings
describe non-critical failures or other problematic conditions
noted while running an API.'
example: null
items:
type: string
type:
- array
- 'null'
type: object
type: object
description: HTTP Request was successful.
summary: Delete an order
tags:
- Market
x-codeSamples:
- label: CLI
lang: Shell
source: "uapi --output=jsonpretty \\\n --user=username \\\n Market \\\n cancel_pending_ssl_certificate \\\n provider='cPStore' \\\n order_item_id='10427508'\n"
- label: URL
lang: HTTP
source: https://hostname.example.com:2083/cpsess##########/execute/Market/cancel_pending_ssl_certificate?provider=cPStore&order_item_id=10427508
- label: LiveAPI Perl
lang: Perl
source: "#--------------------------------------------------------------------------------------\n# Instructions:\n#--------------------------------------------------------------------------------------\n# <theme-name> is the theme assigned to cPanel account.\n# 1) cd /usr/local/cpanel/base/frontend/<theme-name>\n# 2) mkdir api_examples\n# 3) cd api_examples\n# 4) create a file Market_cancel_pending_ssl_certificate.live.pl and put this code into that file.\n# 5) In your browser login to a cPanel account.\n# 6) Manually change the url from: .../frontend/<theme-name>\n# to .../frontend/<theme-name>/api_examples/Market_cancel_pending_ssl_certificate.live.pl\n#--------------------------------------------------------------------------------------\n\nuse strict;\n\nuse Cpanel::LiveAPI ();\n\nmy $cpanel = Cpanel::LiveAPI->new(); # Connect to cPanel - only do this once.\n\n# Print the header\nprint \"Content-type: text/plain\\r\\n\\r\\n\";\n\n# Call the API\nmy $response = $cpanel->uapi(\n q/Market/,\n q/cancel_pending_ssl_certificate/,\n {\n 'provider' => 'cPStore',\n 'order_item_id' => '10427508',\n }\n);\n\n# Handle the response\nif ($response->{cpanelresult}{result}{status}) {\n my $data = $response->{cpanelresult}{result}{data};\n foreach my $item (@{$data}) {\n # Do something with the $item\n }\n\n # So you can see the data shape we print it here.\n print to_json($data);\n}\nelse {\n # Report errors:\n print to_json($response->{cpanelresult}{result}{errors});\n}\n\n# Disconnect from cPanel - only do this once.\n$cpanel->end();\n\n#--------------------------------------------------------------------------------------\n# Helper function to convert a perl object to html printable json\n#--------------------------------------------------------------------------------------\nsub to_json {\n require JSON;\n my $str = JSON->new->pretty->encode($_[0]);\n return $str;\n}\n"
- label: LiveAPI PHP
lang: PHP
source: "<?php\n//--------------------------------------------------------------------------------------\n// Instructions:\n//--------------------------------------------------------------------------------------\n// <theme-name> is the theme assigned to cPanel account.\n// 1) cd /usr/local/cpanel/base/frontend/<theme-name>\n// 2) mkdir api_examples\n// 3) cd api_examples\n// 4) create a file Market_cancel_pending_ssl_certificate.live.php and put this code into that file.\n// 5) In your browser login to a cPanel account.\n// 6) Manually change the url from: .../frontend/<theme-name>\n// to .../frontend/<theme-name>/api_examples/Market_cancel_pending_ssl_certificate.live.php\n//--------------------------------------------------------------------------------------\n\n// Instantiate the CPANEL object.\nrequire_once \"/usr/local/cpanel/php/cpanel.php\";\n\n// Print the header\nheader('Content-Type: text/plain');\n\n// Connect to cPanel - only do this once.\n$cpanel = new CPANEL();\n\n// Call the API\n$response = $cpanel->uapi(\n 'Market',\n 'cancel_pending_ssl_certificate',\n array (\n 'provider' => 'cPStore',\n 'order_item_id' => '10427508',\n )\n);\n\n// Handle the response\nif ($response['cpanelresult']['result']['status']) {\n $data = $response['cpanelresult']['result']['data'];\n foreach ($data as $item) {\n // Do something with the $item\n }\n\n // So you can see the data shape we print it here.\n print to_json($data);\n}\nelse {\n // Report errors:\n print to_json($response['cpanelresult']['result']['errors']);\n}\n\n// Disconnect from cPanel - only do this once.\n$cpanel->end();\n\n//--------------------------------------------------------------------------------------\n// Helper function to convert a PHP value to html printable json\n//--------------------------------------------------------------------------------------\nfunction to_json($data) {\n return json_encode($data, JSON_PRETTY_PRINT);\n}"
x-cpanel-api-version: UAPI
x-cpanel-available-version: cPanel 56
servers:
- description: A server running cPanel.
url: https://{host}:{port}/execute
variables:
host:
default: cpanel-server.tld
description: The hostname of a server running cPanel.
port:
default: '2083'
description: The cPanel port.
/Market/create_shopping_cart:
get:
x-readonly: false
x-rollback: none
description: This function creates a shopping cart with which the system sends an order to the cPanel Store. Typically, the system will send shopping cart orders for SSL certificates to UAPI’s `Market::request_ssl_certificates` function.
operationId: Market-create_shopping_cart
parameters:
- description: The access token to connect to the provider.
in: query
name: access_token
required: true
schema:
example: 1a676e6f-99fc-11e6-9ab6-e60a769b73bc
format: uuid
type: string
- description: "The items to add to the shopping cart.\n\n**Note**:\n\n The value is a JSON string.\n\n This object has one required key, `product_id`, which is a string.\n\n The other keys/values in this object vary depending on the provider."
example:
- '{"product_id":123456,"provider-specfic-key":"provider-specfic-value","another-provider-specfic-key":"another-provider-specfic-value"}'
- '{"product_id":123457,"provider-specfic-key":"provider-specfic-value","another-provider-specfic-key":"another-provider-specfic-value"}'
explode: true
in: query
name: item
required: true
schema:
items:
format: json
type: string
type: array
style: form
- description: The cPanel Market provider’s name.
in: query
name: provider
required: true
schema:
example: cPStore
type: string
- description: The location to which the provider directs the user after the checkout process is complete.
in: query
name: url_after_checkout
required: true
schema:
example: http://www.example.com/thenextplace
format: url
type: string
responses:
'200':
content:
application/json:
schema:
properties:
apiversion:
description: The version of the API.
example: 3
type: integer
func:
description: The name of the method called.
example: create_shopping_cart
type: string
module:
description: The name of the module called.
example: Market
type: string
result:
properties:
data:
properties:
checkout_url:
description: The location of the provider’s check out page.
example: http://www.example.com/checkout
format: url
type: string
order_id:
description: The order’s ID.
example: '8765309'
type: string
order_items:
description: An array of objects that contain information about Items in the shopping cart. The function returns these values in the order in which you called them. This array of objects returns values that vary between providers.
items:
type: object
type: array
type: object
errors:
description: List of errors if the API failed.
example: null
items:
type: string
type:
- array
- 'null'
messages:
description: List of messages generated by the API.
example: null
items:
type: string
type:
- array
- 'null'
metadata:
properties: {}
status:
description: '* `1` — Success.
* `0` — Failed. Check the `errors` field for more details.'
enum:
- 0
- 1
example: 1
type: integer
warnings:
description: List of warnings generated by the API. Warnings describe non-critical failures or other problematic conditions noted while running a API.
example: null
items:
type: string
type:
- array
- 'null'
type: object
type: object
description: HTTP Request was successful.
summary: Create shopping cart
tags:
- Market
x-codeSamples:
- label: CLI
lang: Shell
source: "uapi --output=jsonpretty \\\n --user=username \\\n Market \\\n create_shopping_cart \\\n provider='cPStore' \\\n access_token='1a676e6f-99fc-11e6-9ab6-e60a769b73bc' \\\n url_after_checkout='http://www.example.com/thenextplace' \\\n item='{\"product_id\":123456,\"provider-specfic-key\":\"provider-specfic-value\",\"another-provider-specfic-key\":\"another-provider-specfic-value\"}' item='{\"product_id\":123457,\"provider-specfic-key\":\"provider-specfic-value\",\"another-provider-specfic-key\":\"another-provider-specfic-value\"}'\n"
- label: URL
lang: HTTP
source: https://hostname.example.com:2083/cpsess##########/execute/Market/create_shopping_cart?provider=cPStore&access_token=1a676e6f-99fc-11e6-9ab6-e60a769b73bc&url_after_checkout=http%3a%2f%2fwww.example.com%2fthenextplace&item=%7b%22product_id%22%3a123456%2c%22provider-specfic-key%22%3a%22provider-specfic-value%22%2c%22another-provider-specfic-key%22%3a%22another-provider-specfic-value%22%7d&item=%7b%22product_id%22%3a123457%2c%22provider-specfic-key%22%3a%22provider-specfic-value%22%2c%22another-provider-specfic-key%22%3a%22another-provider-specfic-value%22%7d
- label: LiveAPI Perl
lang: Perl
source: "#--------------------------------------------------------------------------------------\n# Instructions:\n#--------------------------------------------------------------------------------------\n# <theme-name> is the theme assigned to cPanel account.\n# 1) cd /usr/local/cpanel/base/frontend/<theme-name>\n# 2) mkdir api_examples\n# 3) cd api_examples\n# 4) create a file Market_create_shopping_cart.live.pl and put this code into that file.\n# 5) In your browser login to a cPanel account.\n# 6) Manually change the url from: .../frontend/<theme-name>\n# to .../frontend/<theme-name>/api_examples/Market_create_shopping_cart.live.pl\n#--------------------------------------------------------------------------------------\n\nuse strict;\n\nuse Cpanel::LiveAPI ();\n\nmy $cpanel = Cpanel::LiveAPI->new(); # Connect to cPanel - only do this once.\n\n# Print the header\nprint \"Content-type: text/plain\\r\\n\\r\\n\";\n\n# Call the API\nmy $response = $cpanel->uapi(\n q/Market/,\n q/create_shopping_cart/,\n {\n 'provider' => 'cPStore',\n 'access_token' => '1a676e6f-99fc-11e6-9ab6-e60a769b73bc',\n 'url_after_checkout' => 'http://www.example.com/thenextplace',\n 'item' => '{\"product_id\":123456,\"provider-specfic-key\":\"provider-specfic-value\",\"another-provider-specfic-key\":\"another-provider-specfic-value\"}'&item='{\"product_id\":123457,\"provider-specfic-key\":\"provider-specfic-value\",\"another-provider-specfic-key\":\"another-provider-specfic-value\"}',\n }\n);\n\n# Handle the response\nif ($response->{cpanelresult}{result}{status}) {\n my $data = $response->{cpanelresult}{result}{data};\n # Do something with the $data\n # So you can see the data shape we print it here.\n print to_json($data);\n}\nelse {\n # Report errors:\n print to_json($response->{cpanelresult}{result}{errors});\n}\n\n# Disconnect from cPanel - only do this once.\n$cpanel->end();\n\n#--------------------------------------------------------------------------------------\n# Helper function to convert a perl object to html printable json\n#--------------------------------------------------------------------------------------\nsub to_json {\n require JSON;\n my $str = JSON->new->pretty->encode($_[0]);\n return $str;\n}\n"
- label: LiveAPI PHP
lang: PHP
source: "<?php\n//--------------------------------------------------------------------------------------\n// Instructions:\n//--------------------------------------------------------------------------------------\n// <theme-name> is the theme assigned to cPanel account.\n// 1) cd /usr/local/cpanel/base/frontend/<theme-name>\n// 2) mkdir api_examples\n// 3) cd api_examples\n// 4) create a file Market_create_shopping_cart.live.php and put this code into that file.\n// 5) In your browser login to a cPanel account.\n// 6) Manually change the url from: .../frontend/<theme-name>\n// to .../frontend/<theme-name>/api_examples/Market_create_shopping_cart.live.php\n//--------------------------------------------------------------------------------------\n\n// Instantiate the CPANEL object.\nrequire_once \"/usr/local/cpanel/php/cpanel.php\";\n\n// Print the header\nheader('Content-Type: text/plain');\n\n// Connect to cPanel - only do this once.\n$cpanel = new CPANEL();\n\n// Call the API\n$response = $cpanel->uapi(\n 'Market',\n 'create_shopping_cart',\n array (\n 'provider' => 'cPStore',\n 'access_token' => '1a676e6f-99fc-11e6-9ab6-e60a769b73bc',\n 'url_after_checkout' => 'http://www.example.com/thenextplace',\n 'item' => '{\"product_id\":123456,\"provider-specfic-key\":\"provider-specfic-value\",\"another-provider-specfic-key\":\"another-provider-specfic-value\"}'&item='{\"product_id\":123457,\"provider-specfic-key\":\"provider-specfic-value\",\"another-provider-specfic-key\":\"another-provider-specfic-value\"}',\n )\n);\n\n// Handle the response\nif ($response['cpanelresult']['result']['status']) {\n $data = $response['cpanelresult']['result']['data'];\n // Do something with the $data\n // So you can see the data shape we print it here.\n print to_json($data);\n}\nelse {\n // Report errors:\n print to_json($response['cpanelresult']['result']['errors']);\n}\n\n// Disconnect from cPanel - only do this once.\n$cpanel->end();\n\n//--------------------------------------------------------------------------------------\n// Helper function to convert a PHP value to html printable json\n//--------------------------------------------------------------------------------------\nfunction to_json($data) {\n return json_encode($data, JSON_PRETTY_PRINT);\n}"
x-cpanel-api-version: UAPI
x-cpanel-available-version: cPanel 62
servers:
- description: A server running cPanel.
url: https://{host}:{port}/execute
variables:
host:
default: cpanel-server.tld
description: The hostname of a server running cPanel.
port:
default: '2083'
description: The cPanel port.
/Market/create_shopping_cart_non_ssl:
get:
x-readonly: false
x-rollback: none
description: This function creates a shopping cart for non-SSL products. It validates the access token, retrieves product information, creates a shopping cart with the provider, and returns the order details and checkout URL.
operationId: Market-create_shopping_cart_non_ssl
parameters:
- description: The access token obtained during login to the cPanel Market provider.
in: query
name: access_token
required: true
schema:
example: 1a676e6f-99fc-11e6-9ab6-e60a769b73bc
format: uuid
type: string
- description: The name of the product to purchase.
in: query
name: product_name
required: true
schema:
example: cpanel-ssl
type: string
- description: The URL to which the provider redirects the user after the checkout process is complete.
in: query
name: url_after_checkout
required: true
schema:
example: http://www.example.com/thenextplace
format: url
type: string
- description: The domain associated with the product purchase. This parameter is optional.
in: query
name: domain
required: false
schema:
example: example.com
type: string
responses:
'200':
content:
application/json:
schema:
properties:
apiversion:
description: The version of the API.
example: 3
type: integer
func:
description: The name of the method called.
example: create_shopping_cart_non_ssl
type: string
module:
description: The name of the module called.
example: Market
type: string
result:
properties:
data:
properties:
checkout_url:
description: The URL of the provider's checkout page.
example: https://store.cpanel.net/checkout?order_id=8765309
format: url
type: string
order_id:
description: The order ID assigned by the provider.
example: '8765309'
type: string
order_items_ref:
description: An array of objects that contain information about the items in the shopping cart. The values returned vary between providers.
items:
type: object
type: array
type: object
errors:
description: List of errors if the API failed.
example: null
items:
type: string
type:
- array
- 'null'
messages:
description: List of messages generated by the API.
example: null
items:
type: string
type:
- array
- 'null'
metadata:
properties: {}
status:
description: '* `1` — Success.
* `0` — Failed. Check the `errors` field for more details.'
enum:
- 0
- 1
example: 1
type: integer
warnings:
description: List of warnings generated by the API. Warnings describe non-critical failures or other problematic conditions noted while running a API.
example: null
items:
type: string
type:
- array
- 'null'
type: object
type: object
description: HTTP Request was successful.
summary: Create shopping cart for non-SSL products
tags:
- Market
x-codeSamples:
- label: CLI
lang: Shell
source: "uapi --output=jsonpretty \\\n --user=username \\\n Market \\\n create_shopping_cart_non_ssl \\\n access_token='1a676e6f-99fc-11e6-9ab6-e60a769b73bc' \\\n product_name='cpanel-ssl' \\\n url_after_checkout='http://www.example.com/thenextplace'\n"
- label: URL
lang: HTTP
source: https://hostname.example.com:2083/cpsess##########/execute/Market/create_shopping_cart_non_ssl?access_token=1a676e6f-99fc-11e6-9ab6-e60a769b73bc&product_name=cpanel-ssl&url_after_checkout=http%3a%2f%2fwww.example.com%2fthenextplace
- label: LiveAPI Perl
lang: Perl
source: "#--------------------------------------------------------------------------------------\n# Instructions:\n#--------------------------------------------------------------------------------------\n# <theme-name> is the theme assigned to cPanel account.\n# 1) cd /usr/local/cpanel/base/frontend/<theme-name>\n# 2) mkdir api_examples\n# 3) cd api_examples\n# 4) create a file Market_create_shopping_cart_non_ssl.live.pl and put this code into that file.\n# 5) In your browser login to a cPanel account.\n# 6) Manually change the url from: .../frontend/<theme-name>\n# to .../frontend/<theme-name>/api_examples/Market_create_shopping_cart_non_ssl.live.pl\n#--------------------------------------------------------------------------------------\n\nuse strict;\n\nuse Cpanel::LiveAPI ();\n\nmy $cpanel = Cpanel::LiveAPI->new(); # Connect to cPanel - only do this once.\n\n# Print the header\nprint \"Content-type: text/plain\\r\\n\\r\\n\";\n\n# Call the API\nmy $response = $cpanel-
# --- truncated at 32 KB (388 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/cpanel/refs/heads/main/openapi/cpanel-market-api-openapi.yml