GitHub · Capability

GitHub User API — Delete

GitHub User API — Delete. 11 operations. Lead operation: GitHub Delete User. Self-contained Naftiko capability covering one Github business surface.

Run with Naftiko GithubDelete

What You Can Do

DELETE
Deleteuser — GitHub Delete User
/v1/admin/users/{username}
DELETE
Deleteanimpersonationoauthtoken — GitHub Delete an Impersonation Oauth Token
/v1/admin/users/{username}/authorizations
DELETE
Deleteanemailaddressfortheauthenticateduser — GitHub Delete an Email Address for the Authenticated User
/v1/user/emails
DELETE
Deletegpgkeyfortheauthenticateduser — GitHub Delete Gpg Key for the Authenticated User
/v1/user/gpg-keys/{gpg-key-id}
DELETE
Deletepublicsshkeyfortheauthenticateduser — GitHub Delete Public Ssh Key for the Authenticated User
/v1/user/keys/{key-id}
DELETE
Deletepackagefortheauthenticateduser — GitHub Delete Package for the Authenticated User
/v1/user/packages/{package-type}/{package-name}
DELETE
Deletepackageversionfortheauthenticateduser — GitHub Delete Package Version for the Authenticated User
/v1/user/packages/{package-type}/{package-name}/versions/{package-version-id}
DELETE
Deletesocialaccountsfortheauthenticateduser — GitHub Delete Social Accounts for the Authenticated User
/v1/user/social-accounts
DELETE
Deleteansshsigningkeyfortheauthenticateduser — GitHub Delete an Ssh Signing Key for the Authenticated User
/v1/user/ssh-signing-keys/{ssh-signing-key-id}
DELETE
Deletepackageforuser — GitHub Delete Package for User
/v1/users/{username}/packages/{package-type}/{package-name}
DELETE
Deletepackageversionforuser — GitHub Delete Package Version for User
/v1/users/{username}/packages/{package-type}/{package-name}/versions/{package-version-id}

MCP Tools

github-delete-user

GitHub Delete User

idempotent
github-delete-impersonation-oauth-token

GitHub Delete an Impersonation Oauth Token

idempotent
github-delete-email-address-authenticated

GitHub Delete an Email Address for the Authenticated User

idempotent
github-delete-gpg-key-authenticated

GitHub Delete Gpg Key for the Authenticated User

idempotent
github-delete-public-ssh-key

GitHub Delete Public Ssh Key for the Authenticated User

idempotent
github-delete-package-authenticated-user

GitHub Delete Package for the Authenticated User

idempotent
github-delete-package-version-authenticated

GitHub Delete Package Version for the Authenticated User

idempotent
github-delete-social-accounts-authenticated

GitHub Delete Social Accounts for the Authenticated User

idempotent
github-delete-ssh-signing-key

GitHub Delete an Ssh Signing Key for the Authenticated User

idempotent
github-delete-package-user

GitHub Delete Package for User

idempotent
github-delete-package-version-user

GitHub Delete Package Version for User

idempotent

Capability Spec

users-delete.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: GitHub User API — Delete
  description: 'GitHub User API — Delete. 11 operations. Lead operation: GitHub Delete User. Self-contained Naftiko capability
    covering one Github business surface.'
  tags:
  - Github
  - Delete
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    GITHUB_API_KEY: GITHUB_API_KEY
capability:
  consumes:
  - type: http
    namespace: users-delete
    baseUri: ''
    description: GitHub User API — Delete business capability. Self-contained, no shared references.
    resources:
    - name: admin-users-username
      path: /admin/users/{username}
      operations:
      - name: deleteuser
        method: DELETE
        description: GitHub Delete User
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
    - name: admin-users-username-authorizations
      path: /admin/users/{username}/authorizations
      operations:
      - name: deleteanimpersonationoauthtoken
        method: DELETE
        description: GitHub Delete an Impersonation Oauth Token
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
    - name: user-emails
      path: /user/emails
      operations:
      - name: deleteanemailaddressfortheauthenticateduser
        method: DELETE
        description: GitHub Delete an Email Address for the Authenticated User
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: user-gpg_keys-gpg_key_id
      path: /user/gpg_keys/{gpg_key_id}
      operations:
      - name: deletegpgkeyfortheauthenticateduser
        method: DELETE
        description: GitHub Delete Gpg Key for the Authenticated User
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
    - name: user-keys-key_id
      path: /user/keys/{key_id}
      operations:
      - name: deletepublicsshkeyfortheauthenticateduser
        method: DELETE
        description: GitHub Delete Public Ssh Key for the Authenticated User
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
    - name: user-packages-package_type-package_name
      path: /user/packages/{package_type}/{package_name}
      operations:
      - name: deletepackagefortheauthenticateduser
        method: DELETE
        description: GitHub Delete Package for the Authenticated User
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
    - name: user-packages-package_type-package_name-versions-package_version_id
      path: /user/packages/{package_type}/{package_name}/versions/{package_version_id}
      operations:
      - name: deletepackageversionfortheauthenticateduser
        method: DELETE
        description: GitHub Delete Package Version for the Authenticated User
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
    - name: user-social_accounts
      path: /user/social_accounts
      operations:
      - name: deletesocialaccountsfortheauthenticateduser
        method: DELETE
        description: GitHub Delete Social Accounts for the Authenticated User
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: user-ssh_signing_keys-ssh_signing_key_id
      path: /user/ssh_signing_keys/{ssh_signing_key_id}
      operations:
      - name: deleteansshsigningkeyfortheauthenticateduser
        method: DELETE
        description: GitHub Delete an Ssh Signing Key for the Authenticated User
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
    - name: users-username-packages-package_type-package_name
      path: /users/{username}/packages/{package_type}/{package_name}
      operations:
      - name: deletepackageforuser
        method: DELETE
        description: GitHub Delete Package for User
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
    - name: users-username-packages-package_type-package_name-versions-package_version_id
      path: /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}
      operations:
      - name: deletepackageversionforuser
        method: DELETE
        description: GitHub Delete Package Version for User
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
    authentication:
      type: bearer
      token: '{{env.GITHUB_API_KEY}}'
  exposes:
  - type: rest
    namespace: users-delete-rest
    port: 8080
    description: REST adapter for GitHub User API — Delete. One Spectral-compliant resource per consumed operation, prefixed
      with /v1.
    resources:
    - path: /v1/admin/users/{username}
      name: admin-users-username
      description: REST surface for admin-users-username.
      operations:
      - method: DELETE
        name: deleteuser
        description: GitHub Delete User
        call: users-delete.deleteuser
        with:
          Authorization: rest.Authorization
          X-GitHub-Api-Version: rest.X-GitHub-Api-Version
          Accept: rest.Accept
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/admin/users/{username}/authorizations
      name: admin-users-username-authorizations
      description: REST surface for admin-users-username-authorizations.
      operations:
      - method: DELETE
        name: deleteanimpersonationoauthtoken
        description: GitHub Delete an Impersonation Oauth Token
        call: users-delete.deleteanimpersonationoauthtoken
        with:
          Authorization: rest.Authorization
          X-GitHub-Api-Version: rest.X-GitHub-Api-Version
          Accept: rest.Accept
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/user/emails
      name: user-emails
      description: REST surface for user-emails.
      operations:
      - method: DELETE
        name: deleteanemailaddressfortheauthenticateduser
        description: GitHub Delete an Email Address for the Authenticated User
        call: users-delete.deleteanemailaddressfortheauthenticateduser
        with:
          Authorization: rest.Authorization
          X-GitHub-Api-Version: rest.X-GitHub-Api-Version
          Accept: rest.Accept
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/user/gpg-keys/{gpg-key-id}
      name: user-gpg-keys-gpg-key-id
      description: REST surface for user-gpg_keys-gpg_key_id.
      operations:
      - method: DELETE
        name: deletegpgkeyfortheauthenticateduser
        description: GitHub Delete Gpg Key for the Authenticated User
        call: users-delete.deletegpgkeyfortheauthenticateduser
        with:
          Authorization: rest.Authorization
          X-GitHub-Api-Version: rest.X-GitHub-Api-Version
          Accept: rest.Accept
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/user/keys/{key-id}
      name: user-keys-key-id
      description: REST surface for user-keys-key_id.
      operations:
      - method: DELETE
        name: deletepublicsshkeyfortheauthenticateduser
        description: GitHub Delete Public Ssh Key for the Authenticated User
        call: users-delete.deletepublicsshkeyfortheauthenticateduser
        with:
          Authorization: rest.Authorization
          X-GitHub-Api-Version: rest.X-GitHub-Api-Version
          Accept: rest.Accept
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/user/packages/{package-type}/{package-name}
      name: user-packages-package-type-package-name
      description: REST surface for user-packages-package_type-package_name.
      operations:
      - method: DELETE
        name: deletepackagefortheauthenticateduser
        description: GitHub Delete Package for the Authenticated User
        call: users-delete.deletepackagefortheauthenticateduser
        with:
          Authorization: rest.Authorization
          X-GitHub-Api-Version: rest.X-GitHub-Api-Version
          Accept: rest.Accept
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/user/packages/{package-type}/{package-name}/versions/{package-version-id}
      name: user-packages-package-type-package-name-versions-package-version-id
      description: REST surface for user-packages-package_type-package_name-versions-package_version_id.
      operations:
      - method: DELETE
        name: deletepackageversionfortheauthenticateduser
        description: GitHub Delete Package Version for the Authenticated User
        call: users-delete.deletepackageversionfortheauthenticateduser
        with:
          Authorization: rest.Authorization
          X-GitHub-Api-Version: rest.X-GitHub-Api-Version
          Accept: rest.Accept
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/user/social-accounts
      name: user-social-accounts
      description: REST surface for user-social_accounts.
      operations:
      - method: DELETE
        name: deletesocialaccountsfortheauthenticateduser
        description: GitHub Delete Social Accounts for the Authenticated User
        call: users-delete.deletesocialaccountsfortheauthenticateduser
        with:
          Authorization: rest.Authorization
          X-GitHub-Api-Version: rest.X-GitHub-Api-Version
          Accept: rest.Accept
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/user/ssh-signing-keys/{ssh-signing-key-id}
      name: user-ssh-signing-keys-ssh-signing-key-id
      description: REST surface for user-ssh_signing_keys-ssh_signing_key_id.
      operations:
      - method: DELETE
        name: deleteansshsigningkeyfortheauthenticateduser
        description: GitHub Delete an Ssh Signing Key for the Authenticated User
        call: users-delete.deleteansshsigningkeyfortheauthenticateduser
        with:
          Authorization: rest.Authorization
          X-GitHub-Api-Version: rest.X-GitHub-Api-Version
          Accept: rest.Accept
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/users/{username}/packages/{package-type}/{package-name}
      name: users-username-packages-package-type-package-name
      description: REST surface for users-username-packages-package_type-package_name.
      operations:
      - method: DELETE
        name: deletepackageforuser
        description: GitHub Delete Package for User
        call: users-delete.deletepackageforuser
        with:
          Authorization: rest.Authorization
          X-GitHub-Api-Version: rest.X-GitHub-Api-Version
          Accept: rest.Accept
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/users/{username}/packages/{package-type}/{package-name}/versions/{package-version-id}
      name: users-username-packages-package-type-package-name-versions-package-version-id
      description: REST surface for users-username-packages-package_type-package_name-versions-package_version_id.
      operations:
      - method: DELETE
        name: deletepackageversionforuser
        description: GitHub Delete Package Version for User
        call: users-delete.deletepackageversionforuser
        with:
          Authorization: rest.Authorization
          X-GitHub-Api-Version: rest.X-GitHub-Api-Version
          Accept: rest.Accept
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: users-delete-mcp
    port: 9090
    transport: http
    description: MCP adapter for GitHub User API — Delete. One tool per consumed operation, routed inline through this capability's
      consumes block.
    tools:
    - name: github-delete-user
      description: GitHub Delete User
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: users-delete.deleteuser
      with:
        Authorization: tools.Authorization
        X-GitHub-Api-Version: tools.X-GitHub-Api-Version
        Accept: tools.Accept
      outputParameters:
      - type: object
        mapping: $.
    - name: github-delete-impersonation-oauth-token
      description: GitHub Delete an Impersonation Oauth Token
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: users-delete.deleteanimpersonationoauthtoken
      with:
        Authorization: tools.Authorization
        X-GitHub-Api-Version: tools.X-GitHub-Api-Version
        Accept: tools.Accept
      outputParameters:
      - type: object
        mapping: $.
    - name: github-delete-email-address-authenticated
      description: GitHub Delete an Email Address for the Authenticated User
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: users-delete.deleteanemailaddressfortheauthenticateduser
      with:
        Authorization: tools.Authorization
        X-GitHub-Api-Version: tools.X-GitHub-Api-Version
        Accept: tools.Accept
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: github-delete-gpg-key-authenticated
      description: GitHub Delete Gpg Key for the Authenticated User
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: users-delete.deletegpgkeyfortheauthenticateduser
      with:
        Authorization: tools.Authorization
        X-GitHub-Api-Version: tools.X-GitHub-Api-Version
        Accept: tools.Accept
      outputParameters:
      - type: object
        mapping: $.
    - name: github-delete-public-ssh-key
      description: GitHub Delete Public Ssh Key for the Authenticated User
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: users-delete.deletepublicsshkeyfortheauthenticateduser
      with:
        Authorization: tools.Authorization
        X-GitHub-Api-Version: tools.X-GitHub-Api-Version
        Accept: tools.Accept
      outputParameters:
      - type: object
        mapping: $.
    - name: github-delete-package-authenticated-user
      description: GitHub Delete Package for the Authenticated User
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: users-delete.deletepackagefortheauthenticateduser
      with:
        Authorization: tools.Authorization
        X-GitHub-Api-Version: tools.X-GitHub-Api-Version
        Accept: tools.Accept
      outputParameters:
      - type: object
        mapping: $.
    - name: github-delete-package-version-authenticated
      description: GitHub Delete Package Version for the Authenticated User
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: users-delete.deletepackageversionfortheauthenticateduser
      with:
        Authorization: tools.Authorization
        X-GitHub-Api-Version: tools.X-GitHub-Api-Version
        Accept: tools.Accept
      outputParameters:
      - type: object
        mapping: $.
    - name: github-delete-social-accounts-authenticated
      description: GitHub Delete Social Accounts for the Authenticated User
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: users-delete.deletesocialaccountsfortheauthenticateduser
      with:
        Authorization: tools.Authorization
        X-GitHub-Api-Version: tools.X-GitHub-Api-Version
        Accept: tools.Accept
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: github-delete-ssh-signing-key
      description: GitHub Delete an Ssh Signing Key for the Authenticated User
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: users-delete.deleteansshsigningkeyfortheauthenticateduser
      with:
        Authorization: tools.Authorization
        X-GitHub-Api-Version: tools.X-GitHub-Api-Version
        Accept: tools.Accept
      outputParameters:
      - type: object
        mapping: $.
    - name: github-delete-package-user
      description: GitHub Delete Package for User
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: users-delete.deletepackageforuser
      with:
        Authorization: tools.Authorization
        X-GitHub-Api-Version: tools.X-GitHub-Api-Version
        Accept: tools.Accept
      outputParameters:
      - type: object
        mapping: $.
    - name: github-delete-package-version-user
      description: GitHub Delete Package Version for User
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: users-delete.deletepackageversionforuser
      with:
        Authorization: tools.Authorization
        X-GitHub-Api-Version: tools.X-GitHub-Api-Version
        Accept: tools.Accept
      outputParameters:
      - type: object
        mapping: $.