Create a new service in the project
POST /v1/projects/{projectId}/services
Adds a microservice definition to the project with properties like name, category, owner, and messaging relationships. Services can produce to and consume from messaging topics to document data flows. Service names must be unique within the project and will be automatically converted to URL-friendly slugs.
Authorizations
Section titled “Authorizations ”Parameters
Section titled “ Parameters ”Path Parameters
Section titled “Path Parameters ”An identifier (e.g., my-project-a1b2c)
Request Body required
Section titled “Request Body required ”The service
object
The name of this service
A description of this service
The category relevant for this service (e.g. billing, reporting, etc.)
The name of the team that owns this service
The flows that this service belongs to
A messaging topic (Kafka, RabbitMQ, etc.) that services can produce to or consume from
object
The name of the messaging topic (e.g., “order.created”, “payment-queue”)
The category relevant for this topic (e.g. billing, reporting, etc.)
The name of the team that owns this topic
The flows that this topic belongs to
Custom key-value fields (max 20 pairs, keys max 100 chars, values max 500 chars)
object
A messaging topic (Kafka, RabbitMQ, etc.) that services can produce to or consume from
object
The name of the messaging topic (e.g., “order.created”, “payment-queue”)
The category relevant for this topic (e.g. billing, reporting, etc.)
The name of the team that owns this topic
The flows that this topic belongs to
Custom key-value fields (max 20 pairs, keys max 100 chars, values max 500 chars)
object
Custom key-value fields (max 20 pairs, keys max 100 chars, values max 500 chars)
object
Responses
Section titled “ Responses ”The created service
The service
object
The URL-friendly slug of the service
The name of this service
A description of this service
The category relevant for this service (e.g. billing, reporting, etc.)
The name of the team that owns this service
The flows that this service belongs to
A messaging topic (Kafka, RabbitMQ, etc.) that services can produce to or consume from
object
The name of the messaging topic (e.g., “order.created”, “payment-queue”)
The category relevant for this topic (e.g. billing, reporting, etc.)
The name of the team that owns this topic
The flows that this topic belongs to
Custom key-value fields (max 20 pairs, keys max 100 chars, values max 500 chars)
object
A messaging topic (Kafka, RabbitMQ, etc.) that services can produce to or consume from
object
The name of the messaging topic (e.g., “order.created”, “payment-queue”)
The category relevant for this topic (e.g. billing, reporting, etc.)
The name of the team that owns this topic
The flows that this topic belongs to
Custom key-value fields (max 20 pairs, keys max 100 chars, values max 500 chars)
object
Custom key-value fields
object
The name of the actor (member email or API key name) that added this service in the project
The type of actor (user or API key)
The timestamp in UTC that the service was added to the project
The name of the actor (member email or API key name) that updated this service
The type of actor (user or API key)
The timestamp in UTC that the service was updated
The timestamp in UTC that the service snapshot is valid from
The timestamp in UTC that the service snapshot is valid until (null for the latest service snapshot)
Validation error
Validation error response with field-level details
object
HTTP status code
Example
400Machine-readable error code in snake_case
Error message
Example
Validation failedList of field validation violations
Individual field validation violation
object
The field that failed validation
Example
nameValidation error message for this field
Example
must not be blankThe value that was rejected (optional)
Unauthorized, authentication required
Standard error response
object
HTTP status code
Example
400Machine-readable error code in snake_case
Error message
Example
Validation failedAdditional error details
Example
Project name must be between 3 and 60 charactersProject not found
Standard error response
object
HTTP status code
Example
400Machine-readable error code in snake_case
Error message
Example
Validation failedAdditional error details
Example
Project name must be between 3 and 60 charactersService with this name already exists in the project
Standard error response
object
HTTP status code
Example
400Machine-readable error code in snake_case
Error message
Example
Validation failedAdditional error details
Example
Project name must be between 3 and 60 charactersToo many requests
Rate limit exceeded error response
object
HTTP status code
Example
429Machine-readable error code in snake_case
Error message
Example
Too many requestsNumber of seconds until the client can retry
Example
60Headers
Section titled “Headers ”Number of seconds to wait before retrying
Internal server error
Standard error response
object
HTTP status code
Example
400Machine-readable error code in snake_case
Error message
Example
Validation failedAdditional error details
Example
Project name must be between 3 and 60 characters