---
title: "POST /pocket.service.Msg/AddService"
method: POST
path: "/pocket.service.Msg/AddService"
tags: ["Msg"]
---

# POST /pocket.service.Msg/AddService

`POST /pocket.service.Msg/AddService`

## Request body

- PocketServiceMsgAddService — MsgAddService defines a message for adding a new message to the network. Services can be added by any actor in the network making them truly permissionless.
  - `owner_address` string — The Bech32 address of the service owner.
  - `service` PocketSharedService
    - `compute_units_per_relay` string, uint64 — Compute units required per relay for this service
    - `id` string — Unique identifier for the service
    - `metadata` PocketSharedMetadata — Metadata message to hold additional metadata for a service. The raw bytes are stored on-chain and will be base64 encoded in JSON representations.
      - `experimental_api_specs` string, byte — EXPERIMENTAL: Serialized API spec limited to 100 KiB when decoded. TODO(@future): support dedicated openapi_ / openrpc_ fields once formats stabilize.
    - `name` string — (Optional) Human readable description of the service
    - `owner_address` string — The owner address that created the service. It is the address that receives rewards based on the Service's onchain usage It is the only address that can update the service configuration (e.g. compute_units_per_relay), or make other updates to it. The Bech32 address of the service owner / creator

## Response `200`

A successful response.

- PocketServiceMsgAddServiceResponse

## Other responses

- `default` — An unexpected error response.

---

[API](https://skmtc.net/pokt-network/apis/http-api-console.md) · [All operations](https://skmtc.net/pokt-network/apis/http-api-console/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/pokt-network/http-api-console/versions/edba20e8c8a3/schema)
