open-consul/website/content/commands/services/deregister.mdx

76 lines
2.1 KiB
Plaintext

---
layout: commands
page_title: 'Commands: Services Deregister'
---
# Consul Agent Service Deregistration
Command: `consul services deregister`
Corresponding HTTP API Endpoint: [\[PUT\] /v1/agent/service/deregister/:service_id](/consul/api-docs/agent/service#deregister-service)
The `services deregister` command deregisters a service with the local agent.
Note that this command can only deregister services that were registered
with the agent specified (defaults to the local agent) and is meant to
be paired with `services register`.
This is just one method for service deregistration. If the service was
registered with a configuration file, then deleting that file and
[reloading](/consul/commands/reload) Consul is the correct method to
deregister. See [Service Definition](/consul/docs/discovery/services) for more
information about registering services generally.
The table below shows this command's [required ACLs](/consul/api-docs/api-structure#authentication). Configuration of
[blocking queries](/consul/api-docs/features/blocking) and [agent caching](/consul/api-docs/features/caching)
are not supported from commands, but may be from the corresponding HTTP endpoint.
| ACL Required |
| --------------- |
| `service:write` |
## Usage
Usage: `consul services deregister [options] [FILE...]`
This command can deregister either a single service using the `-id` flag
documented below, or one or more services using service definition files
in HCL or JSON format.
This flexibility makes it easy to pair the command with the
`services register` command since the argument syntax is the same.
#### Command Options
- `-id` - Specifies the ID of a service instance to deregister.
Do not use this flag if any FILE arguments are given.
#### Enterprise Options
@include 'http_api_partition_options.mdx'
@include 'http_api_namespace_options.mdx'
#### API Options
@include 'http_api_options_client.mdx'
## Examples
To deregister by ID:
```shell-session
$ consul services deregister -id=web
```
To deregister from a configuration file:
```shell-session
$ cat web.json
{
"Service": {
"Name": "web"
}
}
$ consul services deregister web.json
```