{"templateId":"../@theme/Templates/BlogWithAuthors","sharedDataIds":{"sidebar":"sidebar-blog/sidebars.yaml"},"props":{"metadata":{"markdoc":{"tagList":[]},"type":"markdown"},"seo":{"title":"Why this matters","description":"Developer documentation for the Caraer platform. REST API reference, Bearer authentication, tutorials, and guides for records, forms, webpages, webhooks, and automations.","llmstxt":{"hide":false,"sections":[{"title":"Table of contents","includeFiles":["**/*"],"excludeFiles":[]}],"excludeFiles":[]}},"dynamicMarkdocComponents":[],"compilationErrors":[],"ast":{"$$mdtype":"Tag","name":"article","attributes":{},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["This guide explains how to create properties through the API and what happens"," ","when multiple objects use a property with the same name."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"why-this-matters","__idx":0},"children":["Why this matters"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Properties define the schema for your objects: field types, validation rules,"," ","select options, and display metadata. In Caraer, a property is ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["not owned by a"," ","single object"]},". The same property definition can be attached to many objects,"," ","so you can reuse common fields like ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["email"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["firstname"]},", or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["status"]}," without"," ","duplicating configuration."]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"how-properties-relate-to-objects","__idx":1},"children":["How properties relate to objects"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Each property has:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Shared definition"]}," — applies everywhere the property is used: ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["name"]},","," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["label"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["type"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["format"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["rules"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["options"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["indexed"]},", and related"," ","settings."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Per-object settings"]}," — configured separately for each object the property"," ","is attached to: ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["group"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["hidden"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["index"]},", and archive state (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["deletedAt"]},","," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["deletedBy"]},")."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["When you fetch properties for an object, the API returns the combined view:"," ","shared definition plus that object's settings."]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"endpoint-map","__idx":2},"children":["Endpoint map"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["All property routes are scoped to an object:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST /api/v2/objects/{objectUuid}/properties"]}," — create (or attach) a property"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["PUT /api/v2/objects/{objectUuid}/properties/{propertyUuid}"]}," — update"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["GET /api/v2/objects/{objectUuid}/properties/{propertyUuid}"]}," — fetch one"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST /api/v2/objects/{objectUuid}/properties/index"]}," — list with pagination"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["PUT /api/v2/objects/{objectUuid}/properties/updateIndices"]}," — reorder fields"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["DELETE /api/v2/objects/{objectUuid}/properties/{propertyUuid}"]}," — archive"," ","for this object"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST /api/v2/objects/{objectUuid}/properties/{propertyUuid}/restore"]}," —"," ","restore an archived property on this object"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["DELETE /api/v2/objects/{objectUuid}/properties/{propertyUuid}/permanent"]}," —"," ","permanently remove an archived property from this object (and delete the"," ","property entirely if no other object uses it)"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["GET /api/v2/objects/{objectUuid}/properties/formats"]}," — list available formats"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["GET /api/v2/objects/{objectUuid}/properties/calculation-types"]}," — calculation"," ","types per property type"]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Write operations require the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["tools.objects.schemas.write"]}," scope. Delete and"," ","restore require ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["tools.objects.schemas.delete"]},"."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["{objectUuid}"]}," accepts either the object UUID or its internal name (for example"," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["candidate"]},")."]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"step-1-create-a-property-on-an-object","__idx":3},"children":["Step 1: Create a property on an object"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"curl -X POST \"https://your-company.caraer.com/api/v2/objects/candidate/properties\" \\\n  -H \"Authorization: Bearer YOUR_ACCESS_TOKEN\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n    \"name\": \"email\",\n    \"label\": \"Email address\",\n    \"description\": \"Primary contact email\",\n    \"type\": \"string\",\n    \"format\": \"email\",\n    \"rules\": [\"required\"],\n    \"group\": \"Contact details\",\n    \"hidden\": false,\n    \"indexed\": true\n  }'\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Required fields:"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Field"},"children":["Field"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Notes"},"children":["Notes"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["name"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Lowercase, letters/numbers/underscores only. Stable internal key."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["label"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Human-readable label shown in the UI."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["type"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["One of ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["string"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["number"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["date"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["single-select"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["multi-select"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["file"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["tag"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["structure"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["linked-property"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["checkbox"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["range"]},"."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["format"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Must match the chosen type (for example ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["email"]}," or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["single-line"]}," for ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["string"]},"). Use ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["GET .../properties/formats"]}," for the full list."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["rules"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Array of validation rule strings (for example ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["required"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["unique"]},")."]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Common optional fields:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["description"]}," — max 255 characters"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["options"]}," — required for select types; each option needs a unique ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["name"]}," and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["label"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["group"]}," — form/view grouping for this object"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["hidden"]}," — hide on forms for this object (default ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["false"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["indexed"]}," — enable faster filtering on this property (default ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["false"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["formatSettings"]}," — format-specific configuration (for example linked-property targets)"]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"visibility-and-behavior-flags","__idx":4},"children":["Visibility and behavior flags"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["These fields control how a property is exposed and how clients should treat it."," ","They are part of the ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["shared property definition"]},", so they apply everywhere"," ","the property is attached."]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Field"},"children":["Field"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Default"},"children":["Default"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"What it does"},"children":["What it does"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["nonPublic"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["false"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Restricts access for ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["App/API token"]}," authentication. Even when a token has record read or write scopes for the object, it cannot read or write this property. Use for internal-only fields that integrations should not touch."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["editable"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["true"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Controls whether the ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["property schema"]}," can be changed. When ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["false"]},", the property definition is locked — updates through ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["PUT .../properties/{propertyUuid}"]}," are not allowed. This does not affect whether record values can be written."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["immutable"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["false"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Marks the property as ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["platform-managed"]},". Record values for this field cannot be edited through the records API — Caraer sets and maintains them through system logic or relations. Automatically enabled for ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["linked-property"]}," fields."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["webpagePublic"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["false"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Allows the property value to be included when a record is returned through ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["public webpage"]}," endpoints. Properties without this flag are omitted from public webpage responses."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["embeddable"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["false"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Includes the property value when Caraer builds a ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["semantic search embedding"]}," for the record after create or update. Useful on text-like fields you want discoverable through AI-powered search."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["icon"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["null"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Optional icon name (Font Awesome style, for example ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["envelope"]}," or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["user"]},") shown in forms, views, and filters in the Caraer UI. Does not affect record API behavior."]}]}]}]}]},{"$$mdtype":"Tag","name":"blockquote","attributes":{},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Note:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["editable"]}," and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["immutable"]}," apply at different levels. ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["editable"]}," ","locks the property ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["schema"]}," (type, label, rules, and so on). ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["immutable"]}," ","locks ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["record values"]}," for that field. A property can be schema-editable"," ","but still have immutable record values, or vice versa."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Example with flags set:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"curl -X POST \"https://your-company.caraer.com/api/v2/objects/candidate/properties\" \\\n  -H \"Authorization: Bearer YOUR_ACCESS_TOKEN\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n    \"name\": \"internal_notes\",\n    \"label\": \"Internal notes\",\n    \"type\": \"string\",\n    \"format\": \"multi-line\",\n    \"rules\": [],\n    \"nonPublic\": true,\n    \"editable\": true,\n    \"webpagePublic\": false,\n    \"embeddable\": true,\n    \"icon\": \"note-sticky\"\n  }'\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["What happens on create:"]},{"$$mdtype":"Tag","name":"ol","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Caraer looks up an existing property by ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["name"]},"."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["If one exists, the same property UUID is reused. If not, a new property is"," ","created."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["The property is attached to the object (or restored if it was previously"," ","archived on that object)."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Per-object settings (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["group"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["hidden"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["index"]},") are saved for this object."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["If ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["indexed"]}," is ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["true"]},", the property is indexed for faster queries on this"," ","object."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["The property may be added to the object's default view (when it has fewer"," ","than 10 visible columns)."]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"how-sharing-works-when-names-match","__idx":5},"children":["How sharing works when names match"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Property names are ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["globally unique"]}," within your company. There is one"," ","property definition per name, not one per object."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"attaching-an-existing-property-to-another-object","__idx":6},"children":["Attaching an existing property to another object"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Create the same property name on a second object:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"curl -X POST \"https://your-company.caraer.com/api/v2/objects/vacancy/properties\" \\\n  -H \"Authorization: Bearer YOUR_ACCESS_TOKEN\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n    \"name\": \"email\",\n    \"label\": \"Email address\",\n    \"type\": \"string\",\n    \"format\": \"email\",\n    \"rules\": [],\n    \"group\": \"Recruiter contact\"\n  }'\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Because ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["email"]}," already exists, Caraer:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Reuses the same property UUID"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Attaches it to ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["vacancy"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Saves object-specific ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["group"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["hidden"]},", and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["index"]}," for ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["vacancy"]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Both objects now expose an ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["email"]}," field, backed by the same property"," ","definition."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"what-is-shared-vs-per-object","__idx":7},"children":["What is shared vs per-object"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Concern"},"children":["Concern"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Shared across objects"},"children":["Shared across objects"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Per object"},"children":["Per object"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["name"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Yes — one name globally"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["—"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["type"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["format"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Yes"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["—"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["rules"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["options"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Yes"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["—"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["label"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["description"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Yes"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["—"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["indexed"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Yes"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["—"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["nonPublic"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["editable"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["immutable"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["webpagePublic"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["embeddable"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["icon"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Yes"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["—"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["group"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["hidden"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["index"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["—"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Yes"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Archive (soft delete)"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["—"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Yes (per object)"]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Practical implication: updating ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["options"]}," on a shared select property affects"," ","every object that uses it. Changing ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["group"]}," or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["hidden"]}," only affects the object"," ","you update."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"type-and-format-must-match","__idx":8},"children":["Type and format must match"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["If a property name already exists, the new create request must use the ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["same"," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["type"]}," and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["format"]}]},". Otherwise validation fails with an error like:"]},{"$$mdtype":"Tag","name":"blockquote","attributes":{},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["A property with the same name already exists — change the type to … and"," ","format to …"]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["You cannot create ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["email"]}," as a ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["string"]},"/",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["email"]}," on one object and as a"," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["single-select"]}," on another."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Reserved names (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["name"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["externalUuid"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["createdAt"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["updatedAt"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["uuid"]},") cannot"," ","be created manually."]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"step-2-update-a-property","__idx":9},"children":["Step 2: Update a property"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Updates go through the property UUID:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"curl -X PUT \"https://your-company.caraer.com/api/v2/objects/candidate/properties/PROPERTY_UUID\" \\\n  -H \"Authorization: Bearer YOUR_ACCESS_TOKEN\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n    \"name\": \"email\",\n    \"label\": \"Work email\",\n    \"type\": \"string\",\n    \"format\": \"email\",\n    \"rules\": [\"required\", \"unique\"]\n  }'\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Immutable after creation:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["name"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["type"]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["format"]}," is validated on create; treat it as fixed once records exist."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["When you change shared fields (label, rules, options), all objects using that"," ","property see the change. Send object-specific fields like ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["group"]}," or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["hidden"]}," in"," ","the same request to update only that object's settings."]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"step-3-remove-a-property-from-an-object","__idx":10},"children":["Step 3: Remove a property from an object"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Archiving removes the property from one object's schema only:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"curl -X DELETE \"https://your-company.caraer.com/api/v2/objects/candidate/properties/PROPERTY_UUID\" \\\n  -H \"Authorization: Bearer YOUR_ACCESS_TOKEN\"\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["The property definition remains if other objects still use it."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Existing values on ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["candidate"]}," records are not automatically cleared; the"," ","field is removed from the schema for that object."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Restore with ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST .../properties/{propertyUuid}/restore"]},"."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Permanent delete removes the archived property from this object. If no other"," ","object uses the property, it is deleted entirely and values are removed from"," ","records on all affected objects."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["System properties (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["name"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["label"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["createdAt"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["updatedAt"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["deletedAt"]},","," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["uuid"]},") cannot be deleted."]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"property-types-and-formats-quick-reference","__idx":11},"children":["Property types and formats (quick reference)"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Type"},"children":["Type"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Example formats"},"children":["Example formats"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["string"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["single-line"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["multi-line"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["email"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["phone"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["url"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["number"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["number"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["currency"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["date"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["date"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["single-select"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["single-select"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["multi-select"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["multi-select"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["checkbox"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["single-checkbox"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["file"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["file"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["tag"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["tag"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["structure"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["structure"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["linked-property"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["linked-property"]}," (read-only; value comes from a related record)"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["range"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["number-range"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["currency-range"]}]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Use ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["GET /api/v2/objects/{objectUuid}/properties/formats"]}," for the authoritative"," ","list in your environment."]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"design-guidelines","__idx":12},"children":["Design guidelines"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Reuse intentionally."]}," Shared names mean shared validation, options, and"," ","labels. Use the same name when fields truly represent the same concept"," ","(",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["email"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["firstname"]},"). Use distinct names when semantics differ (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["status_candidate"]}," ","vs ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["status_vacancy"]},")."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Plan names early."]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["name"]}," and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["type"]}," are immutable; renaming effectively"," ","means migrating data to a new property."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Index for query paths."]}," Set ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["indexed: true"]}," only on properties you filter"," ","or sort on frequently."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Scope deletes carefully."]}," Archiving a shared property on one object does"," ","not affect others; permanently deleting it while other objects still use it"," ","is blocked."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Align integrations on ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["name"]},"."]}," Record APIs address values by property"," ","name, not UUID. Shared names behave the same across objects, but values live"," ","on each record independently."]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"common-pitfalls","__idx":13},"children":["Common pitfalls"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Creating the same name with a different type/format on another object."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Expecting different select options per object while reusing one property name."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Assuming archive on one object removes the property everywhere."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Trying to update a property schema when ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["editable"]}," is ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["false"]},"."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Sending values for ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["immutable"]}," or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["linked-property"]}," fields on record create/update."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Setting ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["nonPublic: false"]}," and expecting App/API tokens to read sensitive fields without explicit property scopes."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Removing select options that are still used in existing records."]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"related-reading","__idx":14},"children":["Related reading"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"a","attributes":{"href":"/blog/2026-03-25-caraer-data-model-object-property-relation"},"children":["Caraer data model: Object, Property, Relation"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"a","attributes":{"href":"/blog/2026-03-25-save-records"},"children":["Save records"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"a","attributes":{"href":"/blog/2026-03-25-save-records#how-to-submit-values-by-property-type-and-format"},"children":["How to submit values by property type and format"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"a","attributes":{"href":"/blog/2026-03-25-fetch-records-and-filtering-guide"},"children":["Fetch records and filtering guide"]}]}]}]},"headings":[{"value":"Why this matters","id":"why-this-matters","depth":2},{"value":"How properties relate to objects","id":"how-properties-relate-to-objects","depth":2},{"value":"Endpoint map","id":"endpoint-map","depth":2},{"value":"Step 1: Create a property on an object","id":"step-1-create-a-property-on-an-object","depth":2},{"value":"Visibility and behavior flags","id":"visibility-and-behavior-flags","depth":3},{"value":"How sharing works when names match","id":"how-sharing-works-when-names-match","depth":2},{"value":"Attaching an existing property to another object","id":"attaching-an-existing-property-to-another-object","depth":3},{"value":"What is shared vs per-object","id":"what-is-shared-vs-per-object","depth":3},{"value":"Type and format must match","id":"type-and-format-must-match","depth":3},{"value":"Step 2: Update a property","id":"step-2-update-a-property","depth":2},{"value":"Step 3: Remove a property from an object","id":"step-3-remove-a-property-from-an-object","depth":2},{"value":"Property types and formats (quick reference)","id":"property-types-and-formats-quick-reference","depth":2},{"value":"Design guidelines","id":"design-guidelines","depth":2},{"value":"Common pitfalls","id":"common-pitfalls","depth":2},{"value":"Related reading","id":"related-reading","depth":2}],"frontmatter":{"title":"Create and share properties","authors":["sem_tadema"],"tags":["documentation","api","schema"],"template":"../@theme/Templates/BlogWithAuthors","seo":{"title":"Why this matters"}},"lastModified":"2026-06-07T14:19:40.000Z","pagePropGetterError":{"message":"","name":""}},"slug":"/blog/2026-06-07-create-and-share-properties","userData":{"isAuthenticated":false,"teams":["anonymous"]},"isPublic":true}