Shop configuration

Your shops, and the settings that shape every tool for each shop: shared settings, and one set of settings for each tool.

PCIFIC's tools are not tuned to one kind of shop. You tell them about yours with settings: what your shop is called, what language and voice to write in, and a few switches and limits for each tool. Your listing fields (see Set up your listing fields) say what a listing looks like. Settings say how the tools should behave around it.

Plain-text settings, including business names and registered addresses, shop names, language, AI notices, What can be listed, Safeguard instructions and banned items, verdict names, Ask’s fallback message and the embed button label, refuse HTML tags when saved. Remove tags and use plain text. Comparisons such as 2 < 3 and weights such as <50g are accepted.

Shops

Your business can run more than one shop. Each shop has its own shared and tool settings, listing fields, documents, PixelTrace photos, spending limits, usage, logs and test key daily allowance, and nothing of one shop is visible to another shop's calls. Your API keys, team, credit balance, billing, privacy tiers, own AI model, tool releases, saved test key cap and PixelTrace code letters belong to the whole business. One key works for every shop: name the shop with ?marketplaceId=<id> on every call, whatever the method. GET /api/v1/marketplaces lists your shops and their ids. While your business has one shop you may leave marketplaceId out. Once it has more than one, a call that needs a shop and names none is refused with 400 MARKETPLACE_ID_REQUIRED; PCIFIC never guesses. Usage, analytics and the monitoring summary cover every shop together when no shop is named.

Shop calls
CallWhat it does
GET /api/v1/marketplacesLists your shops: {marketplaces: [{id, name, createdAt}]}. Every key may call it.
POST /api/v1/marketplacesAdds a shop: {name}, or {name, copyFrom, copy} to copy parts of one of your shops. Answers 201 with the new shop's id.
GET /api/v1/marketplaces/{id}One shop.
PUT /api/v1/marketplaces/{id}Renames a shop: {name}.
DELETE /api/v1/marketplaces/{id}Deletes a shop with its settings, listing fields, documents and photos. Its past charges stay in your credit history. Your last shop cannot be deleted.
  • Adding, renaming and deleting shops needs a test key with the settings permission, or an owner or admin on the dashboard. A live key can list shops but never change them.
  • A new shop starts from scratch: every setting at its default, no listing fields, no documents. Or copy parts of one of your shops once: safeguard, orbit, ask-pcific and pixel-trace (each tool's settings, its rules and behaviour), marketplace (the language, voice and AI notice below, but not the name the tools use), listing-fields (the working copy and every published version) and documents (Ask PCIFIC's documents). Leave copy out to copy every part.
  • A copy is made once. After that the two shops are independent: changing one never changes the other.
  • Each shop has the full limits on this page for itself, for example 2,000 characters of Safeguard instructions and 600 of Ask PCIFIC tone notes per shop, so each brand gets its own words.
  • On the dashboard, the shop switcher is in the Your account menu at the foot of the left menu. The shop you choose there is the one the Shop, settings, documents and Usage pages show and change. Add new shop opens a guided setup: name the shop, start from scratch or copy from an existing shop, pick what to copy, and confirm.
List your shops, then add one that copies another shop's tool rules
curl https://business.pcific.ai/api/v1/marketplaces \
  -H "Authorization: Bearer $PCIFIC_TEST_KEY"

curl -X POST https://business.pcific.ai/api/v1/marketplaces \
  -H "Authorization: Bearer $PCIFIC_TEST_KEY" \
  -H "Content-Type: application/json" \
  -d '{"name":"Voltback","copyFrom":"<id of the shop to copy>","copy":["safeguard","orbit","ask-pcific","pixel-trace"]}'

The examples below send ?marketplaceId=$PCIFIC_SHOP_ID. While your business has one shop you can leave it out; once it has more, every call that reads or changes a shop's settings must name the shop.

How settings work

Changing a setting
  1. Read the settings with GETEach group of settings has one address, for the shop named by marketplaceId. Every setting has a default, so a shop that never changed anything still gets an answer.
  2. Send only what changes with PUTA setting you leave out stays as it was. Two changes sent at the same moment both stick.
  3. Read the answerIt shows every setting after the change. A setting you sent that does not exist is ignored and named in a warnings list.
  4. The next request uses the new settingThere is nothing to publish or restart.
The five groups of settings
AddressWhat it covers
/api/v1/marketplace/settingsShared by all tools: name, language, voice and the AI notice.
/api/v1/orbit/settingsOrbit: on or off, what you sell, listing style, photo copies, price check and currency.
/api/v1/safeguard/settingsSafeguard: on or off, minimum score, web search, banned items, instructions, verdict names and scores.
/api/v1/ask-pcific/settingsAsk PCIFIC: on or off, web search, how new document versions go live, fallback message, support link, tone and chats.
/api/v1/pixel-trace/settingsPixelTrace: on or off, photo storage, previews, photo size, camera link times, certificate code letters and what a public certificate shows.

Every address takes GET to read and PUT to change, for one shop at a time. You can also change the same settings on the Shop settings page of your dashboard, for the shop chosen in the switcher, as an owner or admin. Members can read but not change.

Who can change settings

  • A test key with the settings permission can read and change every group on this page. Read-only keys (the read permission) can read.
  • A live key can read settings but is always refused with 403 KEY_NOT_ALLOWED when it tries to change one. Make the change on the dashboard or with a test key. This stops a leaked production key from changing how your account is set up.
  • Pick a voice and listing style from PCIFIC's six choices. Free-text instructions describe what your buyers care about; they cannot change PCIFIC's rules, facts or scores. About describes only what your shop sells, never how listings sound or look.

Shared settings

GET and PUT /api/v1/marketplace/settings. These are used by more than one tool. Send null to put a setting back to its default.

Shared settings
SettingTypeDefaultWhat it does
namestringYour business nameWhat the tools call your shop. Up to 80 characters.
languagestringNoneThe language Orbit and Safeguard write in, for example English or French. Up to 60 characters. Your field names and the options in your listing fields stay exactly as you wrote them.
voicestringstandardOne of standard, warm, upbeat, formal, concise or reassuring. null restores standard.
aiNoticestring"Generated with our company AI. Please verify the information before relying on it."The notice sent with every Ask PCIFIC answer, for you to show beside it. Up to 300 characters. null puts the standard notice back. An empty string "" sends no notice at all.
Set a name, language and voice
curl -X PUT "https://business.pcific.ai/api/v1/marketplace/settings?marketplaceId=$PCIFIC_SHOP_ID" \
  -H "Authorization: Bearer $PCIFIC_TEST_KEY" \
  -H "Content-Type: application/json" \
  -d '{"name":"Threadloop","language":"English","voice":"warm"}'

Orbit settings

GET and PUT /api/v1/orbit/settings. Orbit writes listings from a seller's photos and notes into your listing fields. These settings tell it what you sell, how a listing should read, and what to do with the photos you upload.

Orbit settings
SettingTypeDefaultWhat it does
notesMinLengthinteger or nullnullOptional minimum notes length, 0 to 5,000 characters after trimming spaces at the ends. Applies even with photos or details, before AI or usage. Must not exceed notesMaxLength. null removes the limit.
notesMaxLengthinteger or nullnullOptional maximum notes length, 0 to 5,000 characters after trimming. Applies even with photos or details. null removes the limit. With both limits unset, notes under 4 characters are refused only when there are no photos or details.
enabledbooleantrueOrbit on or off. While it is off, Orbit refuses new work with 403 ORBIT_TURNED_OFF.
aboutstring or nullNoneWhat your business sells, who buys it and how listings should read, up to 2,000 characters. Orbit uses it to judge whether an item belongs on your shop. You can also send it as "about" when you publish your listing fields.
listingStylestring or nullstandardOne of standard, quick_scan, descriptive, spec_sheet, condition_first or premium. null restores standard. Safeguard rewrites follow it too.
voicestring or nullNoneOrbit's own voice, one of the six. null uses the shop voice.
imageFormatstringwebpThe format of your copy of each uploaded photo: webp, avif or jpeg.
imageSizeinteger2048The longest side of your copy of each photo, from 320 to 4096 pixels.
previewSizeinteger400The longest side of the small preview of each photo, from 100 to 1024 pixels.
pricingbooleanfalseTurns the price check on or off. Off, Orbit does not suggest a price. Web research remains available for listing details even when the price check is off, and cannot be turned off. A run can finish without a web search when the supplied details are enough.
currencystringGBPThe currency your prices are written in: three capital letters, such as GBP, EUR or USD. Prices are never converted. Every price field in your listing fields must allow this currency.
Tell Orbit what you sell
curl -X PUT "https://business.pcific.ai/api/v1/orbit/settings?marketplaceId=$PCIFIC_SHOP_ID" \
  -H "Authorization: Bearer $PCIFIC_TEST_KEY" \
  -H "Content-Type: application/json" \
  -d '{"about":"We sell second-hand phones and laptops to people in the UK. Listings should be short and factual.","currency":"GBP"}'

Safeguard settings

GET and PUT /api/v1/safeguard/settings. Safeguard scores every listing from 0 to 10. A verdict is your own name for a part of that scale. Settings never change the score, only what you do with it.

Safeguard settings
SettingTypeDefaultWhat it does
enabledbooleantrueSafeguard on or off. While it is off, new reviews are refused with 403 SAFEGUARD_TURNED_OFF.
minimumScoreinteger7The score a listing needs for passed to be true, from 0 to 10.
webSearchbooleantrueWhether Safeguard may search the web to check the item, its usual price and known problems.
bannedItemsstring[][]What may not be listed, in plain words, for example "Replica or counterfeit designer goods". Up to 50 items of up to 200 characters. Plainly illegal items and scams are always banned.
instructionsstring or nullNoneWhat your buyers care about most, up to 2,000 characters. It is shown after PCIFIC's own instructions and cannot change the scale.
voicestring or nullNoneSafeguard's own voice, one of the six. null uses the shop voice.
orbitDefaultbooleanfalseReview every Orbit listing that does not say otherwise.
verdictsobject[]High risk from 0 (block), Caution from 4 (review), Looks good from 7 (pass)Your own names for parts of the 0 to 10 scale: 2 to 5 of {name, from, meaning}, lowest first. name is up to 40 characters and unique. from is the whole number where the verdict starts: the first starts at 0 and each is higher than the one before. meaning is block, review or pass, getting no stricter as the score rises, with at least one block. null puts the standard three back.
categoryVerdictStartsobject{}A category's own start scores, one per verdict, for example {"Art": [0, 6, 9]} so a listing in Art is labelled with the top verdict only from a score of 9. It changes the verdict label, not passed: passed always compares the score with minimumScore. Each name must be a category in your newest published listing fields.
Raise the pass mark and ban an item
curl -X PUT "https://business.pcific.ai/api/v1/safeguard/settings?marketplaceId=$PCIFIC_SHOP_ID" \
  -H "Authorization: Bearer $PCIFIC_TEST_KEY" \
  -H "Content-Type: application/json" \
  -d '{"minimumScore":8,"bannedItems":["Replica or counterfeit designer goods"]}'

Ask PCIFIC settings

GET and PUT /api/v1/ask-pcific/settings. Ask PCIFIC answers a buyer's question from the documents you add. These settings control when it may search the web, how a changed document goes live, and what it says when it has no answer.

Ask PCIFIC settings
SettingTypeDefaultWhat it does
enabledbooleantrueAsk PCIFIC on or off. While it is off, questions are refused with 403 ASK_TURNED_OFF.
webSearchbooleantrueWhether the AI may search the web. Off, it answers from your documents and the item only.
reviewModestringautomaticautomatic puts a changed document live straight away. approve_first holds each new version until an owner or admin approves it on the Documents page. Old answers keep using the live version meanwhile. Only an owner or admin can change reviewMode on the dashboard Documents page; API keys cannot change it.
fallbackMessagestring or nullI couldn't find the answer to that in our information. Please contact our support team.What a buyer sees when nothing you wrote covers the question. Up to 500 characters.
supportLinkstring or nullNoneWhere to send a buyer you could not help: an https:// address or a mailto: link, up to 2,000 characters. It comes back with answers that say nothing was covered.
voicestring or nullNoneAsk PCIFIC's own voice, one of the six. null uses the shop voice.
keepChatsbooleantrueWhether a chat is kept so follow-up questions work. Off, each question stands alone and nothing about the chat is stored.

Ask PCIFIC can also look an item up by its id at an address of yours (/api/v1/ask-pcific/item-source). That, and the documents it answers from, are on the Ask PCIFIC page.

Set a support link
curl -X PUT "https://business.pcific.ai/api/v1/ask-pcific/settings?marketplaceId=$PCIFIC_SHOP_ID" \
  -H "Authorization: Bearer $PCIFIC_TEST_KEY" \
  -H "Content-Type: application/json" \
  -d '{"supportLink":"https://example.com/help"}'

PixelTrace settings

GET and PUT /api/v1/pixel-trace/settings. PixelTrace records seller photos in a camera page and checks new photos against photos already used in your shop. These settings control how long a camera link lasts, how photos are kept and what a public certificate shows.

PixelTrace settings
SettingTypeDefaultWhat it does
enabledbooleantruePixelTrace on or off. While it is off, new groups and checks are refused with 403 PIXEL_TRACE_TURNED_OFF. Groups already started carry on.
keepPhotosbooleantruefalse means zero retention: photo files are deleted once a group is published and only fingerprints stay.
previewFormatstringwebpThe format of photo previews: webp or jpeg.
previewSizeinteger480The longest side of a preview, from 160 to 1024 pixels.
minPhotosinteger1How many photos a group needs before the seller can confirm it, from 1 to 12.
publicLevelsstring[][]Which match levels a public certificate page may show: same_photo, likely_same, possibly_related. [] shows none.
codePrefixstringPCFThe letters certificate codes start with, two to five capital letters, such as BRE. They belong to your whole business, so changing them in one shop changes them for every shop. Codes already issued keep their letters. Letters another business uses are refused.
photoSizeinteger1440The longest side of each photo the camera takes: 1080, 1440, 1920 or 2560 pixels.
openWithinMinutesinteger15How long a camera link waits to be opened, from 5 to 10,080 minutes (a week).
captureMinutesinteger30How long the seller has to take and confirm photos once they open the link, from 5 to 120 minutes.
Keep no photo files and set your own code letters
curl -X PUT "https://business.pcific.ai/api/v1/pixel-trace/settings?marketplaceId=$PCIFIC_SHOP_ID" \
  -H "Authorization: Bearer $PCIFIC_TEST_KEY" \
  -H "Content-Type: application/json" \
  -d '{"keepPhotos":false,"codePrefix":"BRE"}'

Errors

Errors that any address can return are on the Errors, limits and retries page. These are the ones settings add.

Errors from settings and shops
CodeHTTPWhy it happensHow to fix
MARKETPLACE_ID_REQUIRED400Your business has more than one shop, and the call does not say which one it is for: marketplaceId is missing from the address. Nothing was changed or charged.List your shops with GET /api/v1/marketplaces and add ?marketplaceId=<id> to the address, for example /api/v1/safeguard/settings?marketplaceId=<id>. Send it on every call from then on.
MARKETPLACE_NOT_FOUND404marketplaceId names a shop your business does not have: a typo, a deleted shop, or another business's shop.List your shops with GET /api/v1/marketplaces and use one of their ids.
LAST_MARKETPLACE409You tried to delete your business's only shop.Every business keeps at least one shop. Add another shop first with POST /api/v1/marketplaces if you want to delete this one, or rename it instead.
INVALID_SETTING400A setting is the wrong type, out of its range or too long. The message names the setting.Send the setting in the form the message shows. The tables above give every range and length. For PixelTrace, a "mode" other than "isolated" is also refused, because photos are only ever matched within your own shop.
INVALID_JSON400The body is not a JSON object.Send an object such as {"minimumScore": 8} with the header "Content-Type: application/json".
KEY_NOT_ALLOWED403A test key without the settings permission, or any live key, tried to change a setting.Tick Change tool settings on a test key, or change the setting on the dashboard.
PIXEL_TRACE_PREFIX_TAKEN409Another shop already uses, or has used, the code letters you asked for.Choose different letters, for example your shop's initials.
PIXEL_TRACE_PREFIX_RESERVED409Those code letters are kept for a brand.Choose different letters.
ORBIT_TURNED_OFF403You used a tool that you switched off with its enabled setting.Send {"enabled": true} to the tool's settings address, or switch it on in the dashboard.
SAFEGUARD_TURNED_OFF403You used a tool that you switched off with its enabled setting.Send {"enabled": true} to the tool's settings address, or switch it on in the dashboard.
ASK_TURNED_OFF403You used a tool that you switched off with its enabled setting.Send {"enabled": true} to the tool's settings address, or switch it on in the dashboard.
PIXEL_TRACE_TURNED_OFF403You used a tool that you switched off with its enabled setting.Send {"enabled": true} to the tool's settings address, or switch it on in the dashboard.

Words used on this page

  • Shop: one of your business's shops, with its own settings, listing fields, documents and usage. The API calls it a shop and its id marketplaceId.
  • Setting: a value you choose that changes how a tool behaves for a shop.
  • Null: JSON's word for nothing. Sending null for a setting puts it back to its default.
  • Verdict: your own name for a part of Safeguard's 0 to 10 scale, such as Looks good.
  • Zero retention: keeping nothing after the work is done.