{"id":6160,"date":"2026-02-13T18:34:50","date_gmt":"2026-02-13T23:34:50","guid":{"rendered":"https:\/\/chubes.net\/?documentation=abilities"},"modified":"2026-02-13T20:19:24","modified_gmt":"2026-02-14T01:19:24","slug":"abilities","status":"publish","type":"documentation","link":"https:\/\/chubes.net\/docs\/spawn\/abilities\/abilities\/","title":{"rendered":"Abilities"},"content":{"rendered":"<h2 class=\"wp-block-heading\">Overview<\/h2><p>Registers the Spawn abilities category and all abilities exposed through the Abilities API.<\/p><h2 class=\"wp-block-heading\">Category<\/h2><ul class=\"wp-block-list\"><li><code>spawn<\/code> labeled \u201cSpawn Service\u201d.<\/li><\/ul><h2 class=\"wp-block-heading\">Registration<\/h2><p>Abilities are registered via <code>wp_register_ability<\/code> on <code>wp_abilities_api_init<\/code>.<\/p><h2 class=\"wp-block-heading\">Abilities<\/h2><ul class=\"wp-block-list\"><li><code>spawn_get_status<\/code> \u2192 <code>Ability_Get_Status::execute<\/code><\/li><li><code>spawn_scale_vps<\/code> \u2192 <code>Ability_Scale_VPS::execute<\/code><\/li><li><code>spawn_add_credits<\/code> \u2192 <code>Ability_Add_Credits::execute<\/code><\/li><li><code>spawn_get_usage<\/code> \u2192 <code>Ability_Get_Usage::execute<\/code><\/li><li><code>spawn_cancel<\/code> \u2192 <code>Ability_Cancel::execute<\/code><\/li><li><code>spawn_export_site<\/code> \u2192 <code>Ability_Export_Site::execute<\/code><\/li><li><code>spawn_manage_billing<\/code> \u2192 <code>Ability_Manage_Billing::execute<\/code><\/li><li><code>spawn_set_auto_refill<\/code> \u2192 <code>Ability_Set_Auto_Refill::execute<\/code><\/li><li><code>spawn_get_domain_renewal_info<\/code> \u2192 <code>Ability_Get_Domain_Renewal_Info::execute<\/code><\/li><li><code>spawn_renew_domain<\/code> \u2192 <code>Ability_Renew_Domain::execute<\/code><\/li><\/ul><h2 class=\"wp-block-heading\">Permissions<\/h2><ul class=\"wp-block-list\"><li><code>check_customer_permission( array $input ): bool<\/code> allows admins, or current user if they own the customer.<\/li><li><code>check_admin_permission( array $input ): bool<\/code> allows admins only.<\/li><\/ul><h2 class=\"wp-block-heading\">Example<\/h2><div class=\"code-block-wrapper\"><div class=\"code-block-header\"><span class=\"code-block-language\">php<\/span><button class=\"code-copy-btn\" aria-label=\"Copy code\"><svg><use href=\"https:\/\/chubes.net\/wp-content\/themes\/chubes\/assets\/icons\/chubes.svg#icon-copy\"><\/use><\/svg><\/button><\/div><pre data-chubes-enhanced class=\"wp-block-code language-php\"><code class=\"language-php\">wp_register_ability( &#039;spawn_get_status&#039;, [\n\t&#039;callback&#039; =&gt; [ SpawnAbilitiesAbility_Get_Status::class, &#039;execute&#039; ],\n] );<\/code><\/pre><\/div>","protected":false},"excerpt":{"rendered":"<p>Overview Registers the Spawn abilities category and all abilities exposed through the Abilities API. Category spawn labeled \u201cSpawn Service\u201d. Registration Abilities are registered via wp_register_ability on wp_abilities_api_init. Abilities spawn_get_status \u2192&#8230;<\/p>\n","protected":false},"featured_media":0,"template":"","meta":{"footnotes":""},"tags":[],"project":[771],"project_type":[485],"class_list":["post-6160","documentation","type-documentation","status-publish","hentry","project-abilities","project_type-tools"],"project_info":{"id":765,"name":"Spawn","slug":"spawn"},"project_type_info":{"id":484,"name":"WordPress Plugins","slug":"wordpress-plugins"},"_links":{"self":[{"href":"https:\/\/chubes.net\/wp-json\/wp\/v2\/documentation\/6160","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/chubes.net\/wp-json\/wp\/v2\/documentation"}],"about":[{"href":"https:\/\/chubes.net\/wp-json\/wp\/v2\/types\/documentation"}],"version-history":[{"count":3,"href":"https:\/\/chubes.net\/wp-json\/wp\/v2\/documentation\/6160\/revisions"}],"predecessor-version":[{"id":8674,"href":"https:\/\/chubes.net\/wp-json\/wp\/v2\/documentation\/6160\/revisions\/8674"}],"wp:attachment":[{"href":"https:\/\/chubes.net\/wp-json\/wp\/v2\/media?parent=6160"}],"wp:term":[{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/chubes.net\/wp-json\/wp\/v2\/tags?post=6160"},{"taxonomy":"project","embeddable":true,"href":"https:\/\/chubes.net\/wp-json\/wp\/v2\/project?post=6160"},{"taxonomy":"project_type","embeddable":true,"href":"https:\/\/chubes.net\/wp-json\/wp\/v2\/project_type?post=6160"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}