@epilot/entity-client 4.7.2 → 4.7.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/definition.js +1 -1
- package/dist/index.js +5 -1
- package/dist/openapi.d.ts +29 -94
- package/dist/openapi.json +2 -61
- package/dist/schema-model.d.ts +2 -2
- package/package.json +3 -2
package/dist/definition.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
!function(e,t){for(var i in t)e[i]=t[i];t.__esModule&&Object.defineProperty(e,"__esModule",{value:!0})}(exports,(()=>{"use strict";var e={914:function(e,t,i){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=n(i(279));t.default=a.default},279:e=>{e.exports=JSON.parse('{"openapi":"3.0.2","info":{"title":"Entity API","version":"1.0.0","description":"Flexible data layer for epilot Entities.\\n\\nUse this API configure and access your business objects like Contacts, Opportunities and Products.\\n\\n[Feature Documentation](https://docs.epilot.io/docs/entities/flexible-entities)\\n"},"tags":[{"name":"Schemas","description":"Model Entities"},{"name":"Entities","description":"CRUD Access for Entities"},{"name":"Relations","description":"Entity Relationships"},{"name":"Activity","description":"Entity Events"},{"name":"Export","description":"Export and Import entities via files"},{"name":"Saved Views","description":"Saved Views for Entities"},{"name":"Taxonomy","description":"Entity classification with Taxonomies"}],"security":[{"EpilotAuth":[]},{"EpilotOrg":[]}],"paths":{"/v1/entity/schemas":{"get":{"operationId":"listSchemas","summary":"listSchemas","description":"Get the latest versions of all schemas","parameters":[{"in":"query","name":"unpublished","description":"Return unpublished draft schemas","schema":{"type":"boolean","default":false}}],"tags":["Schemas"],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"results":{"type":"array","items":{"$ref":"#/components/schemas/EntitySchemaItem"}}}}}}}}}},"/v1/entity/schemas/{slug}":{"get":{"operationId":"getSchema","summary":"getSchema","description":"By default gets the latest version of the Schema and to get the specific version of schema pass the id.","tags":["Schemas"],"parameters":[{"in":"path","name":"slug","required":true,"schema":{"$ref":"#/components/schemas/EntitySlug"}},{"in":"query","name":"id","schema":{"$ref":"#/components/schemas/SchemaId"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EntitySchemaItem"}}}}}},"put":{"operationId":"putSchema","summary":"putSchema","description":"Create or update a schema with a new version","tags":["Schemas"],"parameters":[{"in":"path","name":"slug","required":true,"schema":{"$ref":"#/components/schemas/EntitySlug"}},{"in":"query","name":"draft","schema":{"default":false,"type":"boolean"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EntitySchema"}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EntitySchemaItem"}}}}}},"delete":{"operationId":"deleteSchema","summary":"deleteSchema","description":"Delete a schema, or a specific version of a schema","tags":["Schemas"],"parameters":[{"in":"path","name":"slug","required":true,"schema":{"$ref":"#/components/schemas/EntitySlug"}}],"responses":{"204":{"description":"Success"}}}},"/v1/entity/schemas/{slug}/versions":{"get":{"operationId":"getSchemaVersions","summary":"getSchemaVersions","description":"Get all versions of this schema ordered by the latest versions including drafts.","tags":["Schemas"],"parameters":[{"in":"path","name":"slug","required":true,"schema":{"$ref":"#/components/schemas/EntitySlug"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"versions":{"type":"array","items":{"$ref":"#/components/schemas/EntitySchemaItem"}},"drafts":{"type":"array","items":{"$ref":"#/components/schemas/EntitySchemaItem"}}}}}}}}}},"/v1/entity/schemas/blueprints":{"get":{"operationId":"listSchemaBlueprints","summary":"listSchemaBlueprints","description":"List canonical versions of all available schemas","tags":["Schemas"],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"results":{"type":"array","items":{"$ref":"#/components/schemas/EntitySchemaItem"}}}}}}}}}},"/v1/entity/schemas/{slug}/taxonomy/{taxonomySlug}":{"get":{"operationId":"listTaxonomyClassificationsForSchema","summary":"listTaxonomyClassificationsForSchema","description":"List taxonomy classifications for a given schema","tags":["Schemas"],"parameters":[{"in":"path","name":"slug","required":true,"schema":{"$ref":"#/components/schemas/EntitySlug"}},{"in":"path","name":"taxonomySlug","required":true,"schema":{"$ref":"#/components/schemas/TaxonomySlug"}},{"in":"query","name":"query","schema":{"type":"string"}},{"in":"query","name":"size","schema":{"type":"number"}}],"responses":{"200":{"description":"List of taxonomy classifications","content":{"application/json":{"schema":{"type":"object","properties":{"results":{"type":"array","items":{"$ref":"#/components/schemas/TaxonomyClassification"}}}}}}}}}},"/v1/entity:search":{"post":{"operationId":"searchEntities","summary":"searchEntities","description":"Search for entities. Supports ordering and pagination. Lucene query syntax supported for complex querying.\\n\\nPassing comma-separated `x-epilot-org-id` is supported for cross-org entity search.\\n\\n## Relations\\n\\nWhen `hydrate=true`, relation attributes are replaced in-place with nested entity values.\\n\\nExample:\\n```json\\n{\\n \\"_id\\": \\"123\\",\\n \\"name\\": \\"parent\\",\\n \\"_tags\\": [\\"parent\\"],\\n \\"contacts\\": {\\n \\"$relation\\": [\\n { \\"entity_id\\": \\"456\\", \\"_tags\\": [\\"primary\\"] },\\n { \\"entity_id\\": \\"789\\", \\"_tags\\": [\\"secondary\\"] },\\n ]\\n },\\n \\"addresses\\": {\\n \\"$relation_ref\\": [\\n { \\"entity_id\\": \\"123\\", \\"_tags\\": [\\"primary\\"], \\"path\\": \\"address.0\\" },\\n { \\"entity_id\\": \\"234\\", \\"_tags\\": [\\"secondary\\"], \\"path\\": \\"address.0\\" },\\n ]\\n }\\n}\\n```\\n\\nBecomes:\\n```json\\n{\\n \\"_id\\": \\"123\\",\\n \\"name\\": \\"parent\\",\\n \\"_tags\\": [\\"parent\\"],\\n \\"contacts\\": [\\n {\\n \\"$relation\\": { \\"entity_id\\": \\"456\\", \\"_tags\\": [\\"primary\\"] },\\n \\"_id\\": \\"456\\",\\n \\"name\\": \\"child 1\\",\\n \\"_tags\\": [\\"child\\"]\\n },\\n {\\n \\"$relation\\": { \\"entity_id\\": \\"789\\", \\"_tags\\": [\\"secondary\\"] },\\n \\"_id\\": \\"789\\",\\n \\"name\\": \\"child 2\\",\\n \\"_tags\\": [\\"child\\"]\\n }\\n ],\\n \\"addresses\\": [\\n {\\n \\"$relation_ref\\": { \\"entity_id\\": \\"123\\", \\"_tags\\": [\\"primary\\"], \\"path\\": \\"address.0\\" },\\n \\"_id\\": \\"123\\",\\n \\"address\\": \\"address 1\\",\\n \\"_tags\\": [\\"child\\"]\\n },\\n {\\n \\"$relation_ref\\": { \\"entity_id\\": \\"234\\", \\"_tags\\": [\\"secondary\\"], \\"path\\": \\"address.0\\" },\\n \\"_id\\": \\"234\\",\\n \\"address\\": \\"address 2\\",\\n \\"_tags\\": [\\"child\\"]\\n }\\n ]\\n}\\n```\\n","tags":["Entities"],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EntitySearchParams"}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EntitySearchResults"}},"text/csv":{"schema":{"type":"string"}}}}}}},"/v1/entity/{slug}":{"post":{"operationId":"createEntity","summary":"createEntity","description":"Creates a new entity using a key.\\n\\n## Activity\\n\\nIf no `activity_id` query parameter is provided, implicitly creates Activity of type `EntityCreated`\\n\\n## Relations\\n\\nTo create a relation, store a property object that defines a `$relation` array.\\n\\nExample:\\n\\n```json\\n{\\n \\"contacts\\": {\\n \\"$relation\\": [\\n { \\"entity_id\\": \\"3fa85f64-5717-4562-b3fc-2c963f66afa6\\" }\\n ]\\n }\\n}\\n```\\n\\nThe items in `$relation` support two properties:\\n- `entity_id` - The ID of the entity to link\\n- `_tags` - Tags or labels for the relation (optional)\\n","tags":["Entities"],"parameters":[{"in":"path","name":"slug","description":"Entity Schema","required":true,"schema":{"$ref":"#/components/schemas/EntitySlug"}},{"in":"query","name":"activity_id","description":"Activity to include in event feed","required":false,"schema":{"$ref":"#/components/schemas/ActivityId"}},{"in":"query","name":"async","description":"Don\'t wait for updated entity to become available in Search API. Useful for large migrations","required":false,"schema":{"type":"boolean","default":false}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Entity"},"examples":{"contact":{"$ref":"#/components/examples/ContactEntity"},"account":{"$ref":"#/components/examples/AccountEntity"},"product":{"$ref":"#/components/examples/ProductEntity"},"price":{"$ref":"#/components/examples/PriceEntity"},"tax":{"$ref":"#/components/examples/TaxEntity"},"order":{"$ref":"#/components/examples/OrderEntity"},"opportunity":{"$ref":"#/components/examples/OpportunityEntity"},"email template":{"$ref":"#/components/examples/EmailTemplateEntity"},"file":{"$ref":"#/components/examples/FileEntity"},"workflow step":{"$ref":"#/components/examples/WorkflowStepEntity"},"submission":{"$ref":"#/components/examples/SubmissionEntity"}}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EntityItem"}}}}}}},"/v1/entity/{slug}:upsert":{"patch":{"operationId":"upsertEntity","summary":"upsertEntity","description":"Create or update an entity using `unique_key`\\n\\n- If no entities are matched, a new entity is created.\\n- If exactly one entity is matched, a `PATCH`-style update is applied to the existing entity.\\n- If more than one entity is matched a `409` Error is returned\\n\\n## Activity\\n\\nIf no `activity_id` query parameter is provided, implicitly creates Activity of type `EntityCreated` or `EntityUpdated`\\n","tags":["Entities"],"parameters":[{"in":"path","name":"slug","description":"Entity Schema","required":true,"schema":{"$ref":"#/components/schemas/EntitySlug"}},{"in":"query","name":"activity_id","description":"Activity to include in event feed","required":false,"schema":{"$ref":"#/components/schemas/ActivityId"}},{"in":"query","name":"dry_run","description":"Dry Run mode = return matched entities but don\'t update them.","required":false,"schema":{"type":"boolean","default":false}},{"in":"query","name":"async","description":"Don\'t wait for updated entity to become available in Search API. Useful for large migrations","required":false,"schema":{"type":"boolean","default":false}}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"unique_key":{"type":"array","items":{"type":"string","example":"email.0.email"},"example":["_id"]},"entity":{"$ref":"#/components/schemas/Entity"}},"required":["unique_key","entity"]}}}},"responses":{"200":{"description":"Entity was updated","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EntityItem"}}}},"201":{"description":"Entity was created","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EntityItem"}}}},"409":{"description":"Conflict: multiple entities were matched with `unique_key`"}}}},"/v1/entity/{slug}/{id}":{"get":{"operationId":"getEntity","summary":"getEntity","description":"Gets Entity and relations by id.\\n\\n## Relations\\n\\nWhen `hydrate=true`, relation attributes are replaced in-place with nested entity values.\\n\\nExample:\\n```json\\n{\\n \\"_id\\": \\"123\\",\\n \\"name\\": \\"parent\\",\\n \\"_tags\\": [\\"parent\\"],\\n \\"contacts\\": {\\n \\"$relation\\": [\\n { \\"entity_id\\": \\"456\\", \\"_tags\\": [\\"primary\\"] },\\n { \\"entity_id\\": \\"789\\", \\"_tags\\": [\\"secondary\\"] },\\n ]\\n },\\n \\"addresses\\": {\\n \\"$relation_ref\\": [\\n { \\"entity_id\\": \\"123\\", \\"_tags\\": [\\"primary\\"], \\"path\\": \\"address.0\\" },\\n { \\"entity_id\\": \\"234\\", \\"_tags\\": [\\"secondary\\"], \\"path\\": \\"address.0\\" },\\n ]\\n }\\n}\\n```\\n\\nBecomes:\\n```json\\n{\\n \\"_id\\": \\"123\\",\\n \\"name\\": \\"parent\\",\\n \\"_tags\\": [\\"parent\\"],\\n \\"contacts\\": [\\n {\\n \\"$relation\\": { \\"entity_id\\": \\"456\\", \\"_tags\\": [\\"primary\\"] },\\n \\"_id\\": \\"456\\",\\n \\"name\\": \\"child 1\\",\\n \\"_tags\\": [\\"child\\"]\\n },\\n {\\n \\"$relation\\": { \\"entity_id\\": \\"789\\", \\"_tags\\": [\\"secondary\\"] },\\n \\"_id\\": \\"789\\",\\n \\"name\\": \\"child 2\\",\\n \\"_tags\\": [\\"child\\"]\\n }\\n ],\\n \\"addresses\\": [\\n {\\n \\"$relation_ref\\": { \\"entity_id\\": \\"123\\", \\"_tags\\": [\\"primary\\"], \\"path\\": \\"address.0\\" },\\n \\"_id\\": \\"123\\",\\n \\"address\\": \\"address 1\\",\\n \\"_tags\\": [\\"child\\"]\\n },\\n {\\n \\"$relation_ref\\": { \\"entity_id\\": \\"234\\", \\"_tags\\": [\\"secondary\\"], \\"path\\": \\"address.0\\" },\\n \\"_id\\": \\"234\\",\\n \\"address\\": \\"address 2\\",\\n \\"_tags\\": [\\"child\\"]\\n }\\n ]\\n}\\n```\\n","tags":["Entities"],"parameters":[{"in":"path","name":"slug","description":"Entity Type","required":true,"schema":{"$ref":"#/components/schemas/EntitySlug"}},{"in":"path","name":"id","description":"Entity id","required":true,"schema":{"$ref":"#/components/schemas/EntityId"}},{"in":"query","name":"hydrate","description":"When true, enables entity hydration to resolve nested $relation & $relation_ref references in-place.","schema":{"default":false,"type":"boolean"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"entity":{"$ref":"#/components/schemas/EntityItem"},"relations":{"type":"array","items":{"$ref":"#/components/schemas/EntityItem"}}}}}}}}},"put":{"operationId":"updateEntity","summary":"updateEntity","description":"Updates an Entity\\n\\n## Activity\\n\\nIf no `activity_id` query parameter is provided, implicitly creates Activity of type `EntityUpdated`\\n\\n## Relations\\n\\nTo create a relation, store a property that defines a `$relation` array.\\n\\nExample:\\n\\n```json\\n{\\n \\"contacts\\": {\\n \\"$relation\\": [\\n { \\"entity_id\\": \\"3fa85f64-5717-4562-b3fc-2c963f66afa6\\" }\\n ]\\n }\\n}\\n```\\n\\nThe items in `$relation` support two properties:\\n- `entity_id` - The ID of the entity to link\\n- `_tags` - Tags or labels for the relation (optional)\\n","tags":["Entities"],"parameters":[{"in":"path","name":"slug","description":"Entity Type","required":true,"schema":{"$ref":"#/components/schemas/EntitySlug"}},{"in":"path","name":"id","description":"Entity id","required":true,"schema":{"$ref":"#/components/schemas/EntityId"}},{"in":"query","name":"activity_id","description":"Activity to include in event feed","required":false,"schema":{"$ref":"#/components/schemas/ActivityId"}},{"in":"query","name":"async","description":"Don\'t wait for updated entity to become available in Search API. Useful for large migrations","required":false,"schema":{"type":"boolean","default":false}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Entity"},"example":{}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EntityItem"}}}}}},"delete":{"operationId":"deleteEntity","summary":"deleteEntity","description":"Deletes an Entity\\n\\n## Activity\\n\\nIf no `activity_id` query parameter is provided, implicitly creates Activity of type `EntityDeleted`\\n","tags":["Entities"],"parameters":[{"in":"path","name":"slug","description":"Entity Type","required":true,"schema":{"$ref":"#/components/schemas/EntitySlug"}},{"in":"path","name":"id","required":true,"schema":{"$ref":"#/components/schemas/EntityId"}},{"in":"query","name":"activity_id","description":"Activity to include in event feed","required":false,"schema":{"$ref":"#/components/schemas/ActivityId"}}],"responses":{"200":{"description":"Success"}}}},"/v1/entity:autocomplete":{"get":{"operationId":"autocomplete","summary":"autocomplete","description":"Autocomplete entity attributes\\n","tags":["Entities"],"parameters":[{"name":"input","in":"query","description":"Input to autocomplete","schema":{"type":"string"}},{"name":"attribute","in":"query","description":"Autocomplete attribute","schema":{"type":"string","example":"_tags"},"required":true},{"name":"slug","in":"query","description":"Limit results to entity schema","schema":{"$ref":"#/components/schemas/EntitySlug"}},{"name":"size","in":"query","description":"Maximum number of results to return","schema":{"type":"integer","default":10,"minimum":1,"maximum":250}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"hits":{"type":"number","example":1},"results":{"type":"array","items":{"anyOf":[{"type":"string"},{"type":"boolean"},{"type":"object","additionalProperties":true}]},"example":["value"]}}}}}}}}},"/v1/entity/activity":{"post":{"operationId":"createActivity","summary":"createActivity","description":"Create an activity that can be displayed in activity feeds.\\n\\n- All activites are published as events on the event bus\\n- Entity mutations are always part of an activity\\n","tags":["Activity"],"parameters":[{"in":"query","name":"entities","description":"Comma-separated list of entities which the activity primarily concerns","style":"form","explode":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/EntityId"}}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Activity"}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ActivityItem"}}}}}}},"/v1/entity/activity/{id}":{"get":{"operationId":"getActivity","summary":"getActivity","description":"Get activity by id","tags":["Activity"],"parameters":[{"in":"path","name":"id","description":"Activity Id","required":true,"schema":{"$ref":"#/components/schemas/ActivityId"}},{"in":"query","name":"operations_size","description":"Maximum number of operations to include in response (default: 10)\\n","schema":{"type":"integer","minimum":0,"maximum":1000,"default":25}},{"in":"query","name":"operations_from","description":"Pagination offset for operations\\n","schema":{"type":"integer","minimum":0,"default":0}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ActivityItem"}}}}}}},"/v1/entity/activity/{id}:attach":{"post":{"operationId":"attachActivity","summary":"attachActivity","description":"Attach existing activity to entity activity feeds","tags":["Activity"],"parameters":[{"in":"path","name":"id","description":"Activity Id","required":true,"schema":{"$ref":"#/components/schemas/ActivityId"}},{"in":"query","name":"entities","description":"Comma-separated list of entities which the activity primarily concerns","style":"form","explode":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/EntityId"}}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ActivityItem"}}}}}}},"/v1/entity/{slug}/{id}/activity":{"get":{"operationId":"getEntityActivityFeed","summary":"getEntityActivityFeed","description":"Get activity feed for an entity\\n","tags":["Activity"],"parameters":[{"in":"path","name":"slug","description":"Entity Type","required":true,"schema":{"$ref":"#/components/schemas/EntitySlug"}},{"in":"path","name":"id","description":"Entity id","required":true,"schema":{"$ref":"#/components/schemas/EntityId"}},{"in":"query","name":"after","description":"Get activities after this timestamp","schema":{"type":"string","format":"date-time"}},{"in":"query","name":"before","description":"get activities before this timestamp","schema":{"type":"string","format":"date-time"}},{"in":"query","name":"from","description":"start from page","schema":{"type":"integer","minimum":0,"default":0}},{"in":"query","name":"size","description":"max number of results to return","schema":{"type":"integer","minimum":1,"default":25}},{"in":"query","name":"type","description":"Activity type","schema":{"type":"string","example":"SyncActivity"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"total":{"type":"integer","example":1},"results":{"type":"array","items":{"$ref":"#/components/schemas/ActivityItem"}}}}}}}}}},"/v1/entity/{slug}/{id}/relations":{"get":{"operationId":"getRelations","summary":"getRelations","description":"Returns 1st level direct relations for an entity.\\n\\nYou can control whether to return the full entity or just the relation item with the `?hydrate` query param.\\n\\nReverse relations i.e. entities referring to this entity are included with the `?include_reverse` query param.\\n","tags":["Relations"],"parameters":[{"in":"path","name":"slug","description":"Entity Type","required":true,"schema":{"$ref":"#/components/schemas/EntitySlug"}},{"in":"path","name":"id","description":"Entity id","required":true,"schema":{"$ref":"#/components/schemas/EntityId"}},{"in":"query","name":"hydrate","description":"When true, expand relation items with full blown entities.","schema":{"default":false,"type":"boolean"}},{"in":"query","name":"include_reverse","description":"When true, includes reverse relations in response (other entities pointing to this entity)","schema":{"default":false,"type":"boolean"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetRelationsResp"},"example":[{"attribute":"contacts","entity_id":"ed27830b-984c-4bca-9b87-2849bb5789ca","_tags":["primary","billing"]},{"attribute":"contacts","entity_id":"fadfc950-6e43-4e38-bae0-ffcf4b8b90e1"},{"_id":"9924c4de-d3ed-4752-821d-fc0b9bd57c1b","order_number":"a34234jd","customer_email":"johndoe@epilot.cloud","billing_first_name":"john","billing_last_name":"doe","billing_company_name":"ePilot Gmbh","billing_vat":"234823948,","billing_email":"johndoe@nowhere.com","billing_phone":"1234234545,","billing_address":"wallstreet, 1","billing_contact":"villy or zilly","$relation":{"attribute":"orders","entity_id":"9924c4de-d3ed-4752-821d-fc0b9bd57c1b","_tags":["solar_panel","one_time"]}}]}}}}},"post":{"operationId":"addRelations","summary":"addRelations","description":"Relates one or more entities to parent entity by adding items to a relation attribute","tags":["Relations"],"parameters":[{"in":"path","name":"slug","description":"Entity Type","required":true,"schema":{"$ref":"#/components/schemas/EntitySlug"}},{"in":"path","name":"id","description":"Entity id","required":true,"schema":{"$ref":"#/components/schemas/EntityId"}},{"in":"query","name":"async","description":"Don\'t wait for updated entity to become available in Search API. Useful for large migrations","required":false,"schema":{"type":"boolean","default":false}}],"requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/RelationItem"}},"example":[{"attribute":"contacts","entity_id":"e8878f62-2d3d-4c86-bfe7-01a4180ff048","_tags":["billing"]},{"attribute":"contacts","entity_id":"ee8a2af9-fb36-4981-b848-4e65275851af"},{"attribute":"opportunities","entity_id":"30990430-a53d-41a2-83db-2de072dc4dd4"}]}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RelationItem"}}}}}}},"/v1/entity/{slug}/{id}/relations/{attribute}/{entity_id}":{"put":{"operationId":"updateRelation","summary":"updateRelation","description":"Updates an existing relation between two entities.","tags":["Relations"],"parameters":[{"in":"path","name":"slug","description":"Entity Type","required":true,"schema":{"$ref":"#/components/schemas/EntitySlug"}},{"in":"path","name":"id","description":"Entity id","required":true,"schema":{"$ref":"#/components/schemas/EntityId"}},{"in":"path","name":"attribute","description":"The attribute that express meaning","required":true,"schema":{"type":"string"}},{"in":"path","name":"entity_id","description":"The attribute that express meaning","required":true,"schema":{"type":"string"}},{"in":"query","name":"async","description":"Don\'t wait for updated entity to become available in Search API. Useful for large migrations","required":false,"schema":{"type":"boolean","default":false}}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"_tags":{"type":"array","items":{"type":"string"}}}},"example":{"_tags":["billing","prepaid"]}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RelationItem"}}}}}},"delete":{"operationId":"deleteRelation","summary":"deleteRelation","description":"Removes relation between two entities","tags":["Relations"],"parameters":[{"in":"path","name":"slug","description":"Entity Type","required":true,"schema":{"$ref":"#/components/schemas/EntitySlug"}},{"in":"path","name":"id","description":"Entity id","required":true,"schema":{"$ref":"#/components/schemas/EntityId"}},{"in":"path","name":"attribute","description":"The attribute that express meaning","required":true,"schema":{"type":"string"}},{"in":"path","name":"entity_id","description":"The attribute that express meaning","required":true,"schema":{"type":"string"}},{"in":"query","name":"async","description":"Don\'t wait for updated entity to become available in Search API. Useful for large migrations","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"204":{"description":"Relation deleted with success."}}}},"/v1/entity:export":{"post":{"operationId":"exportEntities","summary":"exportEntities","description":"create export file of entities","tags":["Export"],"parameters":[{"in":"query","name":"job_id","description":"Export Job Id to get the result","schema":{"$ref":"#/components/schemas/ExportJobId"}},{"in":"query","name":"is_template","description":"Pass \'true\' to generate import template","schema":{"$ref":"#/components/schemas/IsTemplate"}},{"in":"query","name":"language","description":"Export headers translation language","schema":{"$ref":"#/components/schemas/Language"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EntitySearchParams"}}}},"responses":{"201":{"description":"created export url and download url"}}}},"/v1/entity:import":{"post":{"operationId":"importEntities","summary":"importEntities","description":"import entity data from","tags":["Export"],"parameters":[{"in":"query","name":"job_id","description":"Import Job Id to get the result","schema":{"$ref":"#/components/schemas/ExportJobId"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EntityImportParams"}}}},"responses":{"201":{"description":"created import url and download url"}}}},"/v1/entity/views":{"get":{"operationId":"listSavedViews","summary":"listSavedViews","description":"Get the Saved Views based on the schema","tags":["Saved Views"],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"results":{"type":"array","items":{"$ref":"#/components/schemas/SavedViewItem"}}}}}}}}}},"/v1/entity/view":{"post":{"operationId":"createSavedView","summary":"createSavedView","description":"Creates a new saved view","tags":["Saved Views"],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SavedView"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SavedViewItem"}}}}}}},"/v1/entity/view/{id}":{"get":{"operationId":"getSavedView","summary":"getSavedView","description":"Gets Saved View configuration by id.","tags":["Saved Views"],"parameters":[{"in":"path","name":"id","description":"View id","required":true,"schema":{"$ref":"#/components/schemas/SavedViewId"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"view":{"$ref":"#/components/schemas/SavedViewItem"}}}}}}}},"put":{"operationId":"updateSavedView","summary":"updateSavedView","description":"Updates a saved view","tags":["Saved Views"],"parameters":[{"in":"path","name":"id","description":"View id","required":true,"schema":{"$ref":"#/components/schemas/SavedViewId"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SavedView"}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SavedViewItem"}}}}}},"delete":{"operationId":"deleteSavedView","summary":"deleteSavedView","description":"Deletes a saved view","parameters":[{"in":"path","name":"id","description":"View id","required":true,"schema":{"$ref":"#/components/schemas/SavedViewId"}}],"tags":["Saved Views"],"responses":{"200":{"description":"List of all available saved views"}}}},"/v1/entity/listTaxonomies":{"get":{"operationId":"listTaxonomies","summary":"listTaxonomies","description":"List taxonomies in an organisation","tags":["Taxonomy"],"responses":{"200":{"description":"Returns list of taxonomies in an organisation","content":{"application/json":{"schema":{"type":"object","properties":{"results":{"type":"array","items":{"$ref":"#/components/schemas/Taxonomy"}}}}}}}}}},"/v1/entity/taxonomies/{taxonomySlug}":{"get":{"operationId":"getTaxonomy","summary":"getTaxonomy","description":"Get taxonomy by slug","tags":["Taxonomy"],"parameters":[{"in":"path","name":"taxonomySlug","description":"Taxonomy slug to return taxonomy for","schema":{"$ref":"#/components/schemas/TaxonomySlug"},"required":true}],"responses":{"200":{"description":"Taxonomy","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Taxonomy"}}}}}}},"/v1/entity/taxonomies/{taxonomySlug}:autocomplete":{"get":{"operationId":"taxonomyAutocomplete","summary":"taxonomyAutocomplete","description":"Taxonomies autocomplete","tags":["Taxonomy"],"parameters":[{"in":"path","name":"taxonomySlug","description":"Limit results to slug","schema":{"type":"string"},"required":true},{"in":"query","name":"query","description":"Input to autocomplete","schema":{"type":"string"}},{"in":"query","name":"size","description":"Minimum number of results to return","schema":{"type":"number"}}],"responses":{"200":{"description":"Taxonomy classifications","content":{"application/json":{"schema":{"type":"object","properties":{"results":{"type":"array","items":{"$ref":"#/components/schemas/TaxonomyClassification"}}}}}}}}}},"/v1/entity/taxonomies/classifications:search":{"post":{"operationId":"taxonomiesClassificationsSearch","summary":"taxonomiesClassificationsSearch","description":"List taxonomy classifications in an organisation based on taxonomy slug","tags":["Taxonomy"],"parameters":[{"in":"query","name":"taxonomySlug","description":"Taxonomy slug","schema":{"type":"string"},"required":true}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"classificationIds":{"type":"array","items":{"$ref":"#/components/schemas/ClassificationId"}}}}}}},"responses":{"200":{"description":"Returns list of taxonomy classifications","content":{"application/json":{"schema":{"type":"object","properties":{"results":{"items":{"$ref":"#/components/schemas/TaxonomyClassification"}}}}}}}}}},"/v1/entity/taxonomies/{taxonomySlug}/classifications":{"post":{"operationId":"updateClassificationsForTaxonomy","summary":"updateClassificationsForTaxonomy","description":"Update taxonomies in an organisation based in taxonomy slug","tags":["Taxonomy"],"parameters":[{"in":"path","name":"taxonomySlug","description":"Taxonomy slug","schema":{"type":"string"},"required":true}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ClassificationsUpdate"}}}},"responses":{"200":{"description":"Taxonomies classifications","content":{"application/json":{"schema":{"type":"object","properties":{"created":{"type":"array","items":{"$ref":"#/components/schemas/TaxonomyClassification"}},"updated":{"type":"array","items":{"$ref":"#/components/schemas/TaxonomyClassification"}},"deleted":{"type":"object","items":{"$ref":"#/components/schemas/ClassificationId"}}}}}}}}}}},"components":{"securitySchemes":{"EpilotAuth":{"type":"http","scheme":"bearer","description":"Authorization header with epilot OAuth2 bearer token","bearerFormat":"JWT"},"EpilotOrg":{"description":"Overrides the target organization to allow shared tenantaccess","name":"x-epilot-org-id","in":"header","type":"apiKey"}},"schemas":{"ExportJobId":{"description":"Export Job Id to get the result","type":"string"},"Language":{"description":"Export headers translation Language","type":"string"},"IsTemplate":{"description":"Pass \'true\' to generate import template","type":"boolean"},"SchemaId":{"description":"Generated uuid for schema","type":"string","format":"uuid"},"EntitySchema":{"description":"The \\"type\\" of an Entity. Describes the shape. Includes Entity Attributes, Relations and Capabilities.","type":"object","properties":{"slug":{"$ref":"#/components/schemas/EntitySlug"},"version":{"type":"integer","minimum":1},"blueprint":{"$ref":"#/components/schemas/BlueprintEntityId"},"feature_flag":{"type":"string","example":"FF_MY_FEATURE_FLAG","description":"This schema should only be active when the feature flag is enabled"},"enable_setting":{"description":"This schema should only be active when one of the organization settings is enabled","type":"array","items":{"type":"string","example":"360_features"}},"name":{"description":"User-friendly identifier for the entity schema","type":"string","example":"Contact"},"plural":{"type":"string","example":"Contacts"},"published":{"type":"boolean","example":false},"draft":{"type":"boolean","example":false},"icon":{"type":"string","example":"person"},"title_template":{"type":"string","description":"Template for rendering the title field. Uses handlebars","example":"{{first_name}} {{last_name}}"},"ui_config":{"type":"object","properties":{"table_view":{"$ref":"#/components/schemas/EntityViewConfig"},"create_view":{"$ref":"#/components/schemas/EntityViewConfig"},"edit_view":{"$ref":"#/components/schemas/EntityViewConfig"},"single_view":{"$ref":"#/components/schemas/EntityViewConfig"},"list_item":{"type":"object","properties":{"summary_attributes":{"type":"array","items":{"anyOf":[{"$ref":"#/components/schemas/SummaryAttribute"},{"type":"string","description":"List of attributes to show in list item","example":"email"}]}}}},"sharing":{"type":"object","properties":{"show_sharing_button":{"type":"boolean","description":"Show the sharing button in entity detail view","example":true}}}}},"capabilities":{"type":"array","items":{"$ref":"#/components/schemas/EntityCapability"}},"group_settings":{"type":"array","description":"A dictionary of Group Titles and associated settings if present.","items":{"type":"object","properties":{"label":{"type":"string"},"id":{"type":"string"},"expanded":{"type":"boolean"},"render_condition":{"type":"string","example":"_is_composite_price = \\"false\\""},"order":{"description":"Render order of the group","type":"integer","default":0},"feature_flag":{"type":"string","example":"FF_MY_FEATURE_FLAG","description":"This group should only be active when the feature flag is enabled"},"setting_flag":{"type":"string","example":"MY_SETTING","description":"This group should only be active when the setting is enabled"},"info_tooltip_title":{"type":"object","properties":{"key":{"type":"string"},"default":{"type":"string"}}},"_purpose":{"type":"array","items":{"$ref":"#/components/schemas/ClassificationId"}}},"required":["label","id"]},"example":{"Order Info":{"expanded":true},"Contact Details":{"expanded":false,"info_tooltip_title":{"key":"partner.partner_information_group_tooltip","default":"These informations are provided by the partner company and cannot be edited."}}}},"layout_settings":{"type":"object","description":"Custom grid definitions for the layout. These settings are composed by managed and un-managed properties:\\n- Managed Properties: are interpreted and transformed into layout styles\\n- Un-managed Properties: are appended as styles into the attribute mounting node\\n","additionalProperties":true,"properties":{"grid_gap":{"type":"string","description":"Defines the grid gap for the mounting node of the attribute."},"grid_template_columns":{"type":"string","description":"Defines the grid column template for the mounting node of the attribute."}}},"dialog_config":{"type":"object","additionalProperties":true},"attributes":{"description":"An ordered list of attributes the entity contains","type":"array","items":{"$ref":"#/components/schemas/Attribute"},"example":[{"name":"email","type":"email","label":"Email","required":true},{"name":"first_name","type":"string","label":"First Name"},{"name":"last_name","type":"string","label":"Last Name"},{"name":"birthdate","type":"date","label":"Birthdate"},{"name":"salutation","type":"select","label":"Salutation","options":["Mr.","Ms. / Mrs.","Other"]},{"name":"marketing_permission","type":"boolean","label":"Marketing permission"},{"name":"image","type":"file","label":"Image"}]},"explicit_search_mappings":{"$ref":"#/components/schemas/SearchMappings"}},"required":["slug","name","plural"]},"EntitySchemaItem":{"allOf":[{"type":"object","properties":{"id":{"$ref":"#/components/schemas/SchemaId"},"created_at":{"type":"string"},"updated_at":{"type":"string"},"comment":{"type":"string"},"source":{"type":"object","properties":{"id":{"type":"string"},"type":{"type":"string"}}}}},{"$ref":"#/components/schemas/EntitySchema"}]},"Attribute":{"anyOf":[{"$ref":"#/components/schemas/TextAttribute"},{"$ref":"#/components/schemas/LinkAttribute"},{"$ref":"#/components/schemas/DateAttribute"},{"$ref":"#/components/schemas/CountryAttribute"},{"$ref":"#/components/schemas/BooleanAttribute"},{"$ref":"#/components/schemas/SelectAttribute"},{"$ref":"#/components/schemas/MultiSelectAttribute"},{"$ref":"#/components/schemas/StatusAttribute"},{"$ref":"#/components/schemas/SequenceAttribute"},{"$ref":"#/components/schemas/RelationAttribute"},{"$ref":"#/components/schemas/UserRelationAttribute"},{"$ref":"#/components/schemas/AddressRelationAttribute"},{"$ref":"#/components/schemas/PaymentMethodRelationAttribute"},{"$ref":"#/components/schemas/CurrencyAttribute"},{"$ref":"#/components/schemas/RepeatableAttribute"},{"$ref":"#/components/schemas/TagsAttribute"},{"$ref":"#/components/schemas/NumberAttribute"},{"$ref":"#/components/schemas/ConsentAttribute"},{"$ref":"#/components/schemas/InternalAttribute"},{"$ref":"#/components/schemas/OrderedListAttribute"},{"$ref":"#/components/schemas/FileAttribute"},{"$ref":"#/components/schemas/ComputedAttribute"},{"$ref":"#/components/schemas/PartnerStatusAttribute"},{"$ref":"#/components/schemas/InvitationEmailAttribute"},{"$ref":"#/components/schemas/AutomationAttribute"},{"$ref":"#/components/schemas/InternalUserAttribute"},{"$ref":"#/components/schemas/PurposeAttribute"}]},"BaseAttribute":{"type":"object","properties":{"name":{"type":"string"},"label":{"type":"string"},"placeholder":{"type":"string"},"hidden":{"description":"Do not render attribute in entity views","type":"boolean","default":false},"show_in_table":{"description":"Render as a column in table views. When defined, overrides `hidden`","type":"boolean"},"required":{"type":"boolean","default":false},"readonly":{"type":"boolean","default":false},"deprecated":{"type":"boolean","default":false},"default_value":{"oneOf":[{"type":"string"},{"type":"object","additionalProperties":true},{"type":"integer"},{"type":"number"},{"type":"boolean"},{"type":"array"}]},"group":{"description":"Which group the attribute should appear in. Accepts group ID or group name","type":"string"},"order":{"description":"Attribute sort order (ascending) in group","type":"integer","example":0},"layout":{"type":"string","example":"full_width"},"hide_label":{"type":"boolean","description":"When set to true, will hide the label of the field."},"icon":{"type":"string","description":"Code name of the icon to used to represent this attribute.\\nThe value must be a valid @epilot/base-elements Icon name\\n"},"render_condition":{"type":"string","description":"Defines the conditional rendering expression for showing this field.\\nWhen a valid expression is parsed, their evaluation defines the visibility of this attribute.\\nNote: Empty or invalid expression have no effect on the field visibility.\\n"},"_purpose":{"type":"array","items":{"$ref":"#/components/schemas/ClassificationId"}},"constraints":{"type":"object","description":"A set of constraints applicable to the attribute.\\nThese constraints should and will be enforced by the attribute renderer.\\n","example":{"disablePast":true}},"feature_flag":{"type":"string","example":"FF_MY_FEATURE_FLAG","description":"This attribute should only be active when the feature flag is enabled"},"setting_flag":{"type":"string","example":"MY_SETTING","description":"This attribute should only be active when the setting is enabled"},"value_formatter":{"type":"string"},"preview_value_formatter":{"type":"string"},"entity_builder_disable_edit":{"description":"Setting to `true` disables editing the attribute on the entity builder UI","type":"boolean","default":false},"protected":{"description":"Setting to `true` prevents the attribute from being modified / deleted","type":"boolean","default":true}},"required":["name","label"]},"TextAttribute":{"allOf":[{"$ref":"#/components/schemas/BaseAttribute"},{"type":"object","description":"Textarea or text input","properties":{"type":{"type":"string","enum":["string"]},"multiline":{"type":"boolean"}}}]},"LinkAttribute":{"allOf":[{"$ref":"#/components/schemas/BaseAttribute"},{"type":"object","description":"Link with title and href","properties":{"type":{"type":"string","enum":["link"]}}}]},"InternalAttribute":{"allOf":[{"$ref":"#/components/schemas/BaseAttribute"},{"type":"object","description":"No UI representation","properties":{"type":{"type":"string","enum":["internal"]}}}]},"BooleanAttribute":{"allOf":[{"$ref":"#/components/schemas/BaseAttribute"},{"type":"object","description":"Yes / No Toggle","properties":{"type":{"type":"string","enum":["boolean"]}}}]},"DateAttribute":{"allOf":[{"$ref":"#/components/schemas/BaseAttribute"},{"type":"object","description":"Date or Datetime picker","properties":{"type":{"type":"string","enum":["date","datetime"]}}}]},"CountryAttribute":{"allOf":[{"$ref":"#/components/schemas/BaseAttribute"},{"type":"object","description":"Country picker","properties":{"type":{"type":"string","enum":["country"]}}}]},"SelectAttribute":{"allOf":[{"$ref":"#/components/schemas/BaseAttribute"},{"type":"object","description":"Dropdown select","properties":{"type":{"type":"string","enum":["select","radio"]},"options":{"type":"array","items":{"anyOf":[{"type":"string","nullable":true},{"type":"object","properties":{"value":{"type":"string"},"title":{"type":"string"}},"required":["value"]}]}},"allow_any":{"type":"boolean","description":"Allow arbitrary input values in addition to provided options"}}}]},"MultiSelectAttribute":{"allOf":[{"$ref":"#/components/schemas/BaseAttribute"},{"type":"object","description":"Multi Choice Selection","properties":{"type":{"type":"string","enum":["multiselect","checkbox"]},"disable_case_sensitive":{"type":"boolean","nullable":true,"description":"controls if the matching of values against the options is case sensitive or not"},"allow_extra_options":{"type":"boolean","nullable":true,"description":"controls if the 360 ui will allow the user to enter a value which is not defined by the options"},"options":{"type":"array","items":{"anyOf":[{"type":"string","nullable":true},{"type":"object","properties":{"value":{"type":"string"},"title":{"type":"string"}},"required":["value"]}]}},"allow_any":{"type":"boolean","description":"Allow arbitrary input values in addition to provided options"}}}]},"StatusAttribute":{"allOf":[{"$ref":"#/components/schemas/BaseAttribute"},{"type":"object","description":"Status select","properties":{"type":{"type":"string","enum":["status"]},"options":{"type":"array","items":{"anyOf":[{"type":"string","nullable":true},{"type":"object","properties":{"value":{"type":"string"},"title":{"type":"string"}},"required":["value"]}]}}}}]},"SequenceAttribute":{"allOf":[{"$ref":"#/components/schemas/BaseAttribute"},{"type":"object","description":"Sequence of unique identifiers","properties":{"type":{"type":"string","enum":["sequence"]},"prefix":{"description":"Prefix added before the sequence number","type":"string","example":"OR-"},"start_number":{"type":"integer","minimum":0}}}]},"FileAttribute":{"allOf":[{"$ref":"#/components/schemas/BaseAttribute"},{"type":"object","description":"File or Image Attachment","properties":{"type":{"type":"string","enum":["image","file"]},"multiple":{"type":"boolean"},"allowed_extensions":{"description":"List of file extensions (without the dot suffix)","type":"array","items":{"type":"string","example":"csv"}},"display_images_landscaped":{"type":"boolean","description":"Controls how the images are presented to the user during upload on the Entity Details view."},"enable_description":{"type":"boolean","description":"When set to true, an i18n description will be used alongside the attribute label.\\nThis description should be set through the platform locales in the form: `file.{attribute_name}.description_text`.\\n"},"default_access_control":{"type":"string","enum":["public-read","private"]}},"required":["type"]}]},"CurrencyAttribute":{"allOf":[{"$ref":"#/components/schemas/BaseAttribute"},{"type":"object","description":"Currency input","properties":{"type":{"type":"string","enum":["currency"]},"currency_selector_only":{"type":"boolean","default":false},"currency":{"description":"An array of currency configurations with a country code (ISO-4217)","type":"array","items":{"anyOf":[{"type":"object","description":"A currency configuration","properties":{"code":{"type":"string"},"description":{"type":"string"},"symbol":{"type":"string"},"flag":{"type":"string"}},"required":["code","description","symbol"],"example":{"code":"EUR","description":"Euro","symbol":"€","flag":"🇪🇺"}}]}}},"required":["type","currency"]}]},"SummaryField":{"type":"object","description":"Summary Fields are displayed inside list view as a resume of the relation entity.","properties":{"field":{"type":"string","description":"The field from the entity attributes to display"},"display_as":{"type":"string","description":"An hint on how to display the summary field"}}},"RelationAttribute":{"allOf":[{"$ref":"#/components/schemas/BaseAttribute"},{"type":"object","description":"Entity Relationship","properties":{"type":{"type":"string","enum":["relation"]},"relation_type":{"type":"string","enum":["has_many","has_one"]},"reverse_attributes":{"description":"Map of schema slug to target relation attribute","type":"object","additionalProperties":{"type":"string","example":"contact.account"},"example":{"contact":"account","opportunity":"customer"}},"relation_affinity_mode":{"description":"Weak relation attributes are kept when duplicating an entity. Strong relation attributes are discarded when duplicating an entity.","type":"string","enum":["weak","strong"]},"enable_relation_picker":{"type":"boolean","default":true,"description":"When enable_relation_picker is set to true the user will be able to pick existing relations as values. Otherwise, the user will need to create new relation to link."},"edit_mode":{"type":"string","enum":["list-view"]},"details_view_mode_enabled":{"type":"boolean","default":false,"description":"Enables the preview, edition, and creation of relation items on a Master-Details view mode."},"actions":{"type":"array","items":{"type":"object","properties":{"action_type":{"type":"string","enum":["add_existing","create_new","create_from_existing"],"description":"The action type. Currently supported actions:\\n\\n| action | description |\\n|--------|-------------|\\n| add_existing | Enables the user to pick an existing entity to link as relation |\\n| create_new | Enables the user to create a new entity using the first/main `allowed_schemas` schema\\n| create_from_existing | Enables the user to pick an existing entity to clone from, while creating a blank new entity to link as relation |\\n"},"label":{"type":"string","description":"The action label or action translation key (i18n)"},"default":{"type":"boolean","description":"Sets the action as the default action, visible as the main action button."},"feature_flag":{"type":"string","description":"Name of the feature flag that enables this action"},"setting_flag":{"type":"string","description":"Name of the setting flag that enables this action"},"new_entity_item":{"type":"object","allOf":[{"$ref":"#/components/schemas/EntityItem"}]}}},"example":{"value":[{"action_type":"add_existing","label":"entityrelation.add_existing","default":true},{"action_type":"create_new","label":"entityrelation.create_new"},{"action_type":"create_from_existing","label":"entityrelation.create_from_existing"}]}},"drawer_size":{"type":"string","enum":["small","medium","large"]},"icon":{"type":"string"},"summary_fields":{"type":"array","items":{"anyOf":[{"type":"string","description":"The field name from the entity attributes to display"},{"$ref":"#/components/schemas/SummaryField"}]}},"has_primary":{"type":"boolean"},"allowedSchemas":{"type":"array","items":{"$ref":"#/components/schemas/EntitySlug"}},"enable_relation_tags":{"type":"boolean","default":true,"description":"When enable_relation_tags is set to true the user will be able to set tags(labels) in each relation item."},"add_button_label":{"type":"string","description":"Optional label for the add button. The translated value for add_button_lable is used, if found else the string is used as is."},"search_placeholder":{"type":"string","description":"Optional placeholder text for the relation search input. The translated value for search_placeholder is used, if found else the string is used as is."}}}]},"UserRelationAttribute":{"allOf":[{"$ref":"#/components/schemas/BaseAttribute"},{"type":"object","description":"User Relationship","properties":{"type":{"type":"string","enum":["relation_user"]},"multiple":{"type":"boolean","default":false}}}]},"AddressRelationAttribute":{"allOf":[{"$ref":"#/components/schemas/BaseAttribute"},{"type":"object","description":"Reference to an address attribute of another entity","properties":{"type":{"type":"string","enum":["relation_address"]},"has_primary":{"type":"boolean"}}}]},"PaymentMethodRelationAttribute":{"allOf":[{"$ref":"#/components/schemas/BaseAttribute"},{"type":"object","description":"Reference to a payment method attribute of another entity","properties":{"type":{"type":"string","enum":["relation_payment_method"]},"has_primary":{"type":"boolean"}}}]},"InvitationEmailAttribute":{"allOf":[{"$ref":"#/components/schemas/BaseAttribute"},{"type":"object","description":"Email address for send invitation","properties":{"type":{"type":"string","enum":["invitation_email"]}}}]},"AutomationAttribute":{"allOf":[{"$ref":"#/components/schemas/BaseAttribute"},{"type":"object","description":"Automation entity","properties":{"type":{"type":"string","enum":["automation"]}}}]},"InternalUserAttribute":{"allOf":[{"$ref":"#/components/schemas/BaseAttribute"},{"type":"object","description":"Epilot internal user info","properties":{"type":{"type":"string","enum":["internal_user"]}}}]},"PurposeAttribute":{"allOf":[{"$ref":"#/components/schemas/BaseAttribute"},{"$ref":"#/components/schemas/TaxonomyClassification"},{"type":"object","description":"Entity Taxonomy","properties":{"type":{"type":"string","enum":["purpose"]}}}]},"RepeatableAttribute":{"allOf":[{"$ref":"#/components/schemas/BaseAttribute"},{"type":"object","description":"Repeatable (add N number of fields)","properties":{"repeatable":{"type":"boolean"},"has_primary":{"type":"boolean"},"relation_affinity_mode":{"description":"Weak repeatable attributes are kept when duplicating an entity. Strong repeatable attributes are discarded when duplicating an entity.","type":"string","enum":["weak","strong"]},"type":{"type":"string","enum":["string","phone","email","address","relation","payment","price_component","date"]},"enable_relation_picker":{"type":"boolean","default":true,"description":"when enable_relation_picker is set to true the user will be able to pick existing relations as values. Otherwise, the user will need to create new relation to link."}}}]},"TagsAttribute":{"allOf":[{"$ref":"#/components/schemas/BaseAttribute"},{"type":"object","description":"Tags","properties":{"type":{"type":"string","enum":["tags"]},"options":{"type":"array","items":{"type":"string"}},"suggestions":{"type":"array","items":{"type":"string"}}}}]},"NumberAttribute":{"allOf":[{"$ref":"#/components/schemas/BaseAttribute"},{"type":"object","description":"Numeric input","properties":{"type":{"type":"string","enum":["number"]},"format":{"type":"string"}}}]},"ConsentAttribute":{"allOf":[{"$ref":"#/components/schemas/BaseAttribute"},{"type":"object","description":"Consent Management","properties":{"type":{"type":"string","enum":["consent"]},"topic":{"type":"string"},"identifiers":{"type":"array","items":{"type":"string"}}},"required":["type","topic"]}]},"OrderedListAttribute":{"allOf":[{"$ref":"#/components/schemas/BaseAttribute"},{"type":"object","description":"Type of attribute to render N number of ordered fields","properties":{"type":{"type":"string","enum":["ordered_list"]}}}]},"ComputedAttribute":{"allOf":[{"$ref":"#/components/schemas/BaseAttribute"},{"type":"object","description":"An attribute that is computed from the entity data. For more details on how to use them, check the docs [here](https://e-pilot.atlassian.net/wiki/spaces/EO/pages/5642977476/How+To+Computed+Schema+Attributes)","properties":{"type":{"type":"string","enum":["computed"]}}}]},"PartnerStatusAttribute":{"allOf":[{"$ref":"#/components/schemas/BaseAttribute"},{"type":"object","description":"Partner Status","properties":{"type":{"type":"string","enum":["partner_status"]}}}]},"Attachment":{"type":"object","deprecated":true,"properties":{"key":{"type":"string"},"mime":{"type":"string"},"name":{"type":"string"},"size":{"type":"number"},"image_url":{"type":"string"},"download_url":{"type":"string"},"alt_text":{"type":"string"}},"required":["key","mime","name","size","image_url","download_url"]},"SummaryAttribute":{"description":"Represents an expanded version of an attribute to be displayed in the list item summary.\\nThis configuration can be used in the following way:\\n```js\\n{\\n \\"label\\": \\"Price components\\"\\n \\"value\\": \\"{{item.prices.length}} price components\\"\\n \\"show_as_tag\\": true\\n \\"render_condition\\": \\"is_composite_price = \\"true\\"\\"\\n}\\n```\\nThe value field supports handlebar expressions from which you can pick any field from the entity state.\\n","type":"object","properties":{"label":{"type":"string","description":"Label to be shown on the top of the value."},"value":{"type":"string","description":"A static value or an handlebar expression."},"show_as_tag":{"type":"boolean","description":"Displays the value within a tag chip."},"tag_color":{"type":"string","description":"CSS hex color or CSS color name for the tag chip."},"render_condition":{"type":"string","description":"Defines the conditional rendering expression for showing this field.\\nWhen a valid expression is parsed, their evaluation defines the visibility of this attribute.\\nNote: Empty or invalid expression have no effect on the field visibility.\\n"},"feature_flag":{"type":"string","description":"Binds summary field visibility to the feature flag state."},"setting_flag":{"type":"string","description":"Binds summary field visibility to the setting flag state."}},"required":["label","value"]},"EntitySlug":{"description":"URL-friendly identifier for the entity schema","type":"string","example":"contact"},"EntityCapability":{"description":"Capabilities the Entity has. Turn features on/off for entities.","type":"object","properties":{"name":{"type":"string","description":"Unique name for the capability","example":"customer_messaging"},"title":{"type":"string","description":"Human readable title of the capability","example":"Messaging"},"attributes":{"type":"array","items":{"$ref":"#/components/schemas/Attribute"}},"_purpose":{"type":"array","items":{"$ref":"#/components/schemas/ClassificationId"}},"ui_hooks":{"type":"array","items":{"type":"object","additionalProperties":true,"properties":{"hook":{"type":"string","description":"name of the hook to use","example":"EntityDetailsV2:Tab"},"render_condition":{"type":"string","example":"_is_composite_price = \\"false\\""},"order":{"type":"integer","description":"render order (ascending)","example":10},"title":{"type":"string","example":"Notes"},"group_expanded":{"type":"boolean","description":"Sets the group expand/collapse default state"},"import":{"type":"string","description":"package to be imported","example":"@epilot360/notes"},"component":{"type":"string","description":"the component to be dynamically loaded","example":"PricingItems"},"route":{"type":"string","description":"route for specified capability","example":"notes"},"icon":{"type":"string","description":"Preview icon name(As in Base elements) for the capability","example":"email"},"disabled":{"type":"boolean","description":"Whether capability should be disabled"},"header":{"type":"boolean","description":"Specific to Activity pilot"},"requiredPermission":{"type":"object","description":"Require a permission to display UI hook","properties":{"action":{"type":"string","example":"note:view"},"resource":{"type":"string","example":123}},"required":["action"]}},"required":["hook"]}},"feature_flag":{"type":"string","example":"FF_MY_FEATURE_FLAG","description":"This capability should only be active when the feature flag is enabled"},"setting_flag":{"type":"string","example":"MY_SETTING","description":"This capability should only be active when the setting is enabled"},"legacy":{"type":"boolean","description":"Only show capability for legacy tenants (ivy)"}},"required":["name"]},"EntityViewConfig":{"anyOf":[{"$ref":"#/components/schemas/EntityDefaultCreate"},{"$ref":"#/components/schemas/EntityDefaultEdit"},{"$ref":"#/components/schemas/EntityDefaultTable"},{"$ref":"#/components/schemas/RedirectEntityView"},{"$ref":"#/components/schemas/EntityParcelView"},{"$ref":"#/components/schemas/EntityViewDisabled"}]},"EntityViewDisabled":{"type":"object","properties":{"view_type":{"type":"string","enum":["disabled"]}}},"EntityDefaultTable":{"type":"object","properties":{"view_type":{"type":"string","enum":["default"]},"dropdown_items":{"type":"array","items":{"allOf":[{"type":"object","properties":{"feature_flag":{"type":"string","example":"FF_MY_FEATURE_FLAG","description":"This dropdown item should only be active when the feature flag is enabled"},"legacy":{"type":"boolean","description":"Only show item for legacy tenants (ivy)"}}},{"oneOf":[{"type":"object","properties":{"type":{"type":"string","enum":["entity"]},"entity":{"$ref":"#/components/schemas/EntitySlug"}}},{"type":"object","properties":{"type":{"type":"string","enum":["link"]},"title":{"type":"string","example":"Opportunities"},"uri":{"type":"string","format":"uri-reference"}}}]}]}},"row_actions":{"type":"array","items":{"type":"string"}},"navbar_actions":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string"},"options":{"type":"array","items":{"type":"object","properties":{"label":{"type":"string"},"params":{"type":"object"}},"required":["label"]}}},"required":["type"]}},"enable_thumbnails":{"description":"Enable the thumbnail column","type":"boolean","default":false},"classic_view":{"type":"string","format":"uri-reference"}}},"EntityDefaultCreate":{"type":"object","properties":{"view_type":{"type":"string","enum":["default"]},"search_params":{"type":"object","additionalProperties":{"type":"string"}},"table_menu_options":{"type":"object","properties":{"icon":{"type":"string"},"label":{"type":"string"}}}}},"EntityDefaultEdit":{"type":"object","properties":{"view_type":{"type":"string","enum":["default"]},"search_params":{"type":"object","additionalProperties":{"type":"string"}},"table_menu_options":{"type":"object","properties":{"icon":{"type":"string"},"label":{"type":"string"}}}}},"RedirectEntityView":{"type":"object","properties":{"view_type":{"type":"string","enum":["redirect"]},"route":{"type":"string","example":"/app/pricing-hub/product/:entityId"}},"example":{"type":"redirect","route":"/app/pricing-hub/product/:entityId"}},"EntityParcelView":{"type":"object","properties":{"view_type":{"type":"string","enum":["parcel"]},"import":{"type":"string","example":"@epilot360/pricing-hub-app"}},"example":{"type":"redirect","route":"/app/pricing-hub/product/:entityId"}},"EntityId":{"type":"string","format":"uuid"},"BaseEntity":{"allOf":[{"$ref":"#/components/schemas/Entity"},{"required":["_id","_title","_org","_schema","_created_at","_updated_at"]}]},"Entity":{"type":"object","additionalProperties":true,"properties":{"_id":{"$ref":"#/components/schemas/EntityId"},"_org":{"type":"string","description":"Organization Id the entity belongs to"},"_schema":{"$ref":"#/components/schemas/EntitySlug"},"_title":{"type":"string","description":"Title of entity","nullable":true},"_tags":{"type":"array","items":{"type":"string"},"nullable":true},"_created_at":{"type":"string","format":"date-time","nullable":true},"_updated_at":{"type":"string","format":"date-time","nullable":true}},"example":{"_id":"3fa85f64-5717-4562-b3fc-2c963f66afa6","_org":"123","_schema":"contact","_tags":["example","mock"],"_created_at":"2021-02-09T12:41:43.662Z","_updated_at":"2021-02-09T12:41:43.662Z"}},"HydratedEntity":{"type":"object","description":"Entity with relation data resolved into the attribute values","properties":{},"additionalProperties":true,"example":{"status":"active","customer_number":"abc123","email":[{"label":"work","email":"user@example.com"}],"phone":[{"label":"work","phone":"+49123456789"}],"first_name":"First Name","middle_name":"Middle Name","last_name":"Last Name","date_of_birth":"2019-08-24","title":"Mr.","account":[{"status":"active","name":"Company name","company_email":[{"label":"Company email","email":"company@example.com"}],"company_phone":[{"label":"Support phone","phone":"+49123456789"}],"company_website":"https://example.com","tax_id":"DE123456789","tax_exemption":"2019-08-24","contacts":{"$relation":[{"_tags":["CEO"],"entity_id":"3fa85f64-5717-4562-b3fc-2c963f66afa6"}]}}]}},"EntityItem":{"allOf":[{"$ref":"#/components/schemas/BaseEntity"},{"$ref":"#/components/schemas/Entity"}]},"HydratedEntityItem":{"allOf":[{"$ref":"#/components/schemas/BaseEntity"},{"$ref":"#/components/schemas/HydratedEntity"}]},"GetRelationsResp":{"type":"array","items":{"anyOf":[{"$ref":"#/components/schemas/RelationItem"},{"$ref":"#/components/schemas/RelationEntity"}]}},"RelationEntity":{"allOf":[{"$ref":"#/components/schemas/BaseEntity"},{"type":"object","properties":{"$relation":{"$ref":"#/components/schemas/RelationItem"}}}]},"RelationItem":{"type":"object","properties":{"entity_id":{"$ref":"#/components/schemas/EntityId"},"attribute":{"type":"string"},"_tags":{"type":"array","items":{"type":"string"}},"reverse":{"description":"Whether this is a reverse relation","type":"boolean"}},"required":["entity_id","attribute"]},"EntitySearchParams":{"type":"object","properties":{"q":{"description":"Lucene queries supported with ElasticSearch","type":"string","example":"_schema:contact AND status:active"},"sort":{"type":"string","example":"_created_at:desc"},"from":{"type":"integer","minimum":0,"default":0},"size":{"type":"integer","minimum":1,"default":10,"description":"Max search size is 1000 with higher values defaulting to 1000"},"hydrate":{"type":"boolean","description":"When true, enables entity hydration to resolve nested $relation & $relation_ref references in-place.","default":false},"fields":{"type":"array","description":"List of entity fields to include in search results","items":{"type":"string"},"example":["_id","_title","first_name"]},"include_scores":{"type":"boolean","default":false,"description":"Adds a `_score` number field to results that can be used to rank by match score"}},"required":["q"]},"EntityImportParams":{"type":"object","properties":{"S3Reference":{"type":"object","properties":{"bucket":{"type":"string","example":"epilot-files-prod"},"key":{"type":"string","example":"123/4d689aeb-1497-4410-a9fe-b36ca9ac4389/document.pdf"}},"required":["bucket","key"]},"schema":{"type":"string","example":"contact"}},"required":["S3Reference","schema"]},"EntitySearchResults":{"type":"object","properties":{"hits":{"type":"number","example":1},"results":{"type":"array","items":{"$ref":"#/components/schemas/EntityItem"}}}},"SearchMappings":{"description":"Advanced: explicit Elasticsearch index mapping definitions for entity data\\n","example":{"image":{"type":"keyword","index":false}},"type":"object","additionalProperties":{"type":"object","properties":{"index":{"type":"boolean","default":true},"type":{"type":"string","enum":["keyword","text","boolean","integer","long","float","date","flattened","nested"]},"fields":{"additionalProperties":true}}}},"ActivityId":{"type":"string","format":"ulid","description":"See https://github.com/ulid/spec","example":"01F130Q52Q6MWSNS8N2AVXV4JN"},"ActivityCallerContext":{"type":"object","additionalProperties":true,"properties":{"EpilotAuth":{"type":"object","properties":{"token":{"type":"object","properties":{"sub":{"type":"string","example":"476e9b48-42f4-4234-a2b0-4668b34626ce"},"email":{"type":"string","example":"example@epilot.cloud"},"cognito:username":{"type":"string","example":"example@epilot.cloud"},"custom:ivy_user_id":{"type":"string","example":"10006129"}},"example":{"sub":"476e9b48-42f4-4234-a2b0-4668b34626ce","cognito:groups":["Administrator"],"cognito:preferred_role":"arn:aws:iam::912468240823:role/base-administrator-role","iss":"https://cognito-idp.eu-central-1.amazonaws.com/eu-central-1_6lZSgmU6D","custom:ivy_org_id":"739224","cognito:username":"n.ahmad@epilot.cloud","custom:ivy_user_id":"10006129","cognito:roles":["arn:aws:iam::912468240823:role/base-administrator-role"],"aud":"6e0jbdnger7nmoktaaflarue1l","event_id":"cd5f5583-d90c-4db5-8e99-5f5dd29a4d75","token_use":"id","auth_time":1614333023,"exp":1614336623,"iat":1614333023,"email":"n.ahmad@epilot.cloud"}}}}}},"Activity":{"type":"object","properties":{"type":{"type":"string","example":"MyCustomActivity"},"title":{"type":"string","description":"Title for activity. Supports handlebars syntax.","example":"My custom activity"},"message":{"type":"string","description":"Message for activity. Supports handlebars syntax.","example":"{{caller}} did something with {{entity payload.entity.id}}."},"payload":{"type":"object","properties":{},"additionalProperties":true,"example":{"entity":{"id":"3fa85f64-5717-4562-b3fc-2c963f66afa6","schema":"contact"}}}},"required":["type","title","message"]},"EntityOperation":{"type":"object","properties":{"entity":{"$ref":"#/components/schemas/EntityId"},"org":{"type":"string","example":"123"},"activity_id":{"$ref":"#/components/schemas/ActivityId"},"operation":{"type":"string","enum":["createEntity","updateEntity","deleteEntity"]},"params":{"type":"object","properties":{"id":{"$ref":"#/components/schemas/EntityId"},"slug":{"$ref":"#/components/schemas/EntitySlug"}},"example":{"id":"3fa85f64-5717-4562-b3fc-2c963f66afa6","slug":"contact"}},"payload":{"allOf":[{"$ref":"#/components/schemas/Entity"},{"example":{"_schema":"contact","_org":"123","status":"Inactive"}}]},"diff":{"type":"object","properties":{"added":{"$ref":"#/components/schemas/Entity"},"updated":{"$ref":"#/components/schemas/Entity"},"deleted":{"$ref":"#/components/schemas/Entity"}}}},"required":["entity","org","operation"]},"ActivityItem":{"allOf":[{"type":"object","properties":{"_id":{"$ref":"#/components/schemas/ActivityId"},"timestamp":{"type":"string","format":"date-time"}}},{"$ref":"#/components/schemas/Activity"},{"type":"object","properties":{"caller":{"$ref":"#/components/schemas/ActivityCallerContext"}}},{"type":"object","properties":{"operations_total":{"type":"integer","description":"Count of total operations attached to this activity","example":1},"operations":{"type":"array","items":{"$ref":"#/components/schemas/EntityOperation"}}}}]},"BlueprintEntityId":{"description":"Reference to blueprint","type":"string","format":"uuid"},"SavedViewId":{"description":"Generated uuid for a saved view","type":"string","format":"uuid"},"SavedViewItem":{"allOf":[{"type":"object","properties":{"id":{"$ref":"#/components/schemas/SavedViewId"},"created_at":{"type":"string"},"updated_at":{"type":"string"}}},{"$ref":"#/components/schemas/SavedView"}]},"SavedView":{"description":"A saved entity view","type":"object","properties":{"slug":{"type":"array","description":"list of schemas a view can belong to","items":{"$ref":"#/components/schemas/EntitySlug"}},"name":{"description":"User-friendly identifier for the saved view","type":"string","example":"View listing German"},"org":{"description":"Organisation ID a view belongs to","type":"string","example":"66"},"shared":{"description":"boolean property for if a view is shared with organisation","type":"boolean","example":true},"created_by":{"anyOf":[{"type":"object","description":"A user that created the view","properties":{"user_id":{"type":"string","example":"10598"}}},{"type":"object","description":"A system-created view","properties":{"source":{"type":"string","enum":["SYSTEM","BLUEPRINT"]}},"additionalProperties":true}]},"ui_config":{"type":"object","example":{"filters":{"customer_name":"suresh test","_tags":"360"},"table_layout":{"opportunity":{"page":1,"sort":"_created_at:desc","pageSize":25,"columnSettings":[]}}}}},"required":["slug","name","created_by","ui_config"]},"Taxonomy":{"type":"object","properties":{"slug":{"$ref":"#/components/schemas/TaxonomySlug"},"name":{"type":"string","description":"A human friendly name of a Taxonomy e.g. Purpose, Product Category, Folder, Tag","example":"Purpose"},"plural":{"type":"string","description":"Plural name of a Taxonomy e.g. Purposes, Product Categories, Folders, Tags","example":"Purposes"},"created_at":{"type":"string","format":"date-time"},"updated_at":{"type":"string","format":"date-time"}},"required":["slug","name"]},"TaxonomyClassification":{"type":"object","properties":{"id":{"$ref":"#/components/schemas/ClassificationId"},"name":{"type":"string","example":"Wallbox PV"},"parents":{"type":"array","items":{"$ref":"#/components/schemas/ClassificationId"}},"created_at":{"type":"string","format":"date-time"},"updated_at":{"type":"string","format":"date-time"}},"required":["name"]},"ClassificationId":{"type":"string","format":"uuid"},"TaxonomySlug":{"type":"string","description":"URL-friendly name for taxonomy","example":"purpose"},"ClassificationsUpdate":{"type":"object","properties":{"create":{"type":"array","items":{"$ref":"#/components/schemas/TaxonomyClassification"}},"update":{"type":"array","items":{"$ref":"#/components/schemas/TaxonomyClassification"}},"delete":{"type":"array","items":{"$ref":"#/components/schemas/ClassificationId"}}}}},"examples":{"TaxEntity":{"description":"Example of a Tax Rate entity","value":{"active":true,"type":"VAT","region":"Germany","region_label":"All Regions","rate":19,"behavior":"Exclusive","description":"MwSt. 19%"}},"ContactEntity":{"description":"Example of a contact entity","value":{"status":"Active","customer_number":"abc123","first_name":"First","middle_name":"Middle","last_name":"Last","title":"Herr Prof. Dr.","email":[{"email":"user@example.com","_tags":["work"]}],"phone":[{"phone":"+49123456789","_tags":["personal","mobile"]}],"address":[{"country":"Germany","city":"Koln","postal_code":81475,"street":"Melatengürtel","street_number":71,"additional_info":"5. Etage","_tags":["billing","delivery"]}],"birthdate":"2019-08-24","account":{"$relation":[{"entity_id":"3fa85f64-5717-4562-b3fc-2c963f66afa6","_tags":["company"]}]},"consent_email_marketing":{"status":"OPTED_IN","events":[{"type":"OPT_IN","organization_id":"123","created_at":"2021-07-05T09:12:29.352Z","topic":"EMAIL_MARKETING","identifier":"user@example.com","source":"https://consent.sls.epilot.io/optin?token=abc123","meta":{"ip_address":"1.1.1.1","user_agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.114 Safari/537.36"}},{"type":"DOUBLE_OPT_IN_REQUEST","organization_id":"123","created_at":"2021-07-05T08:12:29.352Z","topic":"EMAIL_MARKETING","identifier":"user@example.com","source":"consent-api","meta":{"token":"abc123"}},{"type":"OPT_IN","organization_id":"123","created_at":"2021-07-04T09:12:29.352Z","topic":"EMAIL_MARKETING","identifier":"user@example.com","source":"https://frontend.epilot.cloud","meta":{"ip_address":"1.1.1.1","user_agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.114 Safari/537.36"}}]}}},"AccountEntity":{"description":"Example of an account entity","value":{"status":"Active","name":"Example Company","tax_id":"DE123456789","email":[{"email":"user@example.com","_tags":["work"]}],"phone":[{"phone":"+49123456789","_tags":["personal","mobile"]}],"address":[{"country":"Germany","city":"Koln","postal_code":81475,"street":"Melatengürtel","street_number":71,"additional_info":"5. Etage","_tags":["billing","delivery"]}],"website":"http://company.com","tax_exemption":"2021-02-23T09:08:57.320Z","registry_court":"Amtsgericht Köln","registry_number":"HRB 95505","company_size":"50-99","industry":["ecommerce","tech"],"annual_revenue":"5000000","contact":{"$relation":[{"entity_id":"3fa85f64-5717-4562-b3fc-2c963f66afa6","_tags":["CEO"]}]}}},"ProductEntity":{"description":"Example of a product entity","value":{"code":"SunrockSolar375","type":"Product","name":"Sunrock Solar Panel","description":"Sunrock Solar Panel, provide high capacity power generation even at night.","shippable":"true,","_files":{"type":"file","attachments":[{"key":"f001-32123-asdasd-23213","mime":"application/pdf","name":"wallbox-premium.pdf","size":6933430,"image_url":"https://s3-bucket.epilot.cloud/uid/f001-32123-asdasd-23213","download_url":"https://s3-bucket.epilot.cloud/uid/f001-32123-asdasd-23213"}]},"_images":{"type":"image","attachments":[{"key":"i001-32123-asdasd-23213","mime":"application/pdf","name":"wallbox-premium.pdf","size":6933430,"image_url":"https://s3-bucket.epilot.cloud/uid/f001-32123-asdasd-23213","download_url":"https://s3-bucket.epilot.cloud/uid/f001-32123-asdasd-23213"}]},"prices":{"$relation":[{"entity_id":"a38cca03-18a2-4e9c-8516-0918d81e7830","_tags":["price"]},{"entity_id":"3d10c912-c419-42d7-9270-02b7d05294e5","_tags":["price"]}]}}},"PriceEntity":{"description":"Example of a price entity","value":{"code":"MODEL_375KW_PREMIUM","type":"One Time","description":"Solar Panel 375 kWp Premium","billing_scheme":"per_unit","unit_amount":"€ 28500","tiers_mode":"Standard"}},"OrderEntity":{"description":"Example of a Order entity","value":{"amount_subtotal":23045,"amount_total":27424,"billing_address":[{"additional_info":"","city":"City","country":"DE","postal_code":"123","street":"Street 1","street_number":"2","_tags":[]}],"billing_company_name":"Epilot","billing_contact":{"$relation":[{"entity_id":"0691f503-5a3c-4e9e-b036-ffb21ea1d284","relationText":"Daniel Test","_schema":"contact","_tags":[]}]},"billing_email":"x@email.xyz","billing_first_name":"Paulo","billing_last_name":"Henriques","billing_phone":"00351912611099","billing_vat":"123456789","currency":"EUR","delivery_address":[{"additional_info":"","city":"City","country":"DE","postal_code":"123","street":"Street 1","street_number":"2","_tags":[]}],"footer_notes":"Footer","line_items":[{"amount_subtotal":23045,"amount_total":27424,"currency":"EUR","description":"Basic Model - No Wifi","price_id":"efe9ff76-865c-4287-8de9-422cfc741ff9","product_id":"beefa9f1-29a8-448e-94d5-ebf1963428f8","quantity":1,"taxes":[{"amount":4379,"rate":"standard"}],"unit_amount":23045,"_price":{"active":false,"billing_duration_amount":"2","billing_duration_unit":"years","billing_period":"monthly","description":"Basic Model - No Wifi","notice_time_amount":"1","notice_time_unit":"months","price_display_in_journeys":"show_price","renewal_duration_amount":"1","renewal_duration_unit":"years","sales_tax":"standard","tax_behavior":"exclusive","termination_time_amount":"1","termination_time_unit":"months","type":"recurring","unit_amount":23045,"unit_amount_currency":"EUR","unit_amount_decimal":"230.4524","_created_at":"2021-12-15T12:34:59.579Z","_id":"efe9ff76-865c-4287-8de9-422cfc741ff9","_org":"739224","_schema":"price","_tags":["basic-model","wifi"],"_title":"Basic Model - No Wifi","_updated_at":"2021-12-31T13:07:51.392Z"},"_product":{"active":true,"code":"PWB","feature":[{"_tags":[],"feature":"Pure Energon Fueled"},{"_tags":[],"feature":"Mobile App Available"}],"name":"Pinho Walls in a Box","price_options":{"$relation":[{"entity_id":"efe9ff76-865c-4287-8de9-422cfc741ff9"}]},"type":"product","_created_at":"2021-12-15T12:35:08.438Z","_id":"beefa9f1-29a8-448e-94d5-ebf1963428f8","_org":"739224","_schema":"product","_tags":["energon","eco-friendly","wallbox"],"_title":"Pinho Walls in a Box","_updated_at":"2022-01-03T17:14:41.042Z"}}],"memo":"Memo","status":"Paid","total_details":{"amount_tax":4379,"breakdown":{"recurrences":[{"amount_subtotal":23045,"amount_tax":4379,"amount_total":27424,"billing_period":"monthly","type":"recurring"}],"taxes":[{"amount":4379,"rate":"standard"}]}}}},"OpportunityEntity":{"description":"Example of an Opportunity entity","value":{"amount_subtotal":23045,"amount_total":27424,"assignees":{"$relation":[{"entity_id":"66a1a6a3-38ee-4ffe-b68d-ee90e3bb1a77","relationText":"Claudius Iohannis","_schema":"contact","_tags":[]}]},"billing_address":[{"additional_info":"","city":"City","country":"DE","postal_code":"123","street":"Street 1","street_number":"2","_tags":[]}],"billing_company_name":"Epilot","billing_contact":{"$relation":[{"entity_id":"0691f503-5a3c-4e9e-b036-ffb21ea1d284","relationText":"Daniel Test","_schema":"contact","_tags":[]}]},"billing_email":"customer@email.xyz","billing_first_name":"Customer First Name","billing_last_name":"Customer Last Name","billing_phone":"00351912611098","billing_vat":"123456789","currency":"EUR","delivery_address":[{"additional_info":"","city":"City","country":"DE","postal_code":"123","street":"Street 1","street_number":"2","_tags":[]}],"line_items":[{"amount_subtotal":23045,"amount_total":27424,"currency":"EUR","description":"Basic Model - No Wifi","price_id":"efe9ff76-865c-4287-8de9-422cfc741ff9","product_id":"beefa9f1-29a8-448e-94d5-ebf1963428f8","quantity":1,"taxes":[{"amount":4379,"rate":"standard"}],"unit_amount":23045,"_price":{"active":false,"billing_duration_amount":"2","billing_duration_unit":"years","billing_period":"monthly","description":"Basic Model - No Wifi","notice_time_amount":"1","notice_time_unit":"months","price_display_in_journeys":"show_price","renewal_duration_amount":"1","renewal_duration_unit":"years","sales_tax":"standard","tax_behavior":"exclusive","termination_time_amount":"1","termination_time_unit":"months","type":"recurring","unit_amount":23045,"unit_amount_currency":"EUR","unit_amount_decimal":"230.4524","_created_at":"2021-12-15T12:34:59.579Z","_id":"efe9ff76-865c-4287-8de9-422cfc741ff9","_org":"739224","_schema":"price","_tags":["basic-model","wifi"],"_title":"Basic Model - No Wifi","_updated_at":"2021-12-31T13:07:51.392Z"},"_product":{"active":true,"code":"PWB","feature":[{"_tags":[],"feature":"Pure Energon Fueled"},{"_tags":[],"feature":"Mobile App Available"}],"name":"Pinho Walls in a Box","price_options":{"$relation":[{"entity_id":"efe9ff76-865c-4287-8de9-422cfc741ff9"}]},"type":"product","_created_at":"2021-12-15T12:35:08.438Z","_id":"beefa9f1-29a8-448e-94d5-ebf1963428f8","_org":"739224","_schema":"product","_tags":["energon","eco-friendly","wallbox"],"_title":"Pinho Walls in a Box","_updated_at":"2022-01-03T17:14:41.042Z"}}],"opportunity_number":"20220105-768854819","participants":{"$relation":[{"entity_id":"9bbfdaa9-22b2-4100-a256-67600202e3f4","relationText":"Alex Marques","_schema":"contact","_tags":[]}]},"status":"Lead","total_details":{"amount_tax":4379,"breakdown":{"recurrences":[{"amount_subtotal":23045,"amount_tax":4379,"amount_total":27424,"billing_period":"monthly","type":"recurring"}],"taxes":[{"amount":4379,"rate":"standard"}]}}}},"EmailTemplateEntity":{"description":"Example of an email template entity","value":{"attachments":[],"body":"<p fr-original-style=\\"caret-color: rgb(65, 65, 65); color: rgb(65, 65, 65); font-family: sans-serif;\\" id=\\"isPasted\\" style=\\"caret-color: rgb(65, 65, 65); color: rgb(65, 65, 65); font-family: sans-serif; box-sizing: inherit; border-color: rgba(229, 231, 235, var(--tw-border-opacity));\\"><span fr-original-style=\\"font-weight: 700;\\" style=\\"font-weight: 700; box-sizing: inherit; border-color: rgba(229, 231, 235, var(--tw-border-opacity));\\">Variablen - Kontakt</span></p>","brand_id":7066103,"from":{"name":"Name","email":"admin@email.xyz"},"name":"PH Test","subject":"Example Subject","system_template":false,"to":[{"id":"1","name":"Contact Name","email":"Contact email"}],"_tags":["Bestellung"]}},"FileEntity":{"description":"Example of a file template entity","value":{"access_control":"private","filename":"solar_panel_ph.jpeg","s3ref":{"bucket":"epilot-staging-user-content","key":"728/temp/6d450fd1-2d63-435f-b598-c605dfb89cbc/solar_panel_ph.jpeg"}}},"WorkflowStepEntity":{"description":"Example of a workflow step template entity","value":{"name":"Name","assigned_to\\"":["10000563"],"status":"Unassigned","order":123,"tags":["tag1"]}},"SubmissionEntity":{"description":"Example of a submission step template entity","value":{"mapped_entities":{"$relation":[{"entity_id":"4ffb071c-2821-4505-86d0-09b801ffd97a","relationText":"4ffb071c-2821-4505-86d0-09b801ffd97a","_schema":"price","_tags":[]}]}}}}},"servers":[{"url":"https://entity.sls.epilot.io"},{"url":"https://entity.sls.epilot.io"}]}')}},t={};return function i(n){if(t[n])return t[n].exports;var a=t[n]={exports:{}};return e[n].call(a.exports,a,a.exports,i),a.exports}(914)})());
|
|
1
|
+
(()=>{"use strict";var e={914:function(e,t,i){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=n(i(534));t.default=a.default},534:e=>{e.exports=JSON.parse('{"openapi":"3.0.2","info":{"title":"Entity API","version":"1.0.0","description":"Flexible data layer for epilot Entities.\\n\\nUse this API configure and access your business objects like Contacts, Opportunities and Products.\\n\\n[Feature Documentation](https://docs.epilot.io/docs/entities/flexible-entities)\\n"},"tags":[{"name":"Schemas","description":"Model Entities"},{"name":"Entities","description":"CRUD Access for Entities"},{"name":"Relations","description":"Entity Relationships"},{"name":"Activity","description":"Entity Events"},{"name":"Export","description":"Export and Import entities via files"},{"name":"Saved Views","description":"Saved Views for Entities"},{"name":"Taxonomy","description":"Entity classification with Taxonomies"}],"security":[{"EpilotAuth":[]},{"EpilotOrg":[]}],"paths":{"/v1/entity/schemas":{"get":{"operationId":"listSchemas","summary":"listSchemas","description":"Get the latest versions of all schemas","parameters":[{"in":"query","name":"unpublished","description":"Return unpublished draft schemas","schema":{"type":"boolean","default":false}}],"tags":["Schemas"],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"results":{"type":"array","items":{"$ref":"#/components/schemas/EntitySchemaItem"}}}}}}}}}},"/v1/entity/schemas/{slug}":{"get":{"operationId":"getSchema","summary":"getSchema","description":"By default gets the latest version of the Schema and to get the specific version of schema pass the id.","tags":["Schemas"],"parameters":[{"in":"path","name":"slug","required":true,"schema":{"$ref":"#/components/schemas/EntitySlug"}},{"in":"query","name":"id","schema":{"$ref":"#/components/schemas/SchemaId"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EntitySchemaItem"}}}}}},"put":{"operationId":"putSchema","summary":"putSchema","description":"Create or update a schema with a new version","tags":["Schemas"],"parameters":[{"in":"path","name":"slug","required":true,"schema":{"$ref":"#/components/schemas/EntitySlug"}},{"in":"query","name":"draft","schema":{"default":false,"type":"boolean"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EntitySchema"}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EntitySchemaItem"}}}}}},"delete":{"operationId":"deleteSchema","summary":"deleteSchema","description":"Delete a schema, or a specific version of a schema","tags":["Schemas"],"parameters":[{"in":"path","name":"slug","required":true,"schema":{"$ref":"#/components/schemas/EntitySlug"}}],"responses":{"204":{"description":"Success"}}}},"/v1/entity/schemas/{slug}/versions":{"get":{"operationId":"getSchemaVersions","summary":"getSchemaVersions","description":"Get all versions of this schema ordered by the latest versions including drafts.","tags":["Schemas"],"parameters":[{"in":"path","name":"slug","required":true,"schema":{"$ref":"#/components/schemas/EntitySlug"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"versions":{"type":"array","items":{"$ref":"#/components/schemas/EntitySchemaItem"}},"drafts":{"type":"array","items":{"$ref":"#/components/schemas/EntitySchemaItem"}}}}}}}}}},"/v1/entity/schemas/blueprints":{"get":{"operationId":"listSchemaBlueprints","summary":"listSchemaBlueprints","description":"List canonical versions of all available schemas","tags":["Schemas"],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"results":{"type":"array","items":{"$ref":"#/components/schemas/EntitySchemaItem"}}}}}}}}}},"/v1/entity/schemas/{slug}/taxonomy/{taxonomySlug}":{"get":{"operationId":"listTaxonomyClassificationsForSchema","summary":"listTaxonomyClassificationsForSchema","description":"List taxonomy classifications for a given schema","tags":["Schemas"],"parameters":[{"in":"path","name":"slug","required":true,"schema":{"$ref":"#/components/schemas/EntitySlug"}},{"in":"path","name":"taxonomySlug","required":true,"schema":{"$ref":"#/components/schemas/TaxonomySlug"}},{"in":"query","name":"query","schema":{"type":"string"}},{"in":"query","name":"size","schema":{"type":"number"}}],"responses":{"200":{"description":"List of taxonomy classifications","content":{"application/json":{"schema":{"type":"object","properties":{"results":{"type":"array","items":{"$ref":"#/components/schemas/TaxonomyClassification"}}}}}}}}}},"/v1/entity:search":{"post":{"operationId":"searchEntities","summary":"searchEntities","description":"Search for entities. Supports ordering and pagination. Lucene query syntax supported for complex querying.\\n\\nPassing comma-separated `x-epilot-org-id` is supported for cross-org entity search.\\n\\n## Relations\\n\\nWhen `hydrate=true`, relation attributes are replaced in-place with nested entity values.\\n\\nExample:\\n```json\\n{\\n \\"_id\\": \\"123\\",\\n \\"name\\": \\"parent\\",\\n \\"_tags\\": [\\"parent\\"],\\n \\"contacts\\": {\\n \\"$relation\\": [\\n { \\"entity_id\\": \\"456\\", \\"_tags\\": [\\"primary\\"] },\\n { \\"entity_id\\": \\"789\\", \\"_tags\\": [\\"secondary\\"] },\\n ]\\n },\\n \\"addresses\\": {\\n \\"$relation_ref\\": [\\n { \\"entity_id\\": \\"123\\", \\"_tags\\": [\\"primary\\"], \\"path\\": \\"address.0\\" },\\n { \\"entity_id\\": \\"234\\", \\"_tags\\": [\\"secondary\\"], \\"path\\": \\"address.0\\" },\\n ]\\n }\\n}\\n```\\n\\nBecomes:\\n```json\\n{\\n \\"_id\\": \\"123\\",\\n \\"name\\": \\"parent\\",\\n \\"_tags\\": [\\"parent\\"],\\n \\"contacts\\": [\\n {\\n \\"$relation\\": { \\"entity_id\\": \\"456\\", \\"_tags\\": [\\"primary\\"] },\\n \\"_id\\": \\"456\\",\\n \\"name\\": \\"child 1\\",\\n \\"_tags\\": [\\"child\\"]\\n },\\n {\\n \\"$relation\\": { \\"entity_id\\": \\"789\\", \\"_tags\\": [\\"secondary\\"] },\\n \\"_id\\": \\"789\\",\\n \\"name\\": \\"child 2\\",\\n \\"_tags\\": [\\"child\\"]\\n }\\n ],\\n \\"addresses\\": [\\n {\\n \\"$relation_ref\\": { \\"entity_id\\": \\"123\\", \\"_tags\\": [\\"primary\\"], \\"path\\": \\"address.0\\" },\\n \\"_id\\": \\"123\\",\\n \\"address\\": \\"address 1\\",\\n \\"_tags\\": [\\"child\\"]\\n },\\n {\\n \\"$relation_ref\\": { \\"entity_id\\": \\"234\\", \\"_tags\\": [\\"secondary\\"], \\"path\\": \\"address.0\\" },\\n \\"_id\\": \\"234\\",\\n \\"address\\": \\"address 2\\",\\n \\"_tags\\": [\\"child\\"]\\n }\\n ]\\n}\\n```\\n","tags":["Entities"],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EntitySearchParams"}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EntitySearchResults"}},"text/csv":{"schema":{"type":"string"}}}}}}},"/v1/entity/{slug}":{"post":{"operationId":"createEntity","summary":"createEntity","description":"Creates a new entity using a key.\\n\\n## Activity\\n\\nIf no `activity_id` query parameter is provided, implicitly creates Activity of type `EntityCreated`\\n\\n## Relations\\n\\nTo create a relation, store a property object that defines a `$relation` array.\\n\\nExample:\\n\\n```json\\n{\\n \\"contacts\\": {\\n \\"$relation\\": [\\n { \\"entity_id\\": \\"3fa85f64-5717-4562-b3fc-2c963f66afa6\\" }\\n ]\\n }\\n}\\n```\\n\\nThe items in `$relation` support two properties:\\n- `entity_id` - The ID of the entity to link\\n- `_tags` - Tags or labels for the relation (optional)\\n","tags":["Entities"],"parameters":[{"in":"path","name":"slug","description":"Entity Schema","required":true,"schema":{"$ref":"#/components/schemas/EntitySlug"}},{"in":"query","name":"activity_id","description":"Activity to include in event feed","required":false,"schema":{"$ref":"#/components/schemas/ActivityId"}},{"in":"query","name":"async","description":"Don\'t wait for updated entity to become available in Search API. Useful for large migrations","required":false,"schema":{"type":"boolean","default":false}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Entity"},"examples":{"contact":{"$ref":"#/components/examples/ContactEntity"},"account":{"$ref":"#/components/examples/AccountEntity"},"product":{"$ref":"#/components/examples/ProductEntity"},"price":{"$ref":"#/components/examples/PriceEntity"},"tax":{"$ref":"#/components/examples/TaxEntity"},"order":{"$ref":"#/components/examples/OrderEntity"},"opportunity":{"$ref":"#/components/examples/OpportunityEntity"},"email template":{"$ref":"#/components/examples/EmailTemplateEntity"},"file":{"$ref":"#/components/examples/FileEntity"},"workflow step":{"$ref":"#/components/examples/WorkflowStepEntity"},"submission":{"$ref":"#/components/examples/SubmissionEntity"}}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EntityItem"}}}}}}},"/v1/entity/{slug}:upsert":{"patch":{"operationId":"upsertEntity","summary":"upsertEntity","description":"Create or update an entity using `unique_key`\\n\\n- If no entities are matched, a new entity is created.\\n- If exactly one entity is matched, a `PATCH`-style update is applied to the existing entity.\\n- If more than one entity is matched a `409` Error is returned\\n\\n## Activity\\n\\nIf no `activity_id` query parameter is provided, implicitly creates Activity of type `EntityCreated` or `EntityUpdated`\\n","tags":["Entities"],"parameters":[{"in":"path","name":"slug","description":"Entity Schema","required":true,"schema":{"$ref":"#/components/schemas/EntitySlug"}},{"in":"query","name":"activity_id","description":"Activity to include in event feed","required":false,"schema":{"$ref":"#/components/schemas/ActivityId"}},{"in":"query","name":"dry_run","description":"Dry Run mode = return matched entities but don\'t update them.","required":false,"schema":{"type":"boolean","default":false}},{"in":"query","name":"async","description":"Don\'t wait for updated entity to become available in Search API. Useful for large migrations","required":false,"schema":{"type":"boolean","default":false}}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"unique_key":{"type":"array","items":{"type":"string","example":"email.0.email"},"example":["_id"]},"entity":{"$ref":"#/components/schemas/Entity"}},"required":["unique_key","entity"]}}}},"responses":{"200":{"description":"Entity was updated","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EntityItem"}}}},"201":{"description":"Entity was created","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EntityItem"}}}},"409":{"description":"Conflict: multiple entities were matched with `unique_key`"}}}},"/v1/entity/{slug}/{id}":{"get":{"operationId":"getEntity","summary":"getEntity","description":"Gets Entity and relations by id.\\n\\n## Relations\\n\\nWhen `hydrate=true`, relation attributes are replaced in-place with nested entity values.\\n\\nExample:\\n```json\\n{\\n \\"_id\\": \\"123\\",\\n \\"name\\": \\"parent\\",\\n \\"_tags\\": [\\"parent\\"],\\n \\"contacts\\": {\\n \\"$relation\\": [\\n { \\"entity_id\\": \\"456\\", \\"_tags\\": [\\"primary\\"] },\\n { \\"entity_id\\": \\"789\\", \\"_tags\\": [\\"secondary\\"] },\\n ]\\n },\\n \\"addresses\\": {\\n \\"$relation_ref\\": [\\n { \\"entity_id\\": \\"123\\", \\"_tags\\": [\\"primary\\"], \\"path\\": \\"address.0\\" },\\n { \\"entity_id\\": \\"234\\", \\"_tags\\": [\\"secondary\\"], \\"path\\": \\"address.0\\" },\\n ]\\n }\\n}\\n```\\n\\nBecomes:\\n```json\\n{\\n \\"_id\\": \\"123\\",\\n \\"name\\": \\"parent\\",\\n \\"_tags\\": [\\"parent\\"],\\n \\"contacts\\": [\\n {\\n \\"$relation\\": { \\"entity_id\\": \\"456\\", \\"_tags\\": [\\"primary\\"] },\\n \\"_id\\": \\"456\\",\\n \\"name\\": \\"child 1\\",\\n \\"_tags\\": [\\"child\\"]\\n },\\n {\\n \\"$relation\\": { \\"entity_id\\": \\"789\\", \\"_tags\\": [\\"secondary\\"] },\\n \\"_id\\": \\"789\\",\\n \\"name\\": \\"child 2\\",\\n \\"_tags\\": [\\"child\\"]\\n }\\n ],\\n \\"addresses\\": [\\n {\\n \\"$relation_ref\\": { \\"entity_id\\": \\"123\\", \\"_tags\\": [\\"primary\\"], \\"path\\": \\"address.0\\" },\\n \\"_id\\": \\"123\\",\\n \\"address\\": \\"address 1\\",\\n \\"_tags\\": [\\"child\\"]\\n },\\n {\\n \\"$relation_ref\\": { \\"entity_id\\": \\"234\\", \\"_tags\\": [\\"secondary\\"], \\"path\\": \\"address.0\\" },\\n \\"_id\\": \\"234\\",\\n \\"address\\": \\"address 2\\",\\n \\"_tags\\": [\\"child\\"]\\n }\\n ]\\n}\\n```\\n","tags":["Entities"],"parameters":[{"in":"path","name":"slug","description":"Entity Type","required":true,"schema":{"$ref":"#/components/schemas/EntitySlug"}},{"in":"path","name":"id","description":"Entity id","required":true,"schema":{"$ref":"#/components/schemas/EntityId"}},{"in":"query","name":"hydrate","description":"When true, enables entity hydration to resolve nested $relation & $relation_ref references in-place.","schema":{"default":false,"type":"boolean"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"entity":{"$ref":"#/components/schemas/EntityItem"},"relations":{"type":"array","items":{"$ref":"#/components/schemas/EntityItem"}}}}}}}}},"put":{"operationId":"updateEntity","summary":"updateEntity","description":"Updates an Entity\\n\\n## Activity\\n\\nIf no `activity_id` query parameter is provided, implicitly creates Activity of type `EntityUpdated`\\n\\n## Relations\\n\\nTo create a relation, store a property that defines a `$relation` array.\\n\\nExample:\\n\\n```json\\n{\\n \\"contacts\\": {\\n \\"$relation\\": [\\n { \\"entity_id\\": \\"3fa85f64-5717-4562-b3fc-2c963f66afa6\\" }\\n ]\\n }\\n}\\n```\\n\\nThe items in `$relation` support two properties:\\n- `entity_id` - The ID of the entity to link\\n- `_tags` - Tags or labels for the relation (optional)\\n","tags":["Entities"],"parameters":[{"in":"path","name":"slug","description":"Entity Type","required":true,"schema":{"$ref":"#/components/schemas/EntitySlug"}},{"in":"path","name":"id","description":"Entity id","required":true,"schema":{"$ref":"#/components/schemas/EntityId"}},{"in":"query","name":"activity_id","description":"Activity to include in event feed","required":false,"schema":{"$ref":"#/components/schemas/ActivityId"}},{"in":"query","name":"async","description":"Don\'t wait for updated entity to become available in Search API. Useful for large migrations","required":false,"schema":{"type":"boolean","default":false}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Entity"},"example":{}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EntityItem"}}}}}},"delete":{"operationId":"deleteEntity","summary":"deleteEntity","description":"Deletes an Entity\\n\\n## Activity\\n\\nIf no `activity_id` query parameter is provided, implicitly creates Activity of type `EntityDeleted`\\n","tags":["Entities"],"parameters":[{"in":"path","name":"slug","description":"Entity Type","required":true,"schema":{"$ref":"#/components/schemas/EntitySlug"}},{"in":"path","name":"id","required":true,"schema":{"$ref":"#/components/schemas/EntityId"}},{"in":"query","name":"activity_id","description":"Activity to include in event feed","required":false,"schema":{"$ref":"#/components/schemas/ActivityId"}}],"responses":{"200":{"description":"Success"}}}},"/v1/entity:autocomplete":{"get":{"operationId":"autocomplete","summary":"autocomplete","description":"Autocomplete entity attributes\\n","tags":["Entities"],"parameters":[{"name":"input","in":"query","description":"Input to autocomplete","schema":{"type":"string"}},{"name":"attribute","in":"query","description":"Autocomplete attribute","schema":{"type":"string","example":"_tags"},"required":true},{"name":"slug","in":"query","description":"Limit results to entity schema","schema":{"$ref":"#/components/schemas/EntitySlug"}},{"name":"size","in":"query","description":"Maximum number of results to return","schema":{"type":"integer","default":10,"minimum":1,"maximum":250}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"hits":{"type":"number","example":1},"results":{"type":"array","items":{"anyOf":[{"type":"string"},{"type":"boolean"},{"type":"object","additionalProperties":true}]},"example":["value"]}}}}}}}}},"/v1/entity/activity":{"post":{"operationId":"createActivity","summary":"createActivity","description":"Create an activity that can be displayed in activity feeds.\\n\\n- All activites are published as events on the event bus\\n- Entity mutations are always part of an activity\\n","tags":["Activity"],"parameters":[{"in":"query","name":"entities","description":"Comma-separated list of entities which the activity primarily concerns","style":"form","explode":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/EntityId"}}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Activity"}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ActivityItem"}}}}}}},"/v1/entity/activity/{id}":{"get":{"operationId":"getActivity","summary":"getActivity","description":"Get activity by id","tags":["Activity"],"parameters":[{"in":"path","name":"id","description":"Activity Id","required":true,"schema":{"$ref":"#/components/schemas/ActivityId"}},{"in":"query","name":"operations_size","description":"Maximum number of operations to include in response (default: 10)\\n","schema":{"type":"integer","minimum":0,"maximum":1000,"default":25}},{"in":"query","name":"operations_from","description":"Pagination offset for operations\\n","schema":{"type":"integer","minimum":0,"default":0}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ActivityItem"}}}}}}},"/v1/entity/activity/{id}:attach":{"post":{"operationId":"attachActivity","summary":"attachActivity","description":"Attach existing activity to entity activity feeds","tags":["Activity"],"parameters":[{"in":"path","name":"id","description":"Activity Id","required":true,"schema":{"$ref":"#/components/schemas/ActivityId"}},{"in":"query","name":"entities","description":"Comma-separated list of entities which the activity primarily concerns","style":"form","explode":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/EntityId"}}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ActivityItem"}}}}}}},"/v1/entity/{slug}/{id}/activity":{"get":{"operationId":"getEntityActivityFeed","summary":"getEntityActivityFeed","description":"Get activity feed for an entity\\n","tags":["Activity"],"parameters":[{"in":"path","name":"slug","description":"Entity Type","required":true,"schema":{"$ref":"#/components/schemas/EntitySlug"}},{"in":"path","name":"id","description":"Entity id","required":true,"schema":{"$ref":"#/components/schemas/EntityId"}},{"in":"query","name":"after","description":"Get activities after this timestamp","schema":{"type":"string","format":"date-time"}},{"in":"query","name":"before","description":"get activities before this timestamp","schema":{"type":"string","format":"date-time"}},{"in":"query","name":"from","description":"start from page","schema":{"type":"integer","minimum":0,"default":0}},{"in":"query","name":"size","description":"max number of results to return","schema":{"type":"integer","minimum":1,"default":25}},{"in":"query","name":"type","description":"Activity type","schema":{"type":"string","example":"SyncActivity"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"total":{"type":"integer","example":1},"results":{"type":"array","items":{"$ref":"#/components/schemas/ActivityItem"}}}}}}}}}},"/v1/entity/{slug}/{id}/relations":{"get":{"operationId":"getRelations","summary":"getRelations","description":"Returns 1st level direct relations for an entity.\\n\\nYou can control whether to return the full entity or just the relation item with the `?hydrate` query param.\\n\\nReverse relations i.e. entities referring to this entity are included with the `?include_reverse` query param.\\n","tags":["Relations"],"parameters":[{"in":"path","name":"slug","description":"Entity Type","required":true,"schema":{"$ref":"#/components/schemas/EntitySlug"}},{"in":"path","name":"id","description":"Entity id","required":true,"schema":{"$ref":"#/components/schemas/EntityId"}},{"in":"query","name":"hydrate","description":"When true, expand relation items with full blown entities.","schema":{"default":false,"type":"boolean"}},{"in":"query","name":"include_reverse","description":"When true, includes reverse relations in response (other entities pointing to this entity)","schema":{"default":false,"type":"boolean"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetRelationsResp"},"example":[{"attribute":"contacts","entity_id":"ed27830b-984c-4bca-9b87-2849bb5789ca","_tags":["primary","billing"]},{"attribute":"contacts","entity_id":"fadfc950-6e43-4e38-bae0-ffcf4b8b90e1"},{"_id":"9924c4de-d3ed-4752-821d-fc0b9bd57c1b","order_number":"a34234jd","customer_email":"johndoe@epilot.cloud","billing_first_name":"john","billing_last_name":"doe","billing_company_name":"ePilot Gmbh","billing_vat":"234823948,","billing_email":"johndoe@nowhere.com","billing_phone":"1234234545,","billing_address":"wallstreet, 1","billing_contact":"villy or zilly","$relation":{"attribute":"orders","entity_id":"9924c4de-d3ed-4752-821d-fc0b9bd57c1b","_tags":["solar_panel","one_time"]}}]}}}}},"post":{"operationId":"addRelations","summary":"addRelations","description":"Relates one or more entities to parent entity by adding items to a relation attribute","tags":["Relations"],"parameters":[{"in":"path","name":"slug","description":"Entity Type","required":true,"schema":{"$ref":"#/components/schemas/EntitySlug"}},{"in":"path","name":"id","description":"Entity id","required":true,"schema":{"$ref":"#/components/schemas/EntityId"}},{"in":"query","name":"async","description":"Don\'t wait for updated entity to become available in Search API. Useful for large migrations","required":false,"schema":{"type":"boolean","default":false}}],"requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/RelationItem"}},"example":[{"attribute":"contacts","entity_id":"e8878f62-2d3d-4c86-bfe7-01a4180ff048","_tags":["billing"]},{"attribute":"contacts","entity_id":"ee8a2af9-fb36-4981-b848-4e65275851af"},{"attribute":"opportunities","entity_id":"30990430-a53d-41a2-83db-2de072dc4dd4"}]}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RelationItem"}}}}}}},"/v1/entity/{slug}/{id}/relations/{attribute}/{entity_id}":{"put":{"operationId":"updateRelation","summary":"updateRelation","description":"Updates an existing relation between two entities.","tags":["Relations"],"parameters":[{"in":"path","name":"slug","description":"Entity Type","required":true,"schema":{"$ref":"#/components/schemas/EntitySlug"}},{"in":"path","name":"id","description":"Entity id","required":true,"schema":{"$ref":"#/components/schemas/EntityId"}},{"in":"path","name":"attribute","description":"The attribute that express meaning","required":true,"schema":{"type":"string"}},{"in":"path","name":"entity_id","description":"The attribute that express meaning","required":true,"schema":{"type":"string"}},{"in":"query","name":"async","description":"Don\'t wait for updated entity to become available in Search API. Useful for large migrations","required":false,"schema":{"type":"boolean","default":false}}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"_tags":{"type":"array","items":{"type":"string"}}}},"example":{"_tags":["billing","prepaid"]}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RelationItem"}}}}}},"delete":{"operationId":"deleteRelation","summary":"deleteRelation","description":"Removes relation between two entities","tags":["Relations"],"parameters":[{"in":"path","name":"slug","description":"Entity Type","required":true,"schema":{"$ref":"#/components/schemas/EntitySlug"}},{"in":"path","name":"id","description":"Entity id","required":true,"schema":{"$ref":"#/components/schemas/EntityId"}},{"in":"path","name":"attribute","description":"The attribute that express meaning","required":true,"schema":{"type":"string"}},{"in":"path","name":"entity_id","description":"The attribute that express meaning","required":true,"schema":{"type":"string"}},{"in":"query","name":"async","description":"Don\'t wait for updated entity to become available in Search API. Useful for large migrations","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"204":{"description":"Relation deleted with success."}}}},"/v1/entity:export":{"post":{"operationId":"exportEntities","summary":"exportEntities","description":"create export file of entities","tags":["Export"],"parameters":[{"in":"query","name":"job_id","description":"Export Job Id to get the result","schema":{"$ref":"#/components/schemas/ExportJobId"}},{"in":"query","name":"is_template","description":"Pass \'true\' to generate import template","schema":{"$ref":"#/components/schemas/IsTemplate"}},{"in":"query","name":"language","description":"Export headers translation language","schema":{"$ref":"#/components/schemas/Language"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EntitySearchParams"}}}},"responses":{"201":{"description":"created export url and download url"}}}},"/v1/entity:import":{"post":{"operationId":"importEntities","summary":"importEntities","description":"import entity data from","tags":["Export"],"parameters":[{"in":"query","name":"job_id","description":"Import Job Id to get the result","schema":{"$ref":"#/components/schemas/ExportJobId"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EntityImportParams"}}}},"responses":{"201":{"description":"created import url and download url"}}}},"/v1/entity/views":{"get":{"operationId":"listSavedViews","summary":"listSavedViews","description":"Get the Saved Views based on the schema","tags":["Saved Views"],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"results":{"type":"array","items":{"$ref":"#/components/schemas/SavedViewItem"}}}}}}}}}},"/v1/entity/view":{"post":{"operationId":"createSavedView","summary":"createSavedView","description":"Creates a new saved view","tags":["Saved Views"],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SavedView"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SavedViewItem"}}}}}}},"/v1/entity/view/{id}":{"get":{"operationId":"getSavedView","summary":"getSavedView","description":"Gets Saved View configuration by id.","tags":["Saved Views"],"parameters":[{"in":"path","name":"id","description":"View id","required":true,"schema":{"$ref":"#/components/schemas/SavedViewId"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"view":{"$ref":"#/components/schemas/SavedViewItem"}}}}}}}},"put":{"operationId":"updateSavedView","summary":"updateSavedView","description":"Updates a saved view","tags":["Saved Views"],"parameters":[{"in":"path","name":"id","description":"View id","required":true,"schema":{"$ref":"#/components/schemas/SavedViewId"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SavedView"}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SavedViewItem"}}}}}},"delete":{"operationId":"deleteSavedView","summary":"deleteSavedView","description":"Deletes a saved view","parameters":[{"in":"path","name":"id","description":"View id","required":true,"schema":{"$ref":"#/components/schemas/SavedViewId"}}],"tags":["Saved Views"],"responses":{"200":{"description":"List of all available saved views"}}}},"/v1/entity/listTaxonomies":{"get":{"operationId":"listTaxonomies","summary":"listTaxonomies","description":"List taxonomies in an organisation","tags":["Taxonomy"],"responses":{"200":{"description":"Returns list of taxonomies in an organisation","content":{"application/json":{"schema":{"type":"object","properties":{"results":{"type":"array","items":{"$ref":"#/components/schemas/Taxonomy"}}}}}}}}}},"/v1/entity/taxonomies/{taxonomySlug}":{"get":{"operationId":"getTaxonomy","summary":"getTaxonomy","description":"Get taxonomy by slug","tags":["Taxonomy"],"parameters":[{"in":"path","name":"taxonomySlug","description":"Taxonomy slug to return taxonomy for","schema":{"$ref":"#/components/schemas/TaxonomySlug"},"required":true}],"responses":{"200":{"description":"Taxonomy","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Taxonomy"}}}}}}},"/v1/entity/taxonomies/{taxonomySlug}:autocomplete":{"get":{"operationId":"taxonomyAutocomplete","summary":"taxonomyAutocomplete","description":"Taxonomies autocomplete","tags":["Taxonomy"],"parameters":[{"in":"path","name":"taxonomySlug","description":"Limit results to slug","schema":{"type":"string"},"required":true},{"in":"query","name":"query","description":"Input to autocomplete","schema":{"type":"string"}},{"in":"query","name":"size","description":"Minimum number of results to return","schema":{"type":"number"}}],"responses":{"200":{"description":"Taxonomy classifications","content":{"application/json":{"schema":{"type":"object","properties":{"results":{"type":"array","items":{"$ref":"#/components/schemas/TaxonomyClassification"}}}}}}}}}},"/v1/entity/taxonomies/classifications:search":{"post":{"operationId":"taxonomiesClassificationsSearch","summary":"taxonomiesClassificationsSearch","description":"List taxonomy classifications in an organisation based on taxonomy slug","tags":["Taxonomy"],"parameters":[{"in":"query","name":"taxonomySlug","description":"Taxonomy slug","schema":{"type":"string"},"required":true}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"classificationIds":{"type":"array","items":{"$ref":"#/components/schemas/ClassificationId"}}}}}}},"responses":{"200":{"description":"Returns list of taxonomy classifications","content":{"application/json":{"schema":{"type":"object","properties":{"results":{"type":"array","items":{"$ref":"#/components/schemas/TaxonomyClassification"}}}}}}}}}},"/v1/entity/taxonomies/{taxonomySlug}/classifications":{"post":{"operationId":"updateClassificationsForTaxonomy","summary":"updateClassificationsForTaxonomy","description":"Update taxonomies in an organisation based in taxonomy slug","tags":["Taxonomy"],"parameters":[{"in":"path","name":"taxonomySlug","description":"Taxonomy slug","schema":{"type":"string"},"required":true}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ClassificationsUpdate"}}}},"responses":{"200":{"description":"Taxonomies classifications","content":{"application/json":{"schema":{"type":"object","properties":{"created":{"type":"array","items":{"$ref":"#/components/schemas/TaxonomyClassification"}},"updated":{"type":"array","items":{"$ref":"#/components/schemas/TaxonomyClassification"}},"deleted":{"type":"object","items":{"$ref":"#/components/schemas/ClassificationId"}}}}}}}}}}},"components":{"securitySchemes":{"EpilotAuth":{"type":"http","scheme":"bearer","description":"Authorization header with epilot OAuth2 bearer token","bearerFormat":"JWT"},"EpilotOrg":{"description":"Overrides the target organization to allow shared tenantaccess","name":"x-epilot-org-id","in":"header","type":"apiKey"}},"schemas":{"ExportJobId":{"description":"Export Job Id to get the result","type":"string"},"Language":{"description":"Export headers translation Language","type":"string"},"IsTemplate":{"description":"Pass \'true\' to generate import template","type":"boolean"},"SchemaId":{"description":"Generated uuid for schema","type":"string","format":"uuid"},"EntitySchema":{"description":"The \\"type\\" of an Entity. Describes the shape. Includes Entity Attributes, Relations and Capabilities.","type":"object","properties":{"slug":{"$ref":"#/components/schemas/EntitySlug"},"version":{"type":"integer","minimum":1},"blueprint":{"$ref":"#/components/schemas/BlueprintEntityId"},"feature_flag":{"type":"string","example":"FF_MY_FEATURE_FLAG","description":"This schema should only be active when the feature flag is enabled"},"enable_setting":{"description":"This schema should only be active when one of the organization settings is enabled","type":"array","items":{"type":"string","example":"360_features"}},"name":{"description":"User-friendly identifier for the entity schema","type":"string","example":"Contact"},"plural":{"type":"string","example":"Contacts"},"published":{"type":"boolean","example":false},"draft":{"type":"boolean","example":false},"icon":{"type":"string","example":"person"},"title_template":{"type":"string","description":"Template for rendering the title field. Uses handlebars","example":"{{first_name}} {{last_name}}"},"ui_config":{"type":"object","properties":{"table_view":{"$ref":"#/components/schemas/EntityViewConfig"},"create_view":{"$ref":"#/components/schemas/EntityViewConfig"},"edit_view":{"$ref":"#/components/schemas/EntityViewConfig"},"single_view":{"$ref":"#/components/schemas/EntityViewConfig"},"list_item":{"type":"object","properties":{"summary_attributes":{"type":"array","items":{"anyOf":[{"$ref":"#/components/schemas/SummaryAttribute"},{"type":"string","description":"List of attributes to show in list item","example":"email"}]}}}},"sharing":{"type":"object","properties":{"show_sharing_button":{"type":"boolean","description":"Show the sharing button in entity detail view","example":true}}}}},"capabilities":{"type":"array","items":{"$ref":"#/components/schemas/EntityCapability"}},"group_settings":{"type":"array","description":"A dictionary of Group Titles and associated settings if present.","items":{"type":"object","properties":{"label":{"type":"string"},"id":{"type":"string"},"expanded":{"type":"boolean"},"render_condition":{"type":"string","example":"_is_composite_price = \\"false\\""},"order":{"description":"Render order of the group","type":"integer","default":0},"feature_flag":{"type":"string","example":"FF_MY_FEATURE_FLAG","description":"This group should only be active when the feature flag is enabled"},"setting_flag":{"type":"string","example":"MY_SETTING","description":"This group should only be active when the setting is enabled"},"info_tooltip_title":{"type":"object","properties":{"key":{"type":"string"},"default":{"type":"string"}}},"_purpose":{"type":"array","items":{"$ref":"#/components/schemas/ClassificationId"}}},"required":["label","id"]},"example":{"Order Info":{"expanded":true},"Contact Details":{"expanded":false,"info_tooltip_title":{"key":"partner.partner_information_group_tooltip","default":"These informations are provided by the partner company and cannot be edited."}}}},"layout_settings":{"type":"object","description":"Custom grid definitions for the layout. These settings are composed by managed and un-managed properties:\\n- Managed Properties: are interpreted and transformed into layout styles\\n- Un-managed Properties: are appended as styles into the attribute mounting node\\n","additionalProperties":true,"properties":{"grid_gap":{"type":"string","description":"Defines the grid gap for the mounting node of the attribute."},"grid_template_columns":{"type":"string","description":"Defines the grid column template for the mounting node of the attribute."}}},"dialog_config":{"type":"object","additionalProperties":true},"attributes":{"description":"An ordered list of attributes the entity contains","type":"array","items":{"$ref":"#/components/schemas/Attribute"},"example":[{"name":"email","type":"email","label":"Email","required":true},{"name":"first_name","type":"string","label":"First Name"},{"name":"last_name","type":"string","label":"Last Name"},{"name":"birthdate","type":"date","label":"Birthdate"},{"name":"salutation","type":"select","label":"Salutation","options":["Mr.","Ms. / Mrs.","Other"]},{"name":"marketing_permission","type":"boolean","label":"Marketing permission"},{"name":"image","type":"file","label":"Image"}]},"explicit_search_mappings":{"$ref":"#/components/schemas/SearchMappings"}},"required":["slug","name","plural"]},"EntitySchemaItem":{"allOf":[{"type":"object","properties":{"id":{"$ref":"#/components/schemas/SchemaId"},"created_at":{"type":"string"},"updated_at":{"type":"string"},"comment":{"type":"string"},"source":{"type":"object","properties":{"id":{"type":"string"},"type":{"type":"string"}}}}},{"$ref":"#/components/schemas/EntitySchema"}]},"Attribute":{"anyOf":[{"$ref":"#/components/schemas/TextAttribute"},{"$ref":"#/components/schemas/LinkAttribute"},{"$ref":"#/components/schemas/DateAttribute"},{"$ref":"#/components/schemas/CountryAttribute"},{"$ref":"#/components/schemas/BooleanAttribute"},{"$ref":"#/components/schemas/SelectAttribute"},{"$ref":"#/components/schemas/MultiSelectAttribute"},{"$ref":"#/components/schemas/StatusAttribute"},{"$ref":"#/components/schemas/SequenceAttribute"},{"$ref":"#/components/schemas/RelationAttribute"},{"$ref":"#/components/schemas/UserRelationAttribute"},{"$ref":"#/components/schemas/AddressRelationAttribute"},{"$ref":"#/components/schemas/PaymentMethodRelationAttribute"},{"$ref":"#/components/schemas/CurrencyAttribute"},{"$ref":"#/components/schemas/RepeatableAttribute"},{"$ref":"#/components/schemas/TagsAttribute"},{"$ref":"#/components/schemas/NumberAttribute"},{"$ref":"#/components/schemas/ConsentAttribute"},{"$ref":"#/components/schemas/InternalAttribute"},{"$ref":"#/components/schemas/OrderedListAttribute"},{"$ref":"#/components/schemas/FileAttribute"},{"$ref":"#/components/schemas/ComputedAttribute"},{"$ref":"#/components/schemas/PartnerStatusAttribute"},{"$ref":"#/components/schemas/InvitationEmailAttribute"},{"$ref":"#/components/schemas/AutomationAttribute"},{"$ref":"#/components/schemas/InternalUserAttribute"},{"$ref":"#/components/schemas/PurposeAttribute"}]},"BaseAttribute":{"type":"object","properties":{"name":{"type":"string"},"label":{"type":"string"},"placeholder":{"type":"string"},"hidden":{"description":"Do not render attribute in entity views","type":"boolean","default":false},"show_in_table":{"description":"Render as a column in table views. When defined, overrides `hidden`","type":"boolean"},"required":{"type":"boolean","default":false},"readonly":{"type":"boolean","default":false},"deprecated":{"type":"boolean","default":false},"default_value":{},"group":{"description":"Which group the attribute should appear in. Accepts group ID or group name","type":"string"},"order":{"description":"Attribute sort order (ascending) in group","type":"integer","example":0},"layout":{"type":"string","example":"full_width"},"hide_label":{"type":"boolean","description":"When set to true, will hide the label of the field."},"icon":{"type":"string","description":"Code name of the icon to used to represent this attribute.\\nThe value must be a valid @epilot/base-elements Icon name\\n"},"render_condition":{"type":"string","description":"Defines the conditional rendering expression for showing this field.\\nWhen a valid expression is parsed, their evaluation defines the visibility of this attribute.\\nNote: Empty or invalid expression have no effect on the field visibility.\\n"},"_purpose":{"type":"array","items":{"$ref":"#/components/schemas/ClassificationId"}},"constraints":{"type":"object","description":"A set of constraints applicable to the attribute.\\nThese constraints should and will be enforced by the attribute renderer.\\n","example":{"disablePast":true}},"feature_flag":{"type":"string","example":"FF_MY_FEATURE_FLAG","description":"This attribute should only be active when the feature flag is enabled"},"setting_flag":{"type":"string","example":"MY_SETTING","description":"This attribute should only be active when the setting is enabled"},"value_formatter":{"type":"string"},"preview_value_formatter":{"type":"string"},"entity_builder_disable_edit":{"description":"Setting to `true` disables editing the attribute on the entity builder UI","type":"boolean","default":false},"protected":{"description":"Setting to `true` prevents the attribute from being modified / deleted","type":"boolean","default":true}},"required":["name","label"]},"TextAttribute":{"allOf":[{"$ref":"#/components/schemas/BaseAttribute"},{"type":"object","description":"Textarea or text input","properties":{"type":{"type":"string","enum":["string"]},"multiline":{"type":"boolean"}}}]},"LinkAttribute":{"allOf":[{"$ref":"#/components/schemas/BaseAttribute"},{"type":"object","description":"Link with title and href","properties":{"type":{"type":"string","enum":["link"]}}}]},"InternalAttribute":{"allOf":[{"$ref":"#/components/schemas/BaseAttribute"},{"type":"object","description":"No UI representation","properties":{"type":{"type":"string","enum":["internal"]}}}]},"BooleanAttribute":{"allOf":[{"$ref":"#/components/schemas/BaseAttribute"},{"type":"object","description":"Yes / No Toggle","properties":{"type":{"type":"string","enum":["boolean"]}}}]},"DateAttribute":{"allOf":[{"$ref":"#/components/schemas/BaseAttribute"},{"type":"object","description":"Date or Datetime picker","properties":{"type":{"type":"string","enum":["date","datetime"]}}}]},"CountryAttribute":{"allOf":[{"$ref":"#/components/schemas/BaseAttribute"},{"type":"object","description":"Country picker","properties":{"type":{"type":"string","enum":["country"]}}}]},"SelectAttribute":{"allOf":[{"$ref":"#/components/schemas/BaseAttribute"},{"type":"object","description":"Dropdown select","properties":{"type":{"type":"string","enum":["select","radio"]},"options":{"type":"array","items":{"anyOf":[{"type":"string","nullable":true},{"type":"object","properties":{"value":{"type":"string"},"title":{"type":"string"}},"required":["value"]}]}},"allow_any":{"type":"boolean","description":"Allow arbitrary input values in addition to provided options"}}}]},"MultiSelectAttribute":{"allOf":[{"$ref":"#/components/schemas/BaseAttribute"},{"type":"object","description":"Multi Choice Selection","properties":{"type":{"type":"string","enum":["multiselect","checkbox"]},"disable_case_sensitive":{"type":"boolean","nullable":true,"description":"controls if the matching of values against the options is case sensitive or not"},"allow_extra_options":{"type":"boolean","nullable":true,"description":"controls if the 360 ui will allow the user to enter a value which is not defined by the options"},"options":{"type":"array","items":{"anyOf":[{"type":"string","nullable":true},{"type":"object","properties":{"value":{"type":"string"},"title":{"type":"string"}},"required":["value"]}]}},"allow_any":{"type":"boolean","description":"Allow arbitrary input values in addition to provided options"}}}]},"StatusAttribute":{"allOf":[{"$ref":"#/components/schemas/BaseAttribute"},{"type":"object","description":"Status select","properties":{"type":{"type":"string","enum":["status"]},"options":{"type":"array","items":{"anyOf":[{"type":"string","nullable":true},{"type":"object","properties":{"value":{"type":"string"},"title":{"type":"string"}},"required":["value"]}]}}}}]},"SequenceAttribute":{"allOf":[{"$ref":"#/components/schemas/BaseAttribute"},{"type":"object","description":"Sequence of unique identifiers","properties":{"type":{"type":"string","enum":["sequence"]},"prefix":{"description":"Prefix added before the sequence number","type":"string","example":"OR-"},"start_number":{"type":"integer","minimum":0}}}]},"FileAttribute":{"allOf":[{"$ref":"#/components/schemas/BaseAttribute"},{"type":"object","description":"File or Image Attachment","properties":{"type":{"type":"string","enum":["image","file"]},"multiple":{"type":"boolean"},"allowed_extensions":{"description":"List of file extensions (without the dot suffix)","type":"array","items":{"type":"string","example":"csv"}},"display_images_landscaped":{"type":"boolean","description":"Controls how the images are presented to the user during upload on the Entity Details view."},"enable_description":{"type":"boolean","description":"When set to true, an i18n description will be used alongside the attribute label.\\nThis description should be set through the platform locales in the form: `file.{attribute_name}.description_text`.\\n"},"default_access_control":{"type":"string","enum":["public-read","private"]}},"required":["type"]}]},"CurrencyAttribute":{"allOf":[{"$ref":"#/components/schemas/BaseAttribute"},{"type":"object","description":"Currency input","properties":{"type":{"type":"string","enum":["currency"]},"currency_selector_only":{"type":"boolean","default":false},"currency":{"description":"An array of currency configurations with a country code (ISO-4217)","type":"array","items":{"anyOf":[{"type":"object","description":"A currency configuration","properties":{"code":{"type":"string"},"description":{"type":"string"},"symbol":{"type":"string"},"flag":{"type":"string"}},"required":["code","description","symbol"],"example":{"code":"EUR","description":"Euro","symbol":"€","flag":"🇪🇺"}}]}}},"required":["type","currency"]}]},"SummaryField":{"type":"object","description":"Summary Fields are displayed inside list view as a resume of the relation entity.","properties":{"field":{"type":"string","description":"The field from the entity attributes to display"},"display_as":{"type":"string","description":"An hint on how to display the summary field"}}},"RelationAttribute":{"allOf":[{"$ref":"#/components/schemas/BaseAttribute"},{"type":"object","description":"Entity Relationship","properties":{"type":{"type":"string","enum":["relation"]},"relation_type":{"type":"string","enum":["has_many","has_one"]},"reverse_attributes":{"description":"Map of schema slug to target relation attribute","type":"object","additionalProperties":{"type":"string","example":"contact.account"},"example":{"contact":"account","opportunity":"customer"}},"relation_affinity_mode":{"description":"Weak relation attributes are kept when duplicating an entity. Strong relation attributes are discarded when duplicating an entity.","type":"string","enum":["weak","strong"]},"enable_relation_picker":{"type":"boolean","default":true,"description":"When enable_relation_picker is set to true the user will be able to pick existing relations as values. Otherwise, the user will need to create new relation to link."},"edit_mode":{"type":"string","enum":["list-view"]},"details_view_mode_enabled":{"type":"boolean","default":false,"description":"Enables the preview, edition, and creation of relation items on a Master-Details view mode."},"actions":{"type":"array","items":{"type":"object","properties":{"action_type":{"type":"string","enum":["add_existing","create_new","create_from_existing"],"description":"The action type. Currently supported actions:\\n\\n| action | description |\\n|--------|-------------|\\n| add_existing | Enables the user to pick an existing entity to link as relation |\\n| create_new | Enables the user to create a new entity using the first/main `allowed_schemas` schema\\n| create_from_existing | Enables the user to pick an existing entity to clone from, while creating a blank new entity to link as relation |\\n"},"label":{"type":"string","description":"The action label or action translation key (i18n)"},"default":{"type":"boolean","description":"Sets the action as the default action, visible as the main action button."},"feature_flag":{"type":"string","description":"Name of the feature flag that enables this action"},"setting_flag":{"type":"string","description":"Name of the setting flag that enables this action"},"new_entity_item":{"type":"object","allOf":[{"$ref":"#/components/schemas/EntityItem"}]}}},"example":{"value":[{"action_type":"add_existing","label":"entityrelation.add_existing","default":true},{"action_type":"create_new","label":"entityrelation.create_new"},{"action_type":"create_from_existing","label":"entityrelation.create_from_existing"}]}},"drawer_size":{"type":"string","enum":["small","medium","large"]},"icon":{"type":"string"},"summary_fields":{"type":"array","items":{"anyOf":[{"type":"string","description":"The field name from the entity attributes to display"},{"$ref":"#/components/schemas/SummaryField"}]}},"has_primary":{"type":"boolean"},"allowedSchemas":{"type":"array","items":{"$ref":"#/components/schemas/EntitySlug"}},"enable_relation_tags":{"type":"boolean","default":true,"description":"When enable_relation_tags is set to true the user will be able to set tags(labels) in each relation item."},"add_button_label":{"type":"string","description":"Optional label for the add button. The translated value for add_button_lable is used, if found else the string is used as is."},"search_placeholder":{"type":"string","description":"Optional placeholder text for the relation search input. The translated value for search_placeholder is used, if found else the string is used as is."}}}]},"UserRelationAttribute":{"allOf":[{"$ref":"#/components/schemas/BaseAttribute"},{"type":"object","description":"User Relationship","properties":{"type":{"type":"string","enum":["relation_user"]},"multiple":{"type":"boolean","default":false}}}]},"AddressRelationAttribute":{"allOf":[{"$ref":"#/components/schemas/BaseAttribute"},{"type":"object","description":"Reference to an address attribute of another entity","properties":{"type":{"type":"string","enum":["relation_address"]},"has_primary":{"type":"boolean"}}}]},"PaymentMethodRelationAttribute":{"allOf":[{"$ref":"#/components/schemas/BaseAttribute"},{"type":"object","description":"Reference to a payment method attribute of another entity","properties":{"type":{"type":"string","enum":["relation_payment_method"]},"has_primary":{"type":"boolean"}}}]},"InvitationEmailAttribute":{"allOf":[{"$ref":"#/components/schemas/BaseAttribute"},{"type":"object","description":"Email address for send invitation","properties":{"type":{"type":"string","enum":["invitation_email"]}}}]},"AutomationAttribute":{"allOf":[{"$ref":"#/components/schemas/BaseAttribute"},{"type":"object","description":"Automation entity","properties":{"type":{"type":"string","enum":["automation"]}}}]},"InternalUserAttribute":{"allOf":[{"$ref":"#/components/schemas/BaseAttribute"},{"type":"object","description":"Epilot internal user info","properties":{"type":{"type":"string","enum":["internal_user"]}}}]},"PurposeAttribute":{"allOf":[{"$ref":"#/components/schemas/BaseAttribute"},{"$ref":"#/components/schemas/TaxonomyClassification"},{"type":"object","description":"Entity Taxonomy","properties":{"type":{"type":"string","enum":["purpose"]}}}]},"RepeatableAttribute":{"allOf":[{"$ref":"#/components/schemas/BaseAttribute"},{"type":"object","description":"Repeatable (add N number of fields)","properties":{"repeatable":{"type":"boolean"},"has_primary":{"type":"boolean"},"relation_affinity_mode":{"description":"Weak repeatable attributes are kept when duplicating an entity. Strong repeatable attributes are discarded when duplicating an entity.","type":"string","enum":["weak","strong"]},"type":{"type":"string","enum":["string","phone","email","address","relation","payment","price_component","date"]},"enable_relation_picker":{"type":"boolean","default":true,"description":"when enable_relation_picker is set to true the user will be able to pick existing relations as values. Otherwise, the user will need to create new relation to link."}}}]},"TagsAttribute":{"allOf":[{"$ref":"#/components/schemas/BaseAttribute"},{"type":"object","description":"Tags","properties":{"type":{"type":"string","enum":["tags"]},"options":{"type":"array","items":{"type":"string"}},"suggestions":{"type":"array","items":{"type":"string"}}}}]},"NumberAttribute":{"allOf":[{"$ref":"#/components/schemas/BaseAttribute"},{"type":"object","description":"Numeric input","properties":{"type":{"type":"string","enum":["number"]},"format":{"type":"string"}}}]},"ConsentAttribute":{"allOf":[{"$ref":"#/components/schemas/BaseAttribute"},{"type":"object","description":"Consent Management","properties":{"type":{"type":"string","enum":["consent"]},"topic":{"type":"string"},"identifiers":{"type":"array","items":{"type":"string"}}},"required":["type","topic"]}]},"OrderedListAttribute":{"allOf":[{"$ref":"#/components/schemas/BaseAttribute"},{"type":"object","description":"Type of attribute to render N number of ordered fields","properties":{"type":{"type":"string","enum":["ordered_list"]}}}]},"ComputedAttribute":{"allOf":[{"$ref":"#/components/schemas/BaseAttribute"},{"type":"object","description":"An attribute that is computed from the entity data. For more details on how to use them, check the docs [here](https://e-pilot.atlassian.net/wiki/spaces/EO/pages/5642977476/How+To+Computed+Schema+Attributes)","properties":{"type":{"type":"string","enum":["computed"]}}}]},"PartnerStatusAttribute":{"allOf":[{"$ref":"#/components/schemas/BaseAttribute"},{"type":"object","description":"Partner Status","properties":{"type":{"type":"string","enum":["partner_status"]}}}]},"SummaryAttribute":{"description":"Represents an expanded version of an attribute to be displayed in the list item summary.\\nThis configuration can be used in the following way:\\n```js\\n{\\n \\"label\\": \\"Price components\\"\\n \\"value\\": \\"{{item.prices.length}} price components\\"\\n \\"show_as_tag\\": true\\n \\"render_condition\\": \\"is_composite_price = \\"true\\"\\"\\n}\\n```\\nThe value field supports handlebar expressions from which you can pick any field from the entity state.\\n","type":"object","properties":{"label":{"type":"string","description":"Label to be shown on the top of the value."},"value":{"type":"string","description":"A static value or an handlebar expression."},"show_as_tag":{"type":"boolean","description":"Displays the value within a tag chip."},"tag_color":{"type":"string","description":"CSS hex color or CSS color name for the tag chip."},"render_condition":{"type":"string","description":"Defines the conditional rendering expression for showing this field.\\nWhen a valid expression is parsed, their evaluation defines the visibility of this attribute.\\nNote: Empty or invalid expression have no effect on the field visibility.\\n"},"feature_flag":{"type":"string","description":"Binds summary field visibility to the feature flag state."},"setting_flag":{"type":"string","description":"Binds summary field visibility to the setting flag state."}},"required":["label","value"]},"EntitySlug":{"description":"URL-friendly identifier for the entity schema","type":"string","example":"contact"},"EntityCapability":{"description":"Capabilities the Entity has. Turn features on/off for entities.","type":"object","properties":{"name":{"type":"string","description":"Unique name for the capability","example":"customer_messaging"},"title":{"type":"string","description":"Human readable title of the capability","example":"Messaging"},"attributes":{"type":"array","items":{"$ref":"#/components/schemas/Attribute"}},"_purpose":{"type":"array","items":{"$ref":"#/components/schemas/ClassificationId"}},"ui_hooks":{"type":"array","items":{"type":"object","additionalProperties":true,"properties":{"hook":{"type":"string","description":"name of the hook to use","example":"EntityDetailsV2:Tab"},"render_condition":{"type":"string","example":"_is_composite_price = \\"false\\""},"order":{"type":"integer","description":"render order (ascending)","example":10},"title":{"type":"string","example":"Notes"},"group_expanded":{"type":"boolean","description":"Sets the group expand/collapse default state"},"import":{"type":"string","description":"package to be imported","example":"@epilot360/notes"},"component":{"type":"string","description":"the component to be dynamically loaded","example":"PricingItems"},"route":{"type":"string","description":"route for specified capability","example":"notes"},"icon":{"type":"string","description":"Preview icon name(As in Base elements) for the capability","example":"email"},"disabled":{"type":"boolean","description":"Whether capability should be disabled"},"header":{"type":"boolean","description":"Specific to Activity pilot"},"requiredPermission":{"type":"object","description":"Require a permission to display UI hook","properties":{"action":{"type":"string","example":"note:view"},"resource":{"type":"string","example":123}},"required":["action"]}},"required":["hook"]}},"feature_flag":{"type":"string","example":"FF_MY_FEATURE_FLAG","description":"This capability should only be active when the feature flag is enabled"},"setting_flag":{"type":"string","example":"MY_SETTING","description":"This capability should only be active when the setting is enabled"},"legacy":{"type":"boolean","description":"Only show capability for legacy tenants (ivy)"}},"required":["name"]},"EntityViewConfig":{"anyOf":[{"$ref":"#/components/schemas/EntityDefaultCreate"},{"$ref":"#/components/schemas/EntityDefaultEdit"},{"$ref":"#/components/schemas/EntityDefaultTable"},{"$ref":"#/components/schemas/RedirectEntityView"},{"$ref":"#/components/schemas/EntityParcelView"},{"$ref":"#/components/schemas/EntityViewDisabled"}]},"EntityViewDisabled":{"type":"object","properties":{"view_type":{"type":"string","enum":["disabled"]}}},"EntityDefaultTable":{"type":"object","properties":{"view_type":{"type":"string","enum":["default"]},"dropdown_items":{"type":"array","items":{"allOf":[{"type":"object","properties":{"feature_flag":{"type":"string","example":"FF_MY_FEATURE_FLAG","description":"This dropdown item should only be active when the feature flag is enabled"},"legacy":{"type":"boolean","description":"Only show item for legacy tenants (ivy)"}}},{"oneOf":[{"type":"object","properties":{"type":{"type":"string","enum":["entity"]},"entity":{"$ref":"#/components/schemas/EntitySlug"}}},{"type":"object","properties":{"type":{"type":"string","enum":["link"]},"title":{"type":"string","example":"Opportunities"},"uri":{"type":"string","format":"uri-reference"}}}]}]}},"row_actions":{"type":"array","items":{"type":"string"}},"navbar_actions":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string"},"options":{"type":"array","items":{"type":"object","properties":{"label":{"type":"string"},"params":{"type":"object"}},"required":["label"]}}},"required":["type"]}},"enable_thumbnails":{"description":"Enable the thumbnail column","type":"boolean","default":false},"classic_view":{"type":"string","format":"uri-reference"}}},"EntityDefaultCreate":{"type":"object","properties":{"view_type":{"type":"string","enum":["default"]},"search_params":{"type":"object","additionalProperties":{"type":"string"}},"table_menu_options":{"type":"object","properties":{"icon":{"type":"string"},"label":{"type":"string"}}}}},"EntityDefaultEdit":{"type":"object","properties":{"view_type":{"type":"string","enum":["default"]},"search_params":{"type":"object","additionalProperties":{"type":"string"}},"table_menu_options":{"type":"object","properties":{"icon":{"type":"string"},"label":{"type":"string"}}}}},"RedirectEntityView":{"type":"object","properties":{"view_type":{"type":"string","enum":["redirect"]},"route":{"type":"string","example":"/app/pricing-hub/product/:entityId"}},"example":{"type":"redirect","route":"/app/pricing-hub/product/:entityId"}},"EntityParcelView":{"type":"object","properties":{"view_type":{"type":"string","enum":["parcel"]},"import":{"type":"string","example":"@epilot360/pricing-hub-app"}},"example":{"type":"redirect","route":"/app/pricing-hub/product/:entityId"}},"EntityId":{"type":"string","format":"uuid"},"BaseEntity":{"allOf":[{"$ref":"#/components/schemas/Entity"},{"required":["_id","_title","_org","_schema","_created_at","_updated_at"]}]},"Entity":{"type":"object","additionalProperties":true,"properties":{"_id":{"$ref":"#/components/schemas/EntityId"},"_org":{"type":"string","description":"Organization Id the entity belongs to"},"_schema":{"$ref":"#/components/schemas/EntitySlug"},"_title":{"type":"string","description":"Title of entity","nullable":true},"_tags":{"type":"array","items":{"type":"string"},"nullable":true},"_created_at":{"type":"string","format":"date-time","nullable":true},"_updated_at":{"type":"string","format":"date-time","nullable":true}},"example":{"_id":"3fa85f64-5717-4562-b3fc-2c963f66afa6","_org":"123","_schema":"contact","_tags":["example","mock"],"_created_at":"2021-02-09T12:41:43.662Z","_updated_at":"2021-02-09T12:41:43.662Z"}},"HydratedEntity":{"type":"object","description":"Entity with relation data resolved into the attribute values","properties":{},"additionalProperties":true,"example":{"status":"active","customer_number":"abc123","email":[{"label":"work","email":"user@example.com"}],"phone":[{"label":"work","phone":"+49123456789"}],"first_name":"First Name","middle_name":"Middle Name","last_name":"Last Name","date_of_birth":"2019-08-24","title":"Mr.","account":[{"status":"active","name":"Company name","company_email":[{"label":"Company email","email":"company@example.com"}],"company_phone":[{"label":"Support phone","phone":"+49123456789"}],"company_website":"https://example.com","tax_id":"DE123456789","tax_exemption":"2019-08-24","contacts":{"$relation":[{"_tags":["CEO"],"entity_id":"3fa85f64-5717-4562-b3fc-2c963f66afa6"}]}}]}},"EntityItem":{"allOf":[{"$ref":"#/components/schemas/BaseEntity"},{"$ref":"#/components/schemas/Entity"}]},"HydratedEntityItem":{"allOf":[{"$ref":"#/components/schemas/BaseEntity"},{"$ref":"#/components/schemas/HydratedEntity"}]},"GetRelationsResp":{"type":"array","items":{"anyOf":[{"$ref":"#/components/schemas/RelationItem"},{"$ref":"#/components/schemas/RelationEntity"}]}},"RelationEntity":{"allOf":[{"$ref":"#/components/schemas/BaseEntity"},{"type":"object","properties":{"$relation":{"$ref":"#/components/schemas/RelationItem"}}}]},"RelationItem":{"type":"object","properties":{"entity_id":{"$ref":"#/components/schemas/EntityId"},"attribute":{"type":"string"},"_tags":{"type":"array","items":{"type":"string"}},"reverse":{"description":"Whether this is a reverse relation","type":"boolean"}},"required":["entity_id","attribute"]},"EntitySearchParams":{"type":"object","properties":{"q":{"description":"Lucene queries supported with ElasticSearch","type":"string","example":"_schema:contact AND status:active"},"sort":{"type":"string","example":"_created_at:desc"},"from":{"type":"integer","minimum":0,"default":0},"size":{"type":"integer","minimum":1,"default":10,"description":"Max search size is 1000 with higher values defaulting to 1000"},"hydrate":{"type":"boolean","description":"When true, enables entity hydration to resolve nested $relation & $relation_ref references in-place.","default":false},"fields":{"type":"array","description":"List of entity fields to include in search results","items":{"type":"string"},"example":["_id","_title","first_name"]},"include_scores":{"type":"boolean","default":false,"description":"Adds a `_score` number field to results that can be used to rank by match score"}},"required":["q"]},"EntityImportParams":{"type":"object","properties":{"S3Reference":{"type":"object","properties":{"bucket":{"type":"string","example":"epilot-files-prod"},"key":{"type":"string","example":"123/4d689aeb-1497-4410-a9fe-b36ca9ac4389/document.pdf"}},"required":["bucket","key"]},"schema":{"type":"string","example":"contact"}},"required":["S3Reference","schema"]},"EntitySearchResults":{"type":"object","properties":{"hits":{"type":"number","example":1},"results":{"type":"array","items":{"$ref":"#/components/schemas/EntityItem"}}}},"SearchMappings":{"description":"Advanced: explicit Elasticsearch index mapping definitions for entity data\\n","example":{"image":{"type":"keyword","index":false}},"type":"object","additionalProperties":{"type":"object","properties":{"index":{"type":"boolean","default":true},"type":{"type":"string","enum":["keyword","text","boolean","integer","long","float","date","flattened","nested"]},"fields":{"additionalProperties":true}}}},"ActivityId":{"type":"string","format":"ulid","description":"See https://github.com/ulid/spec","example":"01F130Q52Q6MWSNS8N2AVXV4JN"},"ActivityCallerContext":{"type":"object","additionalProperties":true,"properties":{"EpilotAuth":{"type":"object","properties":{"token":{"type":"object","properties":{"sub":{"type":"string","example":"476e9b48-42f4-4234-a2b0-4668b34626ce"},"email":{"type":"string","example":"example@epilot.cloud"},"cognito:username":{"type":"string","example":"example@epilot.cloud"},"custom:ivy_user_id":{"type":"string","example":"10006129"}},"example":{"sub":"476e9b48-42f4-4234-a2b0-4668b34626ce","cognito:groups":["Administrator"],"cognito:preferred_role":"arn:aws:iam::912468240823:role/base-administrator-role","iss":"https://cognito-idp.eu-central-1.amazonaws.com/eu-central-1_6lZSgmU6D","custom:ivy_org_id":"739224","cognito:username":"n.ahmad@epilot.cloud","custom:ivy_user_id":"10006129","cognito:roles":["arn:aws:iam::912468240823:role/base-administrator-role"],"aud":"6e0jbdnger7nmoktaaflarue1l","event_id":"cd5f5583-d90c-4db5-8e99-5f5dd29a4d75","token_use":"id","auth_time":1614333023,"exp":1614336623,"iat":1614333023,"email":"n.ahmad@epilot.cloud"}}}}}},"Activity":{"type":"object","properties":{"type":{"type":"string","example":"MyCustomActivity"},"title":{"type":"string","description":"Title for activity. Supports handlebars syntax.","example":"My custom activity"},"message":{"type":"string","description":"Message for activity. Supports handlebars syntax.","example":"{{caller}} did something with {{entity payload.entity.id}}."},"payload":{"type":"object","properties":{},"additionalProperties":true,"example":{"entity":{"id":"3fa85f64-5717-4562-b3fc-2c963f66afa6","schema":"contact"}}}},"required":["type","title","message"]},"EntityOperation":{"type":"object","properties":{"entity":{"$ref":"#/components/schemas/EntityId"},"org":{"type":"string","example":"123"},"activity_id":{"$ref":"#/components/schemas/ActivityId"},"operation":{"type":"string","enum":["createEntity","updateEntity","deleteEntity"]},"params":{"type":"object","properties":{"id":{"$ref":"#/components/schemas/EntityId"},"slug":{"$ref":"#/components/schemas/EntitySlug"}},"example":{"id":"3fa85f64-5717-4562-b3fc-2c963f66afa6","slug":"contact"}},"payload":{"allOf":[{"$ref":"#/components/schemas/Entity"},{"example":{"_schema":"contact","_org":"123","status":"Inactive"}}]},"diff":{"type":"object","properties":{"added":{"$ref":"#/components/schemas/Entity"},"updated":{"$ref":"#/components/schemas/Entity"},"deleted":{"$ref":"#/components/schemas/Entity"}}}},"required":["entity","org","operation"]},"ActivityItem":{"allOf":[{"type":"object","properties":{"_id":{"$ref":"#/components/schemas/ActivityId"},"timestamp":{"type":"string","format":"date-time"}}},{"$ref":"#/components/schemas/Activity"},{"type":"object","properties":{"caller":{"$ref":"#/components/schemas/ActivityCallerContext"}}},{"type":"object","properties":{"operations_total":{"type":"integer","description":"Count of total operations attached to this activity","example":1},"operations":{"type":"array","items":{"$ref":"#/components/schemas/EntityOperation"}}}}]},"BlueprintEntityId":{"description":"Reference to blueprint","type":"string","format":"uuid"},"SavedViewId":{"description":"Generated uuid for a saved view","type":"string","format":"uuid"},"SavedViewItem":{"allOf":[{"type":"object","properties":{"id":{"$ref":"#/components/schemas/SavedViewId"},"created_at":{"type":"string"},"updated_at":{"type":"string"}}},{"$ref":"#/components/schemas/SavedView"}]},"SavedView":{"description":"A saved entity view","type":"object","properties":{"slug":{"type":"array","description":"list of schemas a view can belong to","items":{"$ref":"#/components/schemas/EntitySlug"}},"name":{"description":"User-friendly identifier for the saved view","type":"string","example":"View listing German"},"org":{"description":"Organisation ID a view belongs to","type":"string","example":"66"},"shared":{"description":"boolean property for if a view is shared with organisation","type":"boolean","example":true},"created_by":{"anyOf":[{"type":"object","description":"A user that created the view","properties":{"user_id":{"type":"string","example":"10598"}}},{"type":"object","description":"A system-created view","properties":{"source":{"type":"string","enum":["SYSTEM","BLUEPRINT"]}},"additionalProperties":true}]},"ui_config":{"type":"object","example":{"filters":{"customer_name":"suresh test","_tags":"360"},"table_layout":{"opportunity":{"page":1,"sort":"_created_at:desc","pageSize":25,"columnSettings":[]}}}}},"required":["slug","name","created_by","ui_config"]},"Taxonomy":{"type":"object","properties":{"slug":{"$ref":"#/components/schemas/TaxonomySlug"},"name":{"type":"string","description":"A human friendly name of a Taxonomy e.g. Purpose, Product Category, Folder, Tag","example":"Purpose"},"plural":{"type":"string","description":"Plural name of a Taxonomy e.g. Purposes, Product Categories, Folders, Tags","example":"Purposes"},"created_at":{"type":"string","format":"date-time"},"updated_at":{"type":"string","format":"date-time"}},"required":["slug","name"]},"TaxonomyClassification":{"type":"object","properties":{"id":{"$ref":"#/components/schemas/ClassificationId"},"name":{"type":"string","example":"Wallbox PV"},"parents":{"type":"array","items":{"$ref":"#/components/schemas/ClassificationId"}},"created_at":{"type":"string","format":"date-time"},"updated_at":{"type":"string","format":"date-time"}},"required":["name"]},"ClassificationId":{"type":"string","format":"uuid"},"TaxonomySlug":{"type":"string","description":"URL-friendly name for taxonomy","example":"purpose"},"ClassificationsUpdate":{"type":"object","properties":{"create":{"type":"array","items":{"$ref":"#/components/schemas/TaxonomyClassification"}},"update":{"type":"array","items":{"$ref":"#/components/schemas/TaxonomyClassification"}},"delete":{"type":"array","items":{"$ref":"#/components/schemas/ClassificationId"}}}}},"examples":{"TaxEntity":{"description":"Example of a Tax Rate entity","value":{"active":true,"type":"VAT","region":"Germany","region_label":"All Regions","rate":19,"behavior":"Exclusive","description":"MwSt. 19%"}},"ContactEntity":{"description":"Example of a contact entity","value":{"status":"Active","customer_number":"abc123","first_name":"First","middle_name":"Middle","last_name":"Last","title":"Herr Prof. Dr.","email":[{"email":"user@example.com","_tags":["work"]}],"phone":[{"phone":"+49123456789","_tags":["personal","mobile"]}],"address":[{"country":"Germany","city":"Koln","postal_code":81475,"street":"Melatengürtel","street_number":71,"additional_info":"5. Etage","_tags":["billing","delivery"]}],"birthdate":"2019-08-24","account":{"$relation":[{"entity_id":"3fa85f64-5717-4562-b3fc-2c963f66afa6","_tags":["company"]}]},"consent_email_marketing":{"status":"OPTED_IN","events":[{"type":"OPT_IN","organization_id":"123","created_at":"2021-07-05T09:12:29.352Z","topic":"EMAIL_MARKETING","identifier":"user@example.com","source":"https://consent.sls.epilot.io/optin?token=abc123","meta":{"ip_address":"1.1.1.1","user_agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.114 Safari/537.36"}},{"type":"DOUBLE_OPT_IN_REQUEST","organization_id":"123","created_at":"2021-07-05T08:12:29.352Z","topic":"EMAIL_MARKETING","identifier":"user@example.com","source":"consent-api","meta":{"token":"abc123"}},{"type":"OPT_IN","organization_id":"123","created_at":"2021-07-04T09:12:29.352Z","topic":"EMAIL_MARKETING","identifier":"user@example.com","source":"https://frontend.epilot.cloud","meta":{"ip_address":"1.1.1.1","user_agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.114 Safari/537.36"}}]}}},"AccountEntity":{"description":"Example of an account entity","value":{"status":"Active","name":"Example Company","tax_id":"DE123456789","email":[{"email":"user@example.com","_tags":["work"]}],"phone":[{"phone":"+49123456789","_tags":["personal","mobile"]}],"address":[{"country":"Germany","city":"Koln","postal_code":81475,"street":"Melatengürtel","street_number":71,"additional_info":"5. Etage","_tags":["billing","delivery"]}],"website":"http://company.com","tax_exemption":"2021-02-23T09:08:57.320Z","registry_court":"Amtsgericht Köln","registry_number":"HRB 95505","company_size":"50-99","industry":["ecommerce","tech"],"annual_revenue":"5000000","contact":{"$relation":[{"entity_id":"3fa85f64-5717-4562-b3fc-2c963f66afa6","_tags":["CEO"]}]}}},"ProductEntity":{"description":"Example of a product entity","value":{"code":"SunrockSolar375","type":"Product","name":"Sunrock Solar Panel","description":"Sunrock Solar Panel, provide high capacity power generation even at night.","shippable":"true,","_files":{"type":"file","attachments":[{"key":"f001-32123-asdasd-23213","mime":"application/pdf","name":"wallbox-premium.pdf","size":6933430,"image_url":"https://s3-bucket.epilot.cloud/uid/f001-32123-asdasd-23213","download_url":"https://s3-bucket.epilot.cloud/uid/f001-32123-asdasd-23213"}]},"_images":{"type":"image","attachments":[{"key":"i001-32123-asdasd-23213","mime":"application/pdf","name":"wallbox-premium.pdf","size":6933430,"image_url":"https://s3-bucket.epilot.cloud/uid/f001-32123-asdasd-23213","download_url":"https://s3-bucket.epilot.cloud/uid/f001-32123-asdasd-23213"}]},"prices":{"$relation":[{"entity_id":"a38cca03-18a2-4e9c-8516-0918d81e7830","_tags":["price"]},{"entity_id":"3d10c912-c419-42d7-9270-02b7d05294e5","_tags":["price"]}]}}},"PriceEntity":{"description":"Example of a price entity","value":{"code":"MODEL_375KW_PREMIUM","type":"One Time","description":"Solar Panel 375 kWp Premium","billing_scheme":"per_unit","unit_amount":"€ 28500","tiers_mode":"Standard"}},"OrderEntity":{"description":"Example of a Order entity","value":{"amount_subtotal":23045,"amount_total":27424,"billing_address":[{"additional_info":"","city":"City","country":"DE","postal_code":"123","street":"Street 1","street_number":"2","_tags":[]}],"billing_company_name":"Epilot","billing_contact":{"$relation":[{"entity_id":"0691f503-5a3c-4e9e-b036-ffb21ea1d284","relationText":"Daniel Test","_schema":"contact","_tags":[]}]},"billing_email":"x@email.xyz","billing_first_name":"Paulo","billing_last_name":"Henriques","billing_phone":"00351912611099","billing_vat":"123456789","currency":"EUR","delivery_address":[{"additional_info":"","city":"City","country":"DE","postal_code":"123","street":"Street 1","street_number":"2","_tags":[]}],"footer_notes":"Footer","line_items":[{"amount_subtotal":23045,"amount_total":27424,"currency":"EUR","description":"Basic Model - No Wifi","price_id":"efe9ff76-865c-4287-8de9-422cfc741ff9","product_id":"beefa9f1-29a8-448e-94d5-ebf1963428f8","quantity":1,"taxes":[{"amount":4379,"rate":"standard"}],"unit_amount":23045,"_price":{"active":false,"billing_duration_amount":"2","billing_duration_unit":"years","billing_period":"monthly","description":"Basic Model - No Wifi","notice_time_amount":"1","notice_time_unit":"months","price_display_in_journeys":"show_price","renewal_duration_amount":"1","renewal_duration_unit":"years","sales_tax":"standard","tax_behavior":"exclusive","termination_time_amount":"1","termination_time_unit":"months","type":"recurring","unit_amount":23045,"unit_amount_currency":"EUR","unit_amount_decimal":"230.4524","_created_at":"2021-12-15T12:34:59.579Z","_id":"efe9ff76-865c-4287-8de9-422cfc741ff9","_org":"739224","_schema":"price","_tags":["basic-model","wifi"],"_title":"Basic Model - No Wifi","_updated_at":"2021-12-31T13:07:51.392Z"},"_product":{"active":true,"code":"PWB","feature":[{"_tags":[],"feature":"Pure Energon Fueled"},{"_tags":[],"feature":"Mobile App Available"}],"name":"Pinho Walls in a Box","price_options":{"$relation":[{"entity_id":"efe9ff76-865c-4287-8de9-422cfc741ff9"}]},"type":"product","_created_at":"2021-12-15T12:35:08.438Z","_id":"beefa9f1-29a8-448e-94d5-ebf1963428f8","_org":"739224","_schema":"product","_tags":["energon","eco-friendly","wallbox"],"_title":"Pinho Walls in a Box","_updated_at":"2022-01-03T17:14:41.042Z"}}],"memo":"Memo","status":"Paid","total_details":{"amount_tax":4379,"breakdown":{"recurrences":[{"amount_subtotal":23045,"amount_tax":4379,"amount_total":27424,"billing_period":"monthly","type":"recurring"}],"taxes":[{"amount":4379,"rate":"standard"}]}}}},"OpportunityEntity":{"description":"Example of an Opportunity entity","value":{"amount_subtotal":23045,"amount_total":27424,"assignees":{"$relation":[{"entity_id":"66a1a6a3-38ee-4ffe-b68d-ee90e3bb1a77","relationText":"Claudius Iohannis","_schema":"contact","_tags":[]}]},"billing_address":[{"additional_info":"","city":"City","country":"DE","postal_code":"123","street":"Street 1","street_number":"2","_tags":[]}],"billing_company_name":"Epilot","billing_contact":{"$relation":[{"entity_id":"0691f503-5a3c-4e9e-b036-ffb21ea1d284","relationText":"Daniel Test","_schema":"contact","_tags":[]}]},"billing_email":"customer@email.xyz","billing_first_name":"Customer First Name","billing_last_name":"Customer Last Name","billing_phone":"00351912611098","billing_vat":"123456789","currency":"EUR","delivery_address":[{"additional_info":"","city":"City","country":"DE","postal_code":"123","street":"Street 1","street_number":"2","_tags":[]}],"line_items":[{"amount_subtotal":23045,"amount_total":27424,"currency":"EUR","description":"Basic Model - No Wifi","price_id":"efe9ff76-865c-4287-8de9-422cfc741ff9","product_id":"beefa9f1-29a8-448e-94d5-ebf1963428f8","quantity":1,"taxes":[{"amount":4379,"rate":"standard"}],"unit_amount":23045,"_price":{"active":false,"billing_duration_amount":"2","billing_duration_unit":"years","billing_period":"monthly","description":"Basic Model - No Wifi","notice_time_amount":"1","notice_time_unit":"months","price_display_in_journeys":"show_price","renewal_duration_amount":"1","renewal_duration_unit":"years","sales_tax":"standard","tax_behavior":"exclusive","termination_time_amount":"1","termination_time_unit":"months","type":"recurring","unit_amount":23045,"unit_amount_currency":"EUR","unit_amount_decimal":"230.4524","_created_at":"2021-12-15T12:34:59.579Z","_id":"efe9ff76-865c-4287-8de9-422cfc741ff9","_org":"739224","_schema":"price","_tags":["basic-model","wifi"],"_title":"Basic Model - No Wifi","_updated_at":"2021-12-31T13:07:51.392Z"},"_product":{"active":true,"code":"PWB","feature":[{"_tags":[],"feature":"Pure Energon Fueled"},{"_tags":[],"feature":"Mobile App Available"}],"name":"Pinho Walls in a Box","price_options":{"$relation":[{"entity_id":"efe9ff76-865c-4287-8de9-422cfc741ff9"}]},"type":"product","_created_at":"2021-12-15T12:35:08.438Z","_id":"beefa9f1-29a8-448e-94d5-ebf1963428f8","_org":"739224","_schema":"product","_tags":["energon","eco-friendly","wallbox"],"_title":"Pinho Walls in a Box","_updated_at":"2022-01-03T17:14:41.042Z"}}],"opportunity_number":"20220105-768854819","participants":{"$relation":[{"entity_id":"9bbfdaa9-22b2-4100-a256-67600202e3f4","relationText":"Alex Marques","_schema":"contact","_tags":[]}]},"status":"Lead","total_details":{"amount_tax":4379,"breakdown":{"recurrences":[{"amount_subtotal":23045,"amount_tax":4379,"amount_total":27424,"billing_period":"monthly","type":"recurring"}],"taxes":[{"amount":4379,"rate":"standard"}]}}}},"EmailTemplateEntity":{"description":"Example of an email template entity","value":{"attachments":[],"body":"<p fr-original-style=\\"caret-color: rgb(65, 65, 65); color: rgb(65, 65, 65); font-family: sans-serif;\\" id=\\"isPasted\\" style=\\"caret-color: rgb(65, 65, 65); color: rgb(65, 65, 65); font-family: sans-serif; box-sizing: inherit; border-color: rgba(229, 231, 235, var(--tw-border-opacity));\\"><span fr-original-style=\\"font-weight: 700;\\" style=\\"font-weight: 700; box-sizing: inherit; border-color: rgba(229, 231, 235, var(--tw-border-opacity));\\">Variablen - Kontakt</span></p>","brand_id":7066103,"from":{"name":"Name","email":"admin@email.xyz"},"name":"PH Test","subject":"Example Subject","system_template":false,"to":[{"id":"1","name":"Contact Name","email":"Contact email"}],"_tags":["Bestellung"]}},"FileEntity":{"description":"Example of a file template entity","value":{"access_control":"private","filename":"solar_panel_ph.jpeg","s3ref":{"bucket":"epilot-staging-user-content","key":"728/temp/6d450fd1-2d63-435f-b598-c605dfb89cbc/solar_panel_ph.jpeg"}}},"WorkflowStepEntity":{"description":"Example of a workflow step template entity","value":{"name":"Name","assigned_to\\"":["10000563"],"status":"Unassigned","order":123,"tags":["tag1"]}},"SubmissionEntity":{"description":"Example of a submission step template entity","value":{"mapped_entities":{"$relation":[{"entity_id":"4ffb071c-2821-4505-86d0-09b801ffd97a","relationText":"4ffb071c-2821-4505-86d0-09b801ffd97a","_schema":"price","_tags":[]}]}}}}},"servers":[{"url":"https://entity.sls.epilot.io"}]}')}},t={},i=function i(n){var a=t[n];if(void 0!==a)return a.exports;var s=t[n]={exports:{}};return e[n].call(s.exports,s,s.exports,i),s.exports}(914),n=exports;for(var a in i)n[a]=i[a];i.__esModule&&Object.defineProperty(n,"__esModule",{value:!0})})();
|
package/dist/index.js
CHANGED
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
3
|
if (k2 === undefined) k2 = k;
|
|
4
|
-
Object.
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
5
9
|
}) : (function(o, m, k, k2) {
|
|
6
10
|
if (k2 === undefined) k2 = k;
|
|
7
11
|
o[k2] = m[k];
|
package/dist/openapi.d.ts
CHANGED
|
@@ -161,9 +161,7 @@ declare namespace Components {
|
|
|
161
161
|
required?: boolean;
|
|
162
162
|
readonly?: boolean;
|
|
163
163
|
deprecated?: boolean;
|
|
164
|
-
default_value?:
|
|
165
|
-
[name: string]: any;
|
|
166
|
-
} | number | number | boolean | any[];
|
|
164
|
+
default_value?: any;
|
|
167
165
|
/**
|
|
168
166
|
* Which group the attribute should appear in. Accepts group ID or group name
|
|
169
167
|
*/
|
|
@@ -234,15 +232,6 @@ declare namespace Components {
|
|
|
234
232
|
type?: "relation_address";
|
|
235
233
|
has_primary?: boolean;
|
|
236
234
|
}
|
|
237
|
-
export interface Attachment {
|
|
238
|
-
key: string;
|
|
239
|
-
mime: string;
|
|
240
|
-
name: string;
|
|
241
|
-
size: number;
|
|
242
|
-
image_url: string;
|
|
243
|
-
download_url: string;
|
|
244
|
-
alt_text?: string;
|
|
245
|
-
}
|
|
246
235
|
export type Attribute = /* Textarea or text input */ TextAttribute | /* Link with title and href */ LinkAttribute | /* Date or Datetime picker */ DateAttribute | /* Country picker */ CountryAttribute | /* Yes / No Toggle */ BooleanAttribute | /* Dropdown select */ SelectAttribute | /* Multi Choice Selection */ MultiSelectAttribute | /* Status select */ StatusAttribute | /* Sequence of unique identifiers */ SequenceAttribute | /* Entity Relationship */ RelationAttribute | /* User Relationship */ UserRelationAttribute | /* Reference to an address attribute of another entity */ AddressRelationAttribute | /* Reference to a payment method attribute of another entity */ PaymentMethodRelationAttribute | /* Currency input */ CurrencyAttribute | /* Repeatable (add N number of fields) */ RepeatableAttribute | /* Tags */ TagsAttribute | /* Numeric input */ NumberAttribute | /* Consent Management */ ConsentAttribute | /* No UI representation */ InternalAttribute | /* Type of attribute to render N number of ordered fields */ OrderedListAttribute | /* File or Image Attachment */ FileAttribute | /* An attribute that is computed from the entity data. For more details on how to use them, check the docs [here](https://e-pilot.atlassian.net/wiki/spaces/EO/pages/5642977476/How+To+Computed+Schema+Attributes) */ ComputedAttribute | /* Partner Status */ PartnerStatusAttribute | /* Email address for send invitation */ InvitationEmailAttribute | /* Automation entity */ AutomationAttribute | /* Epilot internal user info */ InternalUserAttribute | /* Entity Taxonomy */ PurposeAttribute;
|
|
247
236
|
/**
|
|
248
237
|
* Automation entity
|
|
@@ -262,9 +251,7 @@ declare namespace Components {
|
|
|
262
251
|
required?: boolean;
|
|
263
252
|
readonly?: boolean;
|
|
264
253
|
deprecated?: boolean;
|
|
265
|
-
default_value?:
|
|
266
|
-
[name: string]: any;
|
|
267
|
-
} | number | number | boolean | any[];
|
|
254
|
+
default_value?: any;
|
|
268
255
|
/**
|
|
269
256
|
* Which group the attribute should appear in. Accepts group ID or group name
|
|
270
257
|
*/
|
|
@@ -349,9 +336,7 @@ declare namespace Components {
|
|
|
349
336
|
required?: boolean;
|
|
350
337
|
readonly?: boolean;
|
|
351
338
|
deprecated?: boolean;
|
|
352
|
-
default_value?:
|
|
353
|
-
[name: string]: any;
|
|
354
|
-
} | number | number | boolean | any[];
|
|
339
|
+
default_value?: any;
|
|
355
340
|
/**
|
|
356
341
|
* Which group the attribute should appear in. Accepts group ID or group name
|
|
357
342
|
*/
|
|
@@ -477,9 +462,7 @@ declare namespace Components {
|
|
|
477
462
|
required?: boolean;
|
|
478
463
|
readonly?: boolean;
|
|
479
464
|
deprecated?: boolean;
|
|
480
|
-
default_value?:
|
|
481
|
-
[name: string]: any;
|
|
482
|
-
} | number | number | boolean | any[];
|
|
465
|
+
default_value?: any;
|
|
483
466
|
/**
|
|
484
467
|
* Which group the attribute should appear in. Accepts group ID or group name
|
|
485
468
|
*/
|
|
@@ -573,9 +556,7 @@ declare namespace Components {
|
|
|
573
556
|
required?: boolean;
|
|
574
557
|
readonly?: boolean;
|
|
575
558
|
deprecated?: boolean;
|
|
576
|
-
default_value?:
|
|
577
|
-
[name: string]: any;
|
|
578
|
-
} | number | number | boolean | any[];
|
|
559
|
+
default_value?: any;
|
|
579
560
|
/**
|
|
580
561
|
* Which group the attribute should appear in. Accepts group ID or group name
|
|
581
562
|
*/
|
|
@@ -663,9 +644,7 @@ declare namespace Components {
|
|
|
663
644
|
required?: boolean;
|
|
664
645
|
readonly?: boolean;
|
|
665
646
|
deprecated?: boolean;
|
|
666
|
-
default_value?:
|
|
667
|
-
[name: string]: any;
|
|
668
|
-
} | number | number | boolean | any[];
|
|
647
|
+
default_value?: any;
|
|
669
648
|
/**
|
|
670
649
|
* Which group the attribute should appear in. Accepts group ID or group name
|
|
671
650
|
*/
|
|
@@ -755,9 +734,7 @@ declare namespace Components {
|
|
|
755
734
|
required?: boolean;
|
|
756
735
|
readonly?: boolean;
|
|
757
736
|
deprecated?: boolean;
|
|
758
|
-
default_value?:
|
|
759
|
-
[name: string]: any;
|
|
760
|
-
} | number | number | boolean | any[];
|
|
737
|
+
default_value?: any;
|
|
761
738
|
/**
|
|
762
739
|
* Which group the attribute should appear in. Accepts group ID or group name
|
|
763
740
|
*/
|
|
@@ -845,9 +822,7 @@ declare namespace Components {
|
|
|
845
822
|
required?: boolean;
|
|
846
823
|
readonly?: boolean;
|
|
847
824
|
deprecated?: boolean;
|
|
848
|
-
default_value?:
|
|
849
|
-
[name: string]: any;
|
|
850
|
-
} | number | number | boolean | any[];
|
|
825
|
+
default_value?: any;
|
|
851
826
|
/**
|
|
852
827
|
* Which group the attribute should appear in. Accepts group ID or group name
|
|
853
828
|
*/
|
|
@@ -945,9 +920,7 @@ declare namespace Components {
|
|
|
945
920
|
required?: boolean;
|
|
946
921
|
readonly?: boolean;
|
|
947
922
|
deprecated?: boolean;
|
|
948
|
-
default_value?:
|
|
949
|
-
[name: string]: any;
|
|
950
|
-
} | number | number | boolean | any[];
|
|
923
|
+
default_value?: any;
|
|
951
924
|
/**
|
|
952
925
|
* Which group the attribute should appear in. Accepts group ID or group name
|
|
953
926
|
*/
|
|
@@ -1966,9 +1939,7 @@ declare namespace Components {
|
|
|
1966
1939
|
required?: boolean;
|
|
1967
1940
|
readonly?: boolean;
|
|
1968
1941
|
deprecated?: boolean;
|
|
1969
|
-
default_value?:
|
|
1970
|
-
[name: string]: any;
|
|
1971
|
-
} | number | number | boolean | any[];
|
|
1942
|
+
default_value?: any;
|
|
1972
1943
|
/**
|
|
1973
1944
|
* Which group the attribute should appear in. Accepts group ID or group name
|
|
1974
1945
|
*/
|
|
@@ -2232,9 +2203,7 @@ declare namespace Components {
|
|
|
2232
2203
|
required?: boolean;
|
|
2233
2204
|
readonly?: boolean;
|
|
2234
2205
|
deprecated?: boolean;
|
|
2235
|
-
default_value?:
|
|
2236
|
-
[name: string]: any;
|
|
2237
|
-
} | number | number | boolean | any[];
|
|
2206
|
+
default_value?: any;
|
|
2238
2207
|
/**
|
|
2239
2208
|
* Which group the attribute should appear in. Accepts group ID or group name
|
|
2240
2209
|
*/
|
|
@@ -2322,9 +2291,7 @@ declare namespace Components {
|
|
|
2322
2291
|
required?: boolean;
|
|
2323
2292
|
readonly?: boolean;
|
|
2324
2293
|
deprecated?: boolean;
|
|
2325
|
-
default_value?:
|
|
2326
|
-
[name: string]: any;
|
|
2327
|
-
} | number | number | boolean | any[];
|
|
2294
|
+
default_value?: any;
|
|
2328
2295
|
/**
|
|
2329
2296
|
* Which group the attribute should appear in. Accepts group ID or group name
|
|
2330
2297
|
*/
|
|
@@ -2412,9 +2379,7 @@ declare namespace Components {
|
|
|
2412
2379
|
required?: boolean;
|
|
2413
2380
|
readonly?: boolean;
|
|
2414
2381
|
deprecated?: boolean;
|
|
2415
|
-
default_value?:
|
|
2416
|
-
[name: string]: any;
|
|
2417
|
-
} | number | number | boolean | any[];
|
|
2382
|
+
default_value?: any;
|
|
2418
2383
|
/**
|
|
2419
2384
|
* Which group the attribute should appear in. Accepts group ID or group name
|
|
2420
2385
|
*/
|
|
@@ -2510,9 +2475,7 @@ declare namespace Components {
|
|
|
2510
2475
|
required?: boolean;
|
|
2511
2476
|
readonly?: boolean;
|
|
2512
2477
|
deprecated?: boolean;
|
|
2513
|
-
default_value?:
|
|
2514
|
-
[name: string]: any;
|
|
2515
|
-
} | number | number | boolean | any[];
|
|
2478
|
+
default_value?: any;
|
|
2516
2479
|
/**
|
|
2517
2480
|
* Which group the attribute should appear in. Accepts group ID or group name
|
|
2518
2481
|
*/
|
|
@@ -2600,9 +2563,7 @@ declare namespace Components {
|
|
|
2600
2563
|
required?: boolean;
|
|
2601
2564
|
readonly?: boolean;
|
|
2602
2565
|
deprecated?: boolean;
|
|
2603
|
-
default_value?:
|
|
2604
|
-
[name: string]: any;
|
|
2605
|
-
} | number | number | boolean | any[];
|
|
2566
|
+
default_value?: any;
|
|
2606
2567
|
/**
|
|
2607
2568
|
* Which group the attribute should appear in. Accepts group ID or group name
|
|
2608
2569
|
*/
|
|
@@ -2706,9 +2667,7 @@ declare namespace Components {
|
|
|
2706
2667
|
required?: boolean;
|
|
2707
2668
|
readonly?: boolean;
|
|
2708
2669
|
deprecated?: boolean;
|
|
2709
|
-
default_value?:
|
|
2710
|
-
[name: string]: any;
|
|
2711
|
-
} | number | number | boolean | any[];
|
|
2670
|
+
default_value?: any;
|
|
2712
2671
|
/**
|
|
2713
2672
|
* Which group the attribute should appear in. Accepts group ID or group name
|
|
2714
2673
|
*/
|
|
@@ -2797,9 +2756,7 @@ declare namespace Components {
|
|
|
2797
2756
|
required?: boolean;
|
|
2798
2757
|
readonly?: boolean;
|
|
2799
2758
|
deprecated?: boolean;
|
|
2800
|
-
default_value?:
|
|
2801
|
-
[name: string]: any;
|
|
2802
|
-
} | number | number | boolean | any[];
|
|
2759
|
+
default_value?: any;
|
|
2803
2760
|
/**
|
|
2804
2761
|
* Which group the attribute should appear in. Accepts group ID or group name
|
|
2805
2762
|
*/
|
|
@@ -2887,9 +2844,7 @@ declare namespace Components {
|
|
|
2887
2844
|
required?: boolean;
|
|
2888
2845
|
readonly?: boolean;
|
|
2889
2846
|
deprecated?: boolean;
|
|
2890
|
-
default_value?:
|
|
2891
|
-
[name: string]: any;
|
|
2892
|
-
} | number | number | boolean | any[];
|
|
2847
|
+
default_value?: any;
|
|
2893
2848
|
/**
|
|
2894
2849
|
* Which group the attribute should appear in. Accepts group ID or group name
|
|
2895
2850
|
*/
|
|
@@ -2977,9 +2932,7 @@ declare namespace Components {
|
|
|
2977
2932
|
required?: boolean;
|
|
2978
2933
|
readonly?: boolean;
|
|
2979
2934
|
deprecated?: boolean;
|
|
2980
|
-
default_value?:
|
|
2981
|
-
[name: string]: any;
|
|
2982
|
-
} | number | number | boolean | any[];
|
|
2935
|
+
default_value?: any;
|
|
2983
2936
|
/**
|
|
2984
2937
|
* Which group the attribute should appear in. Accepts group ID or group name
|
|
2985
2938
|
*/
|
|
@@ -3072,9 +3025,7 @@ declare namespace Components {
|
|
|
3072
3025
|
required?: boolean;
|
|
3073
3026
|
readonly?: boolean;
|
|
3074
3027
|
deprecated?: boolean;
|
|
3075
|
-
default_value?:
|
|
3076
|
-
[name: string]: any;
|
|
3077
|
-
} | number | number | boolean | any[];
|
|
3028
|
+
default_value?: any;
|
|
3078
3029
|
/**
|
|
3079
3030
|
* Which group the attribute should appear in. Accepts group ID or group name
|
|
3080
3031
|
*/
|
|
@@ -3181,9 +3132,7 @@ declare namespace Components {
|
|
|
3181
3132
|
required?: boolean;
|
|
3182
3133
|
readonly?: boolean;
|
|
3183
3134
|
deprecated?: boolean;
|
|
3184
|
-
default_value?:
|
|
3185
|
-
[name: string]: any;
|
|
3186
|
-
} | number | number | boolean | any[];
|
|
3135
|
+
default_value?: any;
|
|
3187
3136
|
/**
|
|
3188
3137
|
* Which group the attribute should appear in. Accepts group ID or group name
|
|
3189
3138
|
*/
|
|
@@ -3448,9 +3397,7 @@ declare namespace Components {
|
|
|
3448
3397
|
required?: boolean;
|
|
3449
3398
|
readonly?: boolean;
|
|
3450
3399
|
deprecated?: boolean;
|
|
3451
|
-
default_value?:
|
|
3452
|
-
[name: string]: any;
|
|
3453
|
-
} | number | number | boolean | any[];
|
|
3400
|
+
default_value?: any;
|
|
3454
3401
|
/**
|
|
3455
3402
|
* Which group the attribute should appear in. Accepts group ID or group name
|
|
3456
3403
|
*/
|
|
@@ -3703,9 +3650,7 @@ declare namespace Components {
|
|
|
3703
3650
|
required?: boolean;
|
|
3704
3651
|
readonly?: boolean;
|
|
3705
3652
|
deprecated?: boolean;
|
|
3706
|
-
default_value?:
|
|
3707
|
-
[name: string]: any;
|
|
3708
|
-
} | number | number | boolean | any[];
|
|
3653
|
+
default_value?: any;
|
|
3709
3654
|
/**
|
|
3710
3655
|
* Which group the attribute should appear in. Accepts group ID or group name
|
|
3711
3656
|
*/
|
|
@@ -3801,9 +3746,7 @@ declare namespace Components {
|
|
|
3801
3746
|
required?: boolean;
|
|
3802
3747
|
readonly?: boolean;
|
|
3803
3748
|
deprecated?: boolean;
|
|
3804
|
-
default_value?:
|
|
3805
|
-
[name: string]: any;
|
|
3806
|
-
} | number | number | boolean | any[];
|
|
3749
|
+
default_value?: any;
|
|
3807
3750
|
/**
|
|
3808
3751
|
* Which group the attribute should appear in. Accepts group ID or group name
|
|
3809
3752
|
*/
|
|
@@ -3898,9 +3841,7 @@ declare namespace Components {
|
|
|
3898
3841
|
required?: boolean;
|
|
3899
3842
|
readonly?: boolean;
|
|
3900
3843
|
deprecated?: boolean;
|
|
3901
|
-
default_value?:
|
|
3902
|
-
[name: string]: any;
|
|
3903
|
-
} | number | number | boolean | any[];
|
|
3844
|
+
default_value?: any;
|
|
3904
3845
|
/**
|
|
3905
3846
|
* Which group the attribute should appear in. Accepts group ID or group name
|
|
3906
3847
|
*/
|
|
@@ -4052,9 +3993,7 @@ declare namespace Components {
|
|
|
4052
3993
|
required?: boolean;
|
|
4053
3994
|
readonly?: boolean;
|
|
4054
3995
|
deprecated?: boolean;
|
|
4055
|
-
default_value?:
|
|
4056
|
-
[name: string]: any;
|
|
4057
|
-
} | number | number | boolean | any[];
|
|
3996
|
+
default_value?: any;
|
|
4058
3997
|
/**
|
|
4059
3998
|
* Which group the attribute should appear in. Accepts group ID or group name
|
|
4060
3999
|
*/
|
|
@@ -4183,9 +4122,7 @@ declare namespace Components {
|
|
|
4183
4122
|
required?: boolean;
|
|
4184
4123
|
readonly?: boolean;
|
|
4185
4124
|
deprecated?: boolean;
|
|
4186
|
-
default_value?:
|
|
4187
|
-
[name: string]: any;
|
|
4188
|
-
} | number | number | boolean | any[];
|
|
4125
|
+
default_value?: any;
|
|
4189
4126
|
/**
|
|
4190
4127
|
* Which group the attribute should appear in. Accepts group ID or group name
|
|
4191
4128
|
*/
|
|
@@ -4274,9 +4211,7 @@ declare namespace Components {
|
|
|
4274
4211
|
required?: boolean;
|
|
4275
4212
|
readonly?: boolean;
|
|
4276
4213
|
deprecated?: boolean;
|
|
4277
|
-
default_value?:
|
|
4278
|
-
[name: string]: any;
|
|
4279
|
-
} | number | number | boolean | any[];
|
|
4214
|
+
default_value?: any;
|
|
4280
4215
|
/**
|
|
4281
4216
|
* Which group the attribute should appear in. Accepts group ID or group name
|
|
4282
4217
|
*/
|
|
@@ -4948,7 +4883,7 @@ declare namespace Paths {
|
|
|
4948
4883
|
}
|
|
4949
4884
|
namespace Responses {
|
|
4950
4885
|
export interface $200 {
|
|
4951
|
-
results?:
|
|
4886
|
+
results?: Components.Schemas.TaxonomyClassification[];
|
|
4952
4887
|
}
|
|
4953
4888
|
}
|
|
4954
4889
|
}
|
package/dist/openapi.json
CHANGED
|
@@ -1813,6 +1813,7 @@
|
|
|
1813
1813
|
"type": "object",
|
|
1814
1814
|
"properties": {
|
|
1815
1815
|
"results": {
|
|
1816
|
+
"type": "array",
|
|
1816
1817
|
"items": {
|
|
1817
1818
|
"$ref": "#/components/schemas/TaxonomyClassification"
|
|
1818
1819
|
}
|
|
@@ -2329,29 +2330,7 @@
|
|
|
2329
2330
|
"type": "boolean",
|
|
2330
2331
|
"default": false
|
|
2331
2332
|
},
|
|
2332
|
-
"default_value": {
|
|
2333
|
-
"oneOf": [
|
|
2334
|
-
{
|
|
2335
|
-
"type": "string"
|
|
2336
|
-
},
|
|
2337
|
-
{
|
|
2338
|
-
"type": "object",
|
|
2339
|
-
"additionalProperties": true
|
|
2340
|
-
},
|
|
2341
|
-
{
|
|
2342
|
-
"type": "integer"
|
|
2343
|
-
},
|
|
2344
|
-
{
|
|
2345
|
-
"type": "number"
|
|
2346
|
-
},
|
|
2347
|
-
{
|
|
2348
|
-
"type": "boolean"
|
|
2349
|
-
},
|
|
2350
|
-
{
|
|
2351
|
-
"type": "array"
|
|
2352
|
-
}
|
|
2353
|
-
]
|
|
2354
|
-
},
|
|
2333
|
+
"default_value": {},
|
|
2355
2334
|
"group": {
|
|
2356
2335
|
"description": "Which group the attribute should appear in. Accepts group ID or group name",
|
|
2357
2336
|
"type": "string"
|
|
@@ -3347,41 +3326,6 @@
|
|
|
3347
3326
|
}
|
|
3348
3327
|
]
|
|
3349
3328
|
},
|
|
3350
|
-
"Attachment": {
|
|
3351
|
-
"type": "object",
|
|
3352
|
-
"deprecated": true,
|
|
3353
|
-
"properties": {
|
|
3354
|
-
"key": {
|
|
3355
|
-
"type": "string"
|
|
3356
|
-
},
|
|
3357
|
-
"mime": {
|
|
3358
|
-
"type": "string"
|
|
3359
|
-
},
|
|
3360
|
-
"name": {
|
|
3361
|
-
"type": "string"
|
|
3362
|
-
},
|
|
3363
|
-
"size": {
|
|
3364
|
-
"type": "number"
|
|
3365
|
-
},
|
|
3366
|
-
"image_url": {
|
|
3367
|
-
"type": "string"
|
|
3368
|
-
},
|
|
3369
|
-
"download_url": {
|
|
3370
|
-
"type": "string"
|
|
3371
|
-
},
|
|
3372
|
-
"alt_text": {
|
|
3373
|
-
"type": "string"
|
|
3374
|
-
}
|
|
3375
|
-
},
|
|
3376
|
-
"required": [
|
|
3377
|
-
"key",
|
|
3378
|
-
"mime",
|
|
3379
|
-
"name",
|
|
3380
|
-
"size",
|
|
3381
|
-
"image_url",
|
|
3382
|
-
"download_url"
|
|
3383
|
-
]
|
|
3384
|
-
},
|
|
3385
3329
|
"SummaryAttribute": {
|
|
3386
3330
|
"description": "Represents an expanded version of an attribute to be displayed in the list item summary.\nThis configuration can be used in the following way:\n```js\n{\n \"label\": \"Price components\"\n \"value\": \"{{item.prices.length}} price components\"\n \"show_as_tag\": true\n \"render_condition\": \"is_composite_price = \"true\"\"\n}\n```\nThe value field supports handlebar expressions from which you can pick any field from the entity state.\n",
|
|
3387
3331
|
"type": "object",
|
|
@@ -5150,9 +5094,6 @@
|
|
|
5150
5094
|
}
|
|
5151
5095
|
},
|
|
5152
5096
|
"servers": [
|
|
5153
|
-
{
|
|
5154
|
-
"url": "https://entity.sls.epilot.io"
|
|
5155
|
-
},
|
|
5156
5097
|
{
|
|
5157
5098
|
"url": "https://entity.sls.epilot.io"
|
|
5158
5099
|
}
|
package/dist/schema-model.d.ts
CHANGED
|
@@ -7,5 +7,5 @@ export declare enum RelationAffinityMode {
|
|
|
7
7
|
WEAK = "weak",
|
|
8
8
|
STRONG = "strong"
|
|
9
9
|
}
|
|
10
|
-
export
|
|
11
|
-
export
|
|
10
|
+
export type Attribute = Components.Schemas.Attribute;
|
|
11
|
+
export type AttributeType = Attribute['type'];
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@epilot/entity-client",
|
|
3
|
-
"version": "4.7.
|
|
3
|
+
"version": "4.7.3",
|
|
4
4
|
"description": "JavaScript client library for the epilot Core Entity API",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -71,5 +71,6 @@
|
|
|
71
71
|
"typescript": "^4.1.3",
|
|
72
72
|
"webpack": "^5.18.0",
|
|
73
73
|
"webpack-cli": "^4.4.0"
|
|
74
|
-
}
|
|
74
|
+
},
|
|
75
|
+
"gitHead": "ae107d0f83073ee8bef10ff51f194ae08a3d2bac"
|
|
75
76
|
}
|