Skip to main content
POST
/
business
Create business
curl --request POST \
  --url https://api.partoo.co/v2/business \
  --header 'Content-Type: application/json' \
  --header 'x-APIKey: <api-key>' \
  --data '{
  "name": "Corner shop",
  "org_id": 42,
  "groups": [
    1,
    2,
    3
  ],
  "reach": "LOCAL",
  "country": "FR",
  "zipcode": "75019",
  "city": "Paris",
  "region": "Ile-de-France",
  "categories": [
    "gcid:restaurant",
    "gcid:fast_food_restaurant",
    "gcid:hamburger_restaurant"
  ],
  "code": "CS-75019",
  "status": "open",
  "opening_date": "2025-01-01",
  "address_full": "12 bis rue du coquelicot",
  "address2": "<string>",
  "lat": -3.585993,
  "long": 47.870341,
  "website_url": "https://www.corner-shop.co/",
  "facebook_url": "https://www.facebook.com/the-corner-shop",
  "twitter_url": "https://www.twitter.com/the-corner-shop",
  "description_short": "lorem ipsum",
  "description_long": "lorem ipsum dolor sit amet",
  "open_hours": {
    "monday": [
      "10:00-14:00"
    ],
    "tuesday": [
      "10:00-14:00"
    ],
    "wednesday": [
      "10:00-14:00"
    ],
    "thursday": [
      "10:00-14:00"
    ],
    "friday": [
      "10:00-14:00"
    ],
    "saturday": [
      "10:00-14:00"
    ],
    "sunday": [
      "10:00-14:00"
    ]
  },
  "specific_hours": {
    "open": [
      {
        "starts_at": "2020-01-20",
        "ends_at": "2020-01-20",
        "open_hours": [
          "10:00-14:00"
        ]
      }
    ],
    "close": [
      {
        "starts_at": "2020-01-20",
        "ends_at": "2020-01-22"
      }
    ]
  },
  "contacts": [
    {
      "name": "Hubert Bonisseur de la Bath",
      "email": "hubert@oss117.fr",
      "phone_numbers": [
        "+33302060628"
      ],
      "fax": "+33302060629"
    }
  ],
  "photos": {
    "LOGO": "<string>",
    "primary": "<string>",
    "secondary": [
      "<string>"
    ]
  },
  "national_identification_number": "<string>",
  "custom_fields": {
    "Parking": true,
    "ManagerName": "toto",
    "Surface": 35,
    "DistanceFromSubway": 1.5,
    "Level": "one",
    "Services": [
      "DisabledAccess",
      "FreeParking"
    ],
    "BannerImage": [
      "image 1",
      "image 2"
    ],
    "TeamMembers": [
      {
        "url": "image1",
        "texts": {
          "name1": "value 1",
          "name2": "value 2"
        }
      }
    ]
  }
}'
{
  "status": "success",
  "id": "5409c35a97bbc544d8e26737"
}

Authorizations

x-APIKey
string
header
required

The authentication system on Partoo API is using API Key that should be put in the header of the request (the name of the header is x-APIKey). An api_key is linked to a user. This user's role will give you different access level to the API features.

Body

application/json

Request object

name
string
required

The name of the business (POI) as it will appear on the publishing platforms

Minimum length: 1
Example:

"Corner shop"

country
string
required

Business country - In the ISO 3166 alpha2 code format (i.e. use “FR” for France instead of "fr")

Example:

"FR"

categories
string[]
required

A list of category ids mapped to the business. At least one category needs to be provided. For more information see Categories section

Minimum length: 1
Example:
[
"gcid:restaurant",
"gcid:fast_food_restaurant",
"gcid:hamburger_restaurant"
]
contacts
object[]
required

Specify how the clients can reach the persons in charge of the business in case they have questions.

org_id
integer

The organization unique identifier at Partoo. During onboarding, Partoo creates an organization where all your businesses will be aggregated

Example:

42

groups
integer[]

List of Group ID of the business.

Groups the business belongs to.

See the Groups and Sections description

Example:
[1, 2, 3]
reach
enum<string>
default:LOCAL

Defines whether the business is a physical entity with an address (LOCAL) or a Brand (GLOBAL).

Available options:
LOCAL,
GLOBAL
Example:

"LOCAL"

zipcode
string | null

Zipcode (or postal code) for the business address. Can be empty if the business' country does not require one.

Example:

"75019"

city
string

The city where the business is located.

Required if 'reach' is not specified or set to 'LOCAL'.

Example:

"Paris"

region
string | null

The region where the business is located. Can be empty, it is only useful for some countries like Italy or Spain among others.

Example:

"Ile-de-France"

code
string

The unique store code of the business. If not provided, it will be automatically generated

Example:

"CS-75019"

status
enum<string>
default:open

Defines the current status of the business. open indicates the business is up and running. closed means that the business has definitely closed. temporarily_closed means that the business is temporarily closed, it is advised when your business is closed for more than one week, otherwise use the specific_hours

Available options:
open,
closed,
temporarily_closed
Example:

"open"

opening_date
string<YYYY-MM-DD>

The opening_date represents the date when a business was opened. The format of the date must be in ISO 8601 format (YYYY-MM-DD). ⚠️ The date must be in the past or no more than one year in the future from the current date (Google API requirement).

Example:

"2025-01-01"

address_full
string | null

Full address of the business.

For example : 130 Rue du Mont-Cenis.

Example:

"12 bis rue du coquelicot"

address2
string | null

Complement of address. Any additional information that could help better find the business location

lat
number

Latitude. Decimals are separated by a dot and not by a comma.

Example:

-3.585993

long
number

Longitude. Decimals are separated by a dot and not by a comma.

Example:

47.870341

website_url
string<uri>

The business own website url or the main url of the company.

Example:

"https://www.corner-shop.co/"

facebook_url
string<uri>

Business Facebook page url

Example:

"https://www.facebook.com/the-corner-shop"

twitter_url
string<uri>

Business twitter page url

Example:

"https://www.twitter.com/the-corner-shop"

description_short
string

A short description of the business.

⚠️ It is limited to 80 characters

Example:

"lorem ipsum"

description_long
string

A more detailed description of the business.

⚠️ It is limited to 750 characters

Example:

"lorem ipsum dolor sit amet"

open_hours
object

The opening hours of the business (in its timezone).

Opening hours are specified per weekday. This is done by supplying an object mapping weekdays ("monday", "tuesday", etc.) to a list of strings. These strings in turn represent time slots during which the business is open.

For example, the following value would set the opening hours to between 08:00-15:00 in the afternoon and 18:00-23:00 in the evening on Mondays:
{"monday": ["08:00-15:00", "18:00-23:00"]}

To indicate that a business is open 24 hours for a specific weekday, use the value ["00:00-23:59"].

❗ This field is not mandatory, but if not provided then the business will not be pushed on some platforms (example: Google).
If provided, then a schedule needs to be sent for each day in particular.

specific_hours
object

Exceptional opening or closing times for the business (in its timezone).

All exceptional days of the year, including temporarily closed, can be specified beforehand or on the go. For example:

  • Beforehand: bank holidays (like Christmas or Labor Day)
  • Unpredicted: COVID-19 exceptional situation

Specific hours are defined by two values:

  • open, containing a list of days with exceptional opening hours
  • close, containing a list of days where the business is exceptionally closed all day

These values in turn contain:

  • starts_at indicating the first date for which the exceptional hours are valid
  • ends_at indicating the last date (inclusive) for which the exceptional hours are valid
  • open_hours (only used for days with exceptional opening hours) indicating the actual time slots for the given period, following the same pattern as the time slots in open_hours
photos
object

Business photos

Each business can have one or more photos associated

national_identification_number
string

The National Identification Number of the business.

It describes a unique number for which the business is registered in a specific country.
For example, in France, it's the SIRET code, or for Ireland, it's the CRO.

custom_fields
object

Custom Fields set for this Business

They represent configurable fields that can be defined in addition to the normal business fields proposed by Partoo.

They are unique to the organization and should suit your company needs.

Example:
{
"Parking": true,
"ManagerName": "toto",
"Surface": 35,
"DistanceFromSubway": 1.5,
"Level": "one",
"Services": ["DisabledAccess", "FreeParking"],
"BannerImage": ["image 1", "image 2"],
"TeamMembers": [
{
"url": "image1",
"texts": { "name1": "value 1", "name2": "value 2" }
}
]
}

Response

OK

status
enum<string>

Request status

Available options:
success
id
string

Business id

Example:

"5409c35a97bbc544d8e26737"