Create Cost Center
Creates a new cost center for the authenticated company.
Rules:
- The
namefield is required and cannot be empty. - Two cost centers with the same name cannot exist for the same company.
After creating the cost center, use the returned id as costCenterId in PATCH /statements/v1/credit-card/{transactionId} to classify expenses.
curl -X POST "https://api-sandbox.contasimples.com/cost-centers/v1/cost-centers" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-d '{
"name": "Marketing"
}'
import requests
import json
url = "https://api-sandbox.contasimples.com/cost-centers/v1/cost-centers"
headers = {
"Content-Type": "application/json",
"Authorization": "Bearer YOUR_API_TOKEN"
}
data = {
"name": "Marketing"
}
response = requests.post(url, headers=headers, json=data)
print(response.json())
const response = await fetch("https://api-sandbox.contasimples.com/cost-centers/v1/cost-centers", {
method: "POST",
headers: {
"Content-Type": "application/json",
"Authorization": "Bearer YOUR_API_TOKEN"
},
body: JSON.stringify({
"name": "Marketing"
})
});
const data = await response.json();
console.log(data);
package main
import (
"fmt"
"net/http"
"bytes"
"encoding/json"
)
func main() {
data := []byte(`{
"name": "Marketing"
}`)
req, err := http.NewRequest("POST", "https://api-sandbox.contasimples.com/cost-centers/v1/cost-centers", bytes.NewBuffer(data))
if err != nil {
panic(err)
}
req.Header.Set("Content-Type", "application/json")
req.Header.Set("Authorization", "Bearer YOUR_API_TOKEN")
client := &http.Client{}
resp, err := client.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
fmt.Println("Response Status:", resp.Status)
}
require 'net/http'
require 'json'
uri = URI('https://api-sandbox.contasimples.com/cost-centers/v1/cost-centers')
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
request = Net::HTTP::Post.new(uri)
request['Content-Type'] = 'application/json'
request['Authorization'] = 'Bearer YOUR_API_TOKEN'
request.body = '{
"name": "Marketing"
}'
response = http.request(request)
puts response.body
{
"id": "fdafbfa7-5eeb-4d96-84aa-82b7c2e1b0ff",
"companyId": "7c61b3f6-7353-46aa-80ef-3e27d95150ab",
"name": "Marketing"
}
{
"error": "Bad Request",
"message": "One or more request parameters are invalid.",
"code": 400,
"requestId": "123e4567-e89b-12d3-a456-426614174000",
"details": [
"The example field must have a value between 5 and 100.",
"Dates must be in YYYY-MM-DD format."
]
}
{
"error": "Unauthorized",
"message": "Invalid or expired access token.",
"requestId": "123e4567-e89b-12d3-a456-426614174000",
"code": 401
}
{
"error": "Conflict",
"message": "A supplier with the same name already exists for this company.",
"requestId": "123e4567-e89b-12d3-a456-426614174000",
"code": 409
}
{
"error": "Internal Server Error",
"message": "An unexpected error occurred while processing the request.",
"requestId": "123e4567-e89b-12d3-a456-426614174000",
"code": 500
}
/cost-centers/v1/cost-centers
Target server for requests. Edit to use your own host.
Bearer token from OAuth 2.0 client credentials. Format: Bearer {token}
Bearer {token}The media type of the request body
Cost center name. Must be unique per company.
Request Preview
Response
Response will appear here after sending the request
Authentication
Bearer token. Bearer token from OAuth 2.0 client credentials. Format: Bearer {token}
Body
Responses
Unique identifier of the cost center.
Identifier of the company that owns the cost center.
Name of the cost center.
Short error type (e.g. Bad Request, Not Found).
Brief error message for API clients.
HTTP status code for the error (matches the response status).
Optional. For 400 errors, may be a single string or an array of strings with each validation failure.
Short error type (e.g. Bad Request, Not Found).
Brief error message for API clients.
HTTP status code for the error (matches the response status).
Optional. For 400 errors, may be a single string or an array of strings with each validation failure.
Short error type (e.g. Bad Request, Not Found).
Brief error message for API clients.
HTTP status code for the error (matches the response status).
Optional. For 400 errors, may be a single string or an array of strings with each validation failure.
Short error type (e.g. Bad Request, Not Found).
Brief error message for API clients.
HTTP status code for the error (matches the response status).
Optional. For 400 errors, may be a single string or an array of strings with each validation failure.