{
  "opencollection": "1.0.0",
  "info": {
    "name": "Tower Accounts Service Accounts API",
    "version": "v0.11.16"
  },
  "items": [
    {
      "info": {
        "name": "Service Accounts",
        "type": "folder"
      },
      "items": [
        {
          "info": {
            "name": "List service accounts",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.tower.dev/v1/service-accounts",
            "params": [
              {
                "name": "page",
                "value": "",
                "type": "query",
                "description": "The page number to fetch."
              },
              {
                "name": "page_size",
                "value": "",
                "type": "query",
                "description": "The number of records to fetch on each page."
              }
            ]
          },
          "docs": "List all service accounts in the current account. Team admin only."
        },
        {
          "info": {
            "name": "Create service account",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://api.tower.dev/v1/service-accounts",
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "Create a new service account in the current account. Team admin only."
        },
        {
          "info": {
            "name": "Describe service account",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.tower.dev/v1/service-accounts/:idOrName",
            "params": [
              {
                "name": "idOrName",
                "value": "",
                "type": "path",
                "description": "The ID or name of the service account."
              }
            ]
          },
          "docs": "Fetch a single service account by ID or name. Team admin only."
        },
        {
          "info": {
            "name": "Update service account",
            "type": "http"
          },
          "http": {
            "method": "PATCH",
            "url": "https://api.tower.dev/v1/service-accounts/:idOrName",
            "params": [
              {
                "name": "idOrName",
                "value": "",
                "type": "path",
                "description": "The ID or name of the service account to update."
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "Update one or more fields on an existing service account. Team admin only."
        },
        {
          "info": {
            "name": "Delete service account",
            "type": "http"
          },
          "http": {
            "method": "DELETE",
            "url": "https://api.tower.dev/v1/service-accounts/:idOrName",
            "params": [
              {
                "name": "idOrName",
                "value": "",
                "type": "path",
                "description": "The ID or name of the service account to delete."
              }
            ]
          },
          "docs": "Tombstones a service account: revokes API keys, disables owned schedules, cancels in-flight runs, then soft-deletes the SA. Team admin only."
        },
        {
          "info": {
            "name": "List API keys for service account",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.tower.dev/v1/service-accounts/:idOrName/api-keys",
            "params": [
              {
                "name": "idOrName",
                "value": "",
                "type": "path",
                "description": "The ID or name of the service account."
              },
              {
                "name": "page",
                "value": "",
                "type": "query",
                "description": "The page number to fetch."
              },
              {
                "name": "page_size",
                "value": "",
                "type": "query",
                "description": "The number of records to fetch on each page."
              }
            ]
          },
          "docs": "List API keys bound to a service account. Team admin only."
        },
        {
          "info": {
            "name": "Create API key for service account",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://api.tower.dev/v1/service-accounts/:idOrName/api-keys",
            "params": [
              {
                "name": "idOrName",
                "value": "",
                "type": "path",
                "description": "The ID or name of the service account this key authenticates as."
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "Mint a new API key bound to a service account. The full identifier is only returned on this response. Team admin only."
        },
        {
          "info": {
            "name": "Delete API key for service account",
            "type": "http"
          },
          "http": {
            "method": "DELETE",
            "url": "https://api.tower.dev/v1/service-accounts/:idOrName/api-keys",
            "params": [
              {
                "name": "idOrName",
                "value": "",
                "type": "path",
                "description": "The ID or name of the service account."
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "Revoke an API key bound to a service account. Team admin only."
        }
      ]
    }
  ],
  "bundled": true
}