{ "swagger": "2.0", "info": { "title": "API Party", "description": "## TMF API Reference : TMF 632 - Party \n\n### Release : 19.0 \n\nThe party API provides standardized mechanism for party management such as creation, update, retrieval, deletion and notification of events. Party can be an individual or an organization that has any kind of relation with the enterprise. Party is created to record individual or organization information before the assignment of any role. For example, within the context of a split billing mechanism, Party API allows creation of the individual or organization that will play the role of 3 rd payer for a given offer and, then, allows consultation or update of his information.\n\n### Resources\n- Organization\n- Individual\n- Hub\n\nParty API performs the following operations :\n- Retrieve an organization or an individual\n- Retrieve a collection of organizations or individuals according to given criteria\n- Create a new organization or a new individual\n- Update an existing organization or an existing individual\n- Delete an existing organization or an existing individual\n- Notify events on organizatin or individual", "version": "4.0.0" }, "host": "serverRoot", "basePath": "/tmf-api/party/v4/", "schemes": [ "https" ], "consumes": [ "application/json;charset=utf-8" ], "produces": [ "application/json;charset=utf-8" ], "tags": [ { "name": "individual" }, { "name": "organization" }, { "name": "notification listeners (client side)" }, { "name": "events subscription" } ], "paths": { "/individual": { "get": { "operationId": "listIndividual", "summary": "List or find Individual objects", "description": "This operation list or find Individual entities", "tags": [ "individual" ], "parameters": [ { "type": "string", "required": false, "in": "query", "name": "fields", "description": "Comma-separated properties to be provided in response" }, { "type": "integer", "required": false, "in": "query", "name": "offset", "description": "Requested index for start of resources to be provided in response" }, { "type": "integer", "required": false, "in": "query", "name": "limit", "description": "Requested number of resources to be provided in response" } ], "responses": { "200": { "description": "Success", "headers": { "X-Total-Count": { "type": "integer", "description": "Total number of items matching criteria" }, "X-Result-Count": { "type": "integer", "description": "Actual number of items returned in the response body" } }, "schema": { "items": { "$ref": "#/definitions/Individual" }, "type": "array" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/Error" } }, "401": { "description": "Unauthorized", "schema": { "$ref": "#/definitions/Error" } }, "403": { "description": "Forbidden", "schema": { "$ref": "#/definitions/Error" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/Error" } }, "405": { "description": "Method Not allowed", "schema": { "$ref": "#/definitions/Error" } }, "409": { "description": "Conflict", "schema": { "$ref": "#/definitions/Error" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/Error" } } } }, "post": { "operationId": "createIndividual", "summary": "Creates a Individual", "description": "This operation creates a Individual entity.", "tags": [ "individual" ], "parameters": [ { "schema": { "$ref": "#/definitions/Individual_Create" }, "required": true, "in": "body", "name": "individual", "description": "The Individual to be created" } ], "responses": { "201": { "description": "Created", "schema": { "$ref": "#/definitions/Individual" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/Error" } }, "401": { "description": "Unauthorized", "schema": { "$ref": "#/definitions/Error" } }, "403": { "description": "Forbidden", "schema": { "$ref": "#/definitions/Error" } }, "405": { "description": "Method Not allowed", "schema": { "$ref": "#/definitions/Error" } }, "409": { "description": "Conflict", "schema": { "$ref": "#/definitions/Error" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/individual/{id}": { "get": { "operationId": "retrieveIndividual", "summary": "Retrieves a Individual by ID", "description": "This operation retrieves a Individual entity. Attribute selection is enabled for all first level attributes.", "tags": [ "individual" ], "parameters": [ { "required": true, "type": "string", "name": "id", "in": "path", "description": "Identifier of the Individual" }, { "required": false, "type": "string", "name": "fields", "in": "query", "description": "Comma-separated properties to provide in response" } ], "responses": { "200": { "description": "Success", "schema": { "$ref": "#/definitions/Individual" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/Error" } }, "401": { "description": "Unauthorized", "schema": { "$ref": "#/definitions/Error" } }, "403": { "description": "Forbidden", "schema": { "$ref": "#/definitions/Error" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/Error" } }, "405": { "description": "Method Not allowed", "schema": { "$ref": "#/definitions/Error" } }, "409": { "description": "Conflict", "schema": { "$ref": "#/definitions/Error" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/Error" } } } }, "patch": { "operationId": "patchIndividual", "summary": "Updates partially a Individual", "description": "This operation updates partially a Individual entity.", "tags": [ "individual" ], "parameters": [ { "required": true, "type": "string", "name": "id", "in": "path", "description": "Identifier of the Individual" }, { "schema": { "$ref": "#/definitions/Individual_Update" }, "required": true, "in": "body", "name": "individual", "description": "The Individual to be updated" } ], "responses": { "200": { "description": "Updated", "schema": { "$ref": "#/definitions/Individual" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/Error" } }, "401": { "description": "Unauthorized", "schema": { "$ref": "#/definitions/Error" } }, "403": { "description": "Forbidden", "schema": { "$ref": "#/definitions/Error" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/Error" } }, "405": { "description": "Method Not allowed", "schema": { "$ref": "#/definitions/Error" } }, "409": { "description": "Conflict", "schema": { "$ref": "#/definitions/Error" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/Error" } } } }, "delete": { "operationId": "deleteIndividual", "summary": "Deletes a Individual", "description": "This operation deletes a Individual entity.", "tags": [ "individual" ], "parameters": [ { "required": true, "type": "string", "name": "id", "in": "path", "description": "Identifier of the Individual" } ], "responses": { "204": { "description": "Deleted" }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/Error" } }, "401": { "description": "Unauthorized", "schema": { "$ref": "#/definitions/Error" } }, "403": { "description": "Forbidden", "schema": { "$ref": "#/definitions/Error" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/Error" } }, "405": { "description": "Method Not allowed", "schema": { "$ref": "#/definitions/Error" } }, "409": { "description": "Conflict", "schema": { "$ref": "#/definitions/Error" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/organization": { "get": { "operationId": "listOrganization", "summary": "List or find Organization objects", "description": "This operation list or find Organization entities", "tags": [ "organization" ], "parameters": [ { "type": "string", "required": false, "in": "query", "name": "fields", "description": "Comma-separated properties to be provided in response" }, { "type": "integer", "required": false, "in": "query", "name": "offset", "description": "Requested index for start of resources to be provided in response" }, { "type": "integer", "required": false, "in": "query", "name": "limit", "description": "Requested number of resources to be provided in response" } ], "responses": { "200": { "description": "Success", "headers": { "X-Total-Count": { "type": "integer", "description": "Total number of items matching criteria" }, "X-Result-Count": { "type": "integer", "description": "Actual number of items returned in the response body" } }, "schema": { "items": { "$ref": "#/definitions/Organization" }, "type": "array" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/Error" } }, "401": { "description": "Unauthorized", "schema": { "$ref": "#/definitions/Error" } }, "403": { "description": "Forbidden", "schema": { "$ref": "#/definitions/Error" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/Error" } }, "405": { "description": "Method Not allowed", "schema": { "$ref": "#/definitions/Error" } }, "409": { "description": "Conflict", "schema": { "$ref": "#/definitions/Error" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/Error" } } } }, "post": { "operationId": "createOrganization", "summary": "Creates a Organization", "description": "This operation creates a Organization entity.", "tags": [ "organization" ], "parameters": [ { "schema": { "$ref": "#/definitions/Organization_Create" }, "required": true, "in": "body", "name": "organization", "description": "The Organization to be created" } ], "responses": { "201": { "description": "Created", "schema": { "$ref": "#/definitions/Organization" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/Error" } }, "401": { "description": "Unauthorized", "schema": { "$ref": "#/definitions/Error" } }, "403": { "description": "Forbidden", "schema": { "$ref": "#/definitions/Error" } }, "405": { "description": "Method Not allowed", "schema": { "$ref": "#/definitions/Error" } }, "409": { "description": "Conflict", "schema": { "$ref": "#/definitions/Error" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/organization/{id}": { "get": { "operationId": "retrieveOrganization", "summary": "Retrieves a Organization by ID", "description": "This operation retrieves a Organization entity. Attribute selection is enabled for all first level attributes.", "tags": [ "organization" ], "parameters": [ { "required": true, "type": "string", "name": "id", "in": "path", "description": "Identifier of the Organization" }, { "required": false, "type": "string", "name": "fields", "in": "query", "description": "Comma-separated properties to provide in response" } ], "responses": { "200": { "description": "Success", "schema": { "$ref": "#/definitions/Organization" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/Error" } }, "401": { "description": "Unauthorized", "schema": { "$ref": "#/definitions/Error" } }, "403": { "description": "Forbidden", "schema": { "$ref": "#/definitions/Error" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/Error" } }, "405": { "description": "Method Not allowed", "schema": { "$ref": "#/definitions/Error" } }, "409": { "description": "Conflict", "schema": { "$ref": "#/definitions/Error" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/Error" } } } }, "patch": { "operationId": "patchOrganization", "summary": "Updates partially a Organization", "description": "This operation updates partially a Organization entity.", "tags": [ "organization" ], "parameters": [ { "required": true, "type": "string", "name": "id", "in": "path", "description": "Identifier of the Organization" }, { "schema": { "$ref": "#/definitions/Organization_Update" }, "required": true, "in": "body", "name": "organization", "description": "The Organization to be updated" } ], "responses": { "200": { "description": "Updated", "schema": { "$ref": "#/definitions/Organization" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/Error" } }, "401": { "description": "Unauthorized", "schema": { "$ref": "#/definitions/Error" } }, "403": { "description": "Forbidden", "schema": { "$ref": "#/definitions/Error" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/Error" } }, "405": { "description": "Method Not allowed", "schema": { "$ref": "#/definitions/Error" } }, "409": { "description": "Conflict", "schema": { "$ref": "#/definitions/Error" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/Error" } } } }, "delete": { "operationId": "deleteOrganization", "summary": "Deletes a Organization", "description": "This operation deletes a Organization entity.", "tags": [ "organization" ], "parameters": [ { "required": true, "type": "string", "name": "id", "in": "path", "description": "Identifier of the Organization" } ], "responses": { "204": { "description": "Deleted" }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/Error" } }, "401": { "description": "Unauthorized", "schema": { "$ref": "#/definitions/Error" } }, "403": { "description": "Forbidden", "schema": { "$ref": "#/definitions/Error" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/Error" } }, "405": { "description": "Method Not allowed", "schema": { "$ref": "#/definitions/Error" } }, "409": { "description": "Conflict", "schema": { "$ref": "#/definitions/Error" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/hub": { "post": { "operationId": "registerListener", "summary": "Register a listener", "description": "Sets the communication endpoint address the service instance must use to deliver information about its health state, execution state, failures and metrics.", "tags": [ "events subscription" ], "parameters": [ { "name": "data", "schema": { "$ref": "#/definitions/EventSubscriptionInput" }, "required": true, "in": "body", "description": "Data containing the callback endpoint to deliver the information" } ], "responses": { "201": { "description": "Subscribed", "schema": { "$ref": "#/definitions/EventSubscription" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/Error" } }, "401": { "description": "Unauthorized", "schema": { "$ref": "#/definitions/Error" } }, "403": { "description": "Forbidden", "schema": { "$ref": "#/definitions/Error" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/Error" } }, "405": { "description": "Method Not allowed", "schema": { "$ref": "#/definitions/Error" } }, "409": { "description": "Conflict", "schema": { "$ref": "#/definitions/Error" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/hub/{id}": { "delete": { "operationId": "unregisterListener", "summary": "Unregister a listener", "description": "Resets the communication endpoint address the service instance must use to deliver information about its health state, execution state, failures and metrics.", "tags": [ "events subscription" ], "parameters": [ { "name": "id", "type": "string", "required": true, "in": "path", "description": "The id of the registered listener" } ], "responses": { "204": { "description": "Deleted" }, "400": { "description": "Bad request", "schema": { "$ref": "#/definitions/Error" } }, "401": { "description": "Unauthorized", "schema": { "$ref": "#/definitions/Error" } }, "403": { "description": "Forbidden", "schema": { "$ref": "#/definitions/Error" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/Error" } }, "405": { "description": "Method not allowed", "schema": { "$ref": "#/definitions/Error" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/listener/organizationCreateEvent": { "post": { "operationId": "listenToOrganizationCreateEvent", "summary": "Client listener for entity OrganizationCreateEvent", "description": "Example of a client listener for receiving the notification OrganizationCreateEvent", "tags": [ "notification listeners (client side)" ], "parameters": [ { "schema": { "$ref": "#/definitions/OrganizationCreateEvent" }, "description": "The event data", "required": true, "name": "data", "in": "body" } ], "responses": { "201": { "description": "Notified", "schema": { "$ref": "#/definitions/EventSubscription" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/Error" } }, "401": { "description": "Unauthorized", "schema": { "$ref": "#/definitions/Error" } }, "403": { "description": "Forbidden", "schema": { "$ref": "#/definitions/Error" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/Error" } }, "405": { "description": "Method Not allowed", "schema": { "$ref": "#/definitions/Error" } }, "409": { "description": "Conflict", "schema": { "$ref": "#/definitions/Error" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/listener/organizationAttributeValueChangeEvent": { "post": { "operationId": "listenToOrganizationAttributeValueChangeEvent", "summary": "Client listener for entity OrganizationAttributeValueChangeEvent", "description": "Example of a client listener for receiving the notification OrganizationAttributeValueChangeEvent", "tags": [ "notification listeners (client side)" ], "parameters": [ { "schema": { "$ref": "#/definitions/OrganizationAttributeValueChangeEvent" }, "description": "The event data", "required": true, "name": "data", "in": "body" } ], "responses": { "201": { "description": "Notified", "schema": { "$ref": "#/definitions/EventSubscription" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/Error" } }, "401": { "description": "Unauthorized", "schema": { "$ref": "#/definitions/Error" } }, "403": { "description": "Forbidden", "schema": { "$ref": "#/definitions/Error" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/Error" } }, "405": { "description": "Method Not allowed", "schema": { "$ref": "#/definitions/Error" } }, "409": { "description": "Conflict", "schema": { "$ref": "#/definitions/Error" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/listener/organizationStateChangeEvent": { "post": { "operationId": "listenToOrganizationStateChangeEvent", "summary": "Client listener for entity OrganizationStateChangeEvent", "description": "Example of a client listener for receiving the notification OrganizationStateChangeEvent", "tags": [ "notification listeners (client side)" ], "parameters": [ { "schema": { "$ref": "#/definitions/OrganizationStateChangeEvent" }, "description": "The event data", "required": true, "name": "data", "in": "body" } ], "responses": { "201": { "description": "Notified", "schema": { "$ref": "#/definitions/EventSubscription" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/Error" } }, "401": { "description": "Unauthorized", "schema": { "$ref": "#/definitions/Error" } }, "403": { "description": "Forbidden", "schema": { "$ref": "#/definitions/Error" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/Error" } }, "405": { "description": "Method Not allowed", "schema": { "$ref": "#/definitions/Error" } }, "409": { "description": "Conflict", "schema": { "$ref": "#/definitions/Error" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/listener/organizationDeleteEvent": { "post": { "operationId": "listenToOrganizationDeleteEvent", "summary": "Client listener for entity OrganizationDeleteEvent", "description": "Example of a client listener for receiving the notification OrganizationDeleteEvent", "tags": [ "notification listeners (client side)" ], "parameters": [ { "schema": { "$ref": "#/definitions/OrganizationDeleteEvent" }, "description": "The event data", "required": true, "name": "data", "in": "body" } ], "responses": { "201": { "description": "Notified", "schema": { "$ref": "#/definitions/EventSubscription" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/Error" } }, "401": { "description": "Unauthorized", "schema": { "$ref": "#/definitions/Error" } }, "403": { "description": "Forbidden", "schema": { "$ref": "#/definitions/Error" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/Error" } }, "405": { "description": "Method Not allowed", "schema": { "$ref": "#/definitions/Error" } }, "409": { "description": "Conflict", "schema": { "$ref": "#/definitions/Error" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/listener/individualCreateEvent": { "post": { "operationId": "listenToIndividualCreateEvent", "summary": "Client listener for entity IndividualCreateEvent", "description": "Example of a client listener for receiving the notification IndividualCreateEvent", "tags": [ "notification listeners (client side)" ], "parameters": [ { "schema": { "$ref": "#/definitions/IndividualCreateEvent" }, "description": "The event data", "required": true, "name": "data", "in": "body" } ], "responses": { "201": { "description": "Notified", "schema": { "$ref": "#/definitions/EventSubscription" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/Error" } }, "401": { "description": "Unauthorized", "schema": { "$ref": "#/definitions/Error" } }, "403": { "description": "Forbidden", "schema": { "$ref": "#/definitions/Error" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/Error" } }, "405": { "description": "Method Not allowed", "schema": { "$ref": "#/definitions/Error" } }, "409": { "description": "Conflict", "schema": { "$ref": "#/definitions/Error" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/listener/individualAttributeValueChangeEvent": { "post": { "operationId": "listenToIndividualAttributeValueChangeEvent", "summary": "Client listener for entity IndividualAttributeValueChangeEvent", "description": "Example of a client listener for receiving the notification IndividualAttributeValueChangeEvent", "tags": [ "notification listeners (client side)" ], "parameters": [ { "schema": { "$ref": "#/definitions/IndividualAttributeValueChangeEvent" }, "description": "The event data", "required": true, "name": "data", "in": "body" } ], "responses": { "201": { "description": "Notified", "schema": { "$ref": "#/definitions/EventSubscription" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/Error" } }, "401": { "description": "Unauthorized", "schema": { "$ref": "#/definitions/Error" } }, "403": { "description": "Forbidden", "schema": { "$ref": "#/definitions/Error" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/Error" } }, "405": { "description": "Method Not allowed", "schema": { "$ref": "#/definitions/Error" } }, "409": { "description": "Conflict", "schema": { "$ref": "#/definitions/Error" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/listener/individualStateChangeEvent": { "post": { "operationId": "listenToIndividualStateChangeEvent", "summary": "Client listener for entity IndividualStateChangeEvent", "description": "Example of a client listener for receiving the notification IndividualStateChangeEvent", "tags": [ "notification listeners (client side)" ], "parameters": [ { "schema": { "$ref": "#/definitions/IndividualStateChangeEvent" }, "description": "The event data", "required": true, "name": "data", "in": "body" } ], "responses": { "201": { "description": "Notified", "schema": { "$ref": "#/definitions/EventSubscription" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/Error" } }, "401": { "description": "Unauthorized", "schema": { "$ref": "#/definitions/Error" } }, "403": { "description": "Forbidden", "schema": { "$ref": "#/definitions/Error" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/Error" } }, "405": { "description": "Method Not allowed", "schema": { "$ref": "#/definitions/Error" } }, "409": { "description": "Conflict", "schema": { "$ref": "#/definitions/Error" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/listener/individualDeleteEvent": { "post": { "operationId": "listenToIndividualDeleteEvent", "summary": "Client listener for entity IndividualDeleteEvent", "description": "Example of a client listener for receiving the notification IndividualDeleteEvent", "tags": [ "notification listeners (client side)" ], "parameters": [ { "schema": { "$ref": "#/definitions/IndividualDeleteEvent" }, "description": "The event data", "required": true, "name": "data", "in": "body" } ], "responses": { "201": { "description": "Notified", "schema": { "$ref": "#/definitions/EventSubscription" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/Error" } }, "401": { "description": "Unauthorized", "schema": { "$ref": "#/definitions/Error" } }, "403": { "description": "Forbidden", "schema": { "$ref": "#/definitions/Error" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/Error" } }, "405": { "description": "Method Not allowed", "schema": { "$ref": "#/definitions/Error" } }, "409": { "description": "Conflict", "schema": { "$ref": "#/definitions/Error" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/Error" } } } } } }, "definitions": { "Any": {}, "Attachment": { "type": "object", "description": "Complements the description of an element (for instance a product) through video, pictures...", "properties": { "id": { "type": "string", "description": "Unique identifier for this particular attachment" }, "href": { "type": "string", "description": "URI for this Attachment" }, "attachmentType": { "type": "string", "description": "Attachment type such as video, picture" }, "content": { "type": "string", "description": "The actual contents of the attachment object, if embedded, encoded as base64" }, "description": { "type": "string", "description": "A narrative text describing the content of the attachment" }, "mimeType": { "type": "string", "description": "Attachment mime type such as extension file for video, picture and document" }, "name": { "type": "string", "description": "The name of the attachment" }, "url": { "type": "string", "description": "Uniform Resource Locator, is a web page address (a subset of URI)" }, "size": { "$ref": "#/definitions/Quantity", "description": "The size of the attachment." }, "validFor": { "$ref": "#/definitions/TimePeriod", "description": "The period of time for which the attachment is valid" }, "@baseType": { "type": "string", "description": "When sub-classing, this defines the super-class" }, "@schemaLocation": { "type": "string", "description": "A URI to a JSON-Schema file that defines additional attributes and relationships", "format": "uri" }, "@type": { "type": "string", "description": "When sub-classing, this defines the sub-class entity name" } } }, "AttachmentRef": { "type": "object", "description": "Attachment reference. An attachment complements the description of an element (for instance a product) through video, pictures", "properties": { "id": { "type": "string", "description": "Unique-Identifier for this attachment" }, "href": { "type": "string", "description": "URL serving as reference for the attachment resource" }, "description": { "type": "string", "description": "A narrative text describing the content of the attachment" }, "name": { "type": "string", "description": "Name of the related entity." }, "url": { "type": "string", "description": "Link to the attachment media/content" }, "@baseType": { "type": "string", "description": "When sub-classing, this defines the super-class" }, "@schemaLocation": { "type": "string", "description": "A URI to a JSON-Schema file that defines additional attributes and relationships", "format": "uri" }, "@type": { "type": "string", "description": "When sub-classing, this defines the sub-class entity name" }, "@referredType": { "type": "string", "description": "The actual type of the target instance when needed for disambiguation." } }, "required": [ "id" ] }, "AttachmentRefOrValue": { "type": "object", "description": "An attachment by value or by reference. An attachment complements the description of an element, for example through a document, a video, a picture.", "properties": { "id": { "type": "string", "description": "Unique identifier for this particular attachment" }, "href": { "type": "string", "description": "URI for this Attachment" }, "attachmentType": { "type": "string", "description": "Attachment type such as video, picture" }, "content": { "type": "string", "description": "The actual contents of the attachment object, if embedded, encoded as base64" }, "description": { "type": "string", "description": "A narrative text describing the content of the attachment" }, "mimeType": { "type": "string", "description": "Attachment mime type such as extension file for video, picture and document" }, "name": { "type": "string", "description": "The name of the attachment" }, "url": { "type": "string", "description": "Uniform Resource Locator, is a web page address (a subset of URI)" }, "size": { "$ref": "#/definitions/Quantity", "description": "The size of the attachment." }, "validFor": { "$ref": "#/definitions/TimePeriod", "description": "The period of time for which the attachment is valid" }, "@baseType": { "type": "string", "description": "When sub-classing, this defines the super-class" }, "@schemaLocation": { "type": "string", "description": "A URI to a JSON-Schema file that defines additional attributes and relationships", "format": "uri" }, "@type": { "type": "string", "description": "When sub-classing, this defines the sub-class entity name" }, "@referredType": { "type": "string", "description": "The actual type of the target instance when needed for disambiguation." } } }, "Characteristic": { "type": "object", "description": "Describes a given characteristic of an object or entity through a name/value pair.", "required": [ "name", "value" ], "properties": { "name": { "type": "string", "description": "Name of the characteristic" }, "valueType": { "type": "string", "description": "Data type of the value of the characteristic" }, "value": { "$ref": "#/definitions/Any", "description": "The value of the characteristic" }, "@baseType": { "type": "string", "description": "When sub-classing, this defines the super-class" }, "@schemaLocation": { "type": "string", "description": "A URI to a JSON-Schema file that defines additional attributes and relationships", "format": "uri" }, "@type": { "type": "string", "description": "When sub-classing, this defines the sub-class entity name" } } }, "ContactMedium": { "type": "object", "description": "Indicates the contact medium that could be used to contact the party.", "properties": { "mediumType": { "type": "string", "description": "Type of the contact medium, such as: email address, telephone number, postal address" }, "preferred": { "type": "boolean", "description": "If true, indicates that is the preferred contact medium" }, "characteristic": { "$ref": "#/definitions/MediumCharacteristic", "description": "Any additional characteristic(s) of this contact medium" }, "validFor": { "$ref": "#/definitions/TimePeriod", "description": "The time period that the contact medium is valid for" }, "@baseType": { "type": "string", "description": "When sub-classing, this defines the super-class" }, "@schemaLocation": { "type": "string", "description": "A URI to a JSON-Schema file that defines additional attributes and relationships", "format": "uri" }, "@type": { "type": "string", "description": "When sub-classing, this defines the sub-class entity name" } } }, "Disability": { "type": "object", "description": "Lack or inadequate strength or ability.", "properties": { "disabilityCode": { "type": "string", "description": "Code of the disability" }, "disabilityName": { "type": "string", "description": "Name of the disability" }, "validFor": { "$ref": "#/definitions/TimePeriod" }, "@baseType": { "type": "string", "description": "When sub-classing, this defines the super-class" }, "@schemaLocation": { "type": "string", "description": "A URI to a JSON-Schema file that defines additional attributes and relationships", "format": "uri" }, "@type": { "type": "string", "description": "When sub-classing, this defines the sub-class entity name" } } }, "EntityRef": { "type": "object", "description": "Entity reference schema to be use for all entityRef class.", "properties": { "id": { "type": "string", "description": "Unique identifier of a related entity." }, "href": { "type": "string", "description": "Reference of the related entity." }, "name": { "type": "string", "description": "Name of the related entity." }, "@baseType": { "type": "string", "description": "When sub-classing, this defines the super-class" }, "@schemaLocation": { "type": "string", "description": "A URI to a JSON-Schema file that defines additional attributes and relationships", "format": "uri" }, "@type": { "type": "string", "description": "When sub-classing, this defines the sub-class entity name" }, "@referredType": { "type": "string", "description": "The actual type of the target instance when needed for disambiguation." } }, "required": [ "id" ] }, "ExternalReference": { "type": "object", "description": "External reference of the individual or reference in other system", "properties": { "externalReferenceType": { "type": "string", "description": "Type of the external reference" }, "name": { "type": "string", "description": "External reference name" }, "@baseType": { "type": "string", "description": "When sub-classing, this defines the super-class" }, "@schemaLocation": { "type": "string", "description": "A URI to a JSON-Schema file that defines additional attributes and relationships", "format": "uri" }, "@type": { "type": "string", "description": "When sub-classing, this defines the sub-class entity name" } } }, "Individual": { "type": "object", "description": "Individual represents a single human being (a man, woman or child). The individual can be a customer, an employee or any other person that the organization needs to store information about.", "required": [ "id" ], "properties": { "id": { "type": "string", "description": "Unique identifier of the organization" }, "href": { "type": "string", "description": "Hyperlink to access the organization" }, "aristocraticTitle": { "type": "string", "description": "e.g. Baron, Graf, Earl,\u2026" }, "birthDate": { "type": "string", "format": "date-time", "description": "Birth date" }, "countryOfBirth": { "type": "string", "description": "Country where the individual was born" }, "deathDate": { "type": "string", "format": "date-time", "description": "Date of death" }, "familyName": { "type": "string", "description": "Contains the non-chosen or inherited name. Also known as last name in the Western context" }, "familyNamePrefix": { "type": "string", "description": "Family name prefix" }, "formattedName": { "type": "string", "description": "A fully formatted name in one string with all of its pieces in their proper place and all of the necessary punctuation. Useful for specific contexts (Chinese, Japanese, Korean,\u2026)" }, "fullName": { "type": "string", "description": "Full name flatten (first, middle, and last names)" }, "gender": { "type": "string", "description": "Gender" }, "generation": { "type": "string", "description": "e.g.. Sr, Jr, III (the third),\u2026" }, "givenName": { "type": "string", "description": "First name of the individual" }, "legalName": { "type": "string", "description": "Legal name or birth name (name one has for official purposes)" }, "location": { "type": "string", "description": "Temporary current location od the individual (may be used if the individual has approved its sharing)" }, "maritalStatus": { "type": "string", "description": "Marital status (married, divorced, widow ...)" }, "middleName": { "type": "string", "description": "Middles name or initial" }, "nationality": { "type": "string", "description": "Nationality" }, "placeOfBirth": { "type": "string", "description": "Reference to the place where the individual was born" }, "preferredGivenName": { "type": "string", "description": "Contains the chosen name by which the individual prefers to be addressed. Note: This name may be a name other than a given name, such as a nickname" }, "title": { "type": "string", "description": "Useful for titles (aristocratic, social,...) Pr, Dr, Sir, ..." }, "contactMedium": { "type": "array", "items": { "$ref": "#/definitions/ContactMedium" } }, "creditRating": { "type": "array", "items": { "$ref": "#/definitions/PartyCreditProfile" } }, "disability": { "type": "array", "items": { "$ref": "#/definitions/Disability" } }, "externalReference": { "type": "array", "items": { "$ref": "#/definitions/ExternalReference" } }, "individualIdentification": { "type": "array", "items": { "$ref": "#/definitions/IndividualIdentification" } }, "languageAbility": { "type": "array", "items": { "$ref": "#/definitions/LanguageAbility" } }, "otherName": { "type": "array", "items": { "$ref": "#/definitions/OtherNameIndividual" } }, "partyCharacteristic": { "type": "array", "items": { "$ref": "#/definitions/Characteristic" } }, "relatedParty": { "type": "array", "items": { "$ref": "#/definitions/RelatedParty" } }, "skill": { "type": "array", "items": { "$ref": "#/definitions/Skill" } }, "status": { "$ref": "#/definitions/IndividualStateType", "description": "Status of the individual" }, "taxExemptionCertificate": { "type": "array", "items": { "$ref": "#/definitions/TaxExemptionCertificate" } }, "@baseType": { "type": "string", "description": "When sub-classing, this defines the super-class" }, "@schemaLocation": { "type": "string", "description": "A URI to a JSON-Schema file that defines additional attributes and relationships", "format": "uri" }, "@type": { "type": "string", "description": "When sub-classing, this defines the sub-class entity name" } } }, "Individual_Create": { "type": "object", "description": "Individual represents a single human being (a man, woman or child). The individual can be a customer, an employee or any other person that the organization needs to store information about.\nSkipped properties: id,href", "required": [ "givenName", "familyName" ], "properties": { "aristocraticTitle": { "type": "string", "description": "e.g. Baron, Graf, Earl,\u2026" }, "birthDate": { "type": "string", "format": "date-time", "description": "Birth date" }, "countryOfBirth": { "type": "string", "description": "Country where the individual was born" }, "deathDate": { "type": "string", "format": "date-time", "description": "Date of death" }, "familyName": { "type": "string", "description": "Contains the non-chosen or inherited name. Also known as last name in the Western context" }, "familyNamePrefix": { "type": "string", "description": "Family name prefix" }, "formattedName": { "type": "string", "description": "A fully formatted name in one string with all of its pieces in their proper place and all of the necessary punctuation. Useful for specific contexts (Chinese, Japanese, Korean,\u2026)" }, "fullName": { "type": "string", "description": "Full name flatten (first, middle, and last names)" }, "gender": { "type": "string", "description": "Gender" }, "generation": { "type": "string", "description": "e.g.. Sr, Jr, III (the third),\u2026" }, "givenName": { "type": "string", "description": "First name of the individual" }, "legalName": { "type": "string", "description": "Legal name or birth name (name one has for official purposes)" }, "location": { "type": "string", "description": "Temporary current location od the individual (may be used if the individual has approved its sharing)" }, "maritalStatus": { "type": "string", "description": "Marital status (married, divorced, widow ...)" }, "middleName": { "type": "string", "description": "Middles name or initial" }, "nationality": { "type": "string", "description": "Nationality" }, "placeOfBirth": { "type": "string", "description": "Reference to the place where the individual was born" }, "preferredGivenName": { "type": "string", "description": "Contains the chosen name by which the individual prefers to be addressed. Note: This name may be a name other than a given name, such as a nickname" }, "title": { "type": "string", "description": "Useful for titles (aristocratic, social,...) Pr, Dr, Sir, ..." }, "contactMedium": { "type": "array", "items": { "$ref": "#/definitions/ContactMedium" } }, "creditRating": { "type": "array", "items": { "$ref": "#/definitions/PartyCreditProfile" } }, "disability": { "type": "array", "items": { "$ref": "#/definitions/Disability" } }, "externalReference": { "type": "array", "items": { "$ref": "#/definitions/ExternalReference" } }, "individualIdentification": { "type": "array", "items": { "$ref": "#/definitions/IndividualIdentification" } }, "languageAbility": { "type": "array", "items": { "$ref": "#/definitions/LanguageAbility" } }, "otherName": { "type": "array", "items": { "$ref": "#/definitions/OtherNameIndividual" } }, "partyCharacteristic": { "type": "array", "items": { "$ref": "#/definitions/Characteristic" } }, "relatedParty": { "type": "array", "items": { "$ref": "#/definitions/RelatedParty" } }, "skill": { "type": "array", "items": { "$ref": "#/definitions/Skill" } }, "status": { "$ref": "#/definitions/IndividualStateType", "description": "Status of the individual" }, "taxExemptionCertificate": { "type": "array", "items": { "$ref": "#/definitions/TaxExemptionCertificate" } }, "@baseType": { "type": "string", "description": "When sub-classing, this defines the super-class" }, "@schemaLocation": { "type": "string", "description": "A URI to a JSON-Schema file that defines additional attributes and relationships", "format": "uri" }, "@type": { "type": "string", "description": "When sub-classing, this defines the sub-class entity name" } } }, "Individual_Update": { "type": "object", "description": "Individual represents a single human being (a man, woman or child). The individual can be a customer, an employee or any other person that the organization needs to store information about.\nSkipped properties: id,href", "properties": { "aristocraticTitle": { "type": "string", "description": "e.g. Baron, Graf, Earl,\u2026" }, "birthDate": { "type": "string", "format": "date-time", "description": "Birth date" }, "countryOfBirth": { "type": "string", "description": "Country where the individual was born" }, "deathDate": { "type": "string", "format": "date-time", "description": "Date of death" }, "familyName": { "type": "string", "description": "Contains the non-chosen or inherited name. Also known as last name in the Western context" }, "familyNamePrefix": { "type": "string", "description": "Family name prefix" }, "formattedName": { "type": "string", "description": "A fully formatted name in one string with all of its pieces in their proper place and all of the necessary punctuation. Useful for specific contexts (Chinese, Japanese, Korean,\u2026)" }, "fullName": { "type": "string", "description": "Full name flatten (first, middle, and last names)" }, "gender": { "type": "string", "description": "Gender" }, "generation": { "type": "string", "description": "e.g.. Sr, Jr, III (the third),\u2026" }, "givenName": { "type": "string", "description": "First name of the individual" }, "legalName": { "type": "string", "description": "Legal name or birth name (name one has for official purposes)" }, "location": { "type": "string", "description": "Temporary current location od the individual (may be used if the individual has approved its sharing)" }, "maritalStatus": { "type": "string", "description": "Marital status (married, divorced, widow ...)" }, "middleName": { "type": "string", "description": "Middles name or initial" }, "nationality": { "type": "string", "description": "Nationality" }, "placeOfBirth": { "type": "string", "description": "Reference to the place where the individual was born" }, "preferredGivenName": { "type": "string", "description": "Contains the chosen name by which the individual prefers to be addressed. Note: This name may be a name other than a given name, such as a nickname" }, "title": { "type": "string", "description": "Useful for titles (aristocratic, social,...) Pr, Dr, Sir, ..." }, "contactMedium": { "type": "array", "items": { "$ref": "#/definitions/ContactMedium" } }, "creditRating": { "type": "array", "items": { "$ref": "#/definitions/PartyCreditProfile" } }, "disability": { "type": "array", "items": { "$ref": "#/definitions/Disability" } }, "externalReference": { "type": "array", "items": { "$ref": "#/definitions/ExternalReference" } }, "individualIdentification": { "type": "array", "items": { "$ref": "#/definitions/IndividualIdentification" } }, "languageAbility": { "type": "array", "items": { "$ref": "#/definitions/LanguageAbility" } }, "otherName": { "type": "array", "items": { "$ref": "#/definitions/OtherNameIndividual" } }, "partyCharacteristic": { "type": "array", "items": { "$ref": "#/definitions/Characteristic" } }, "relatedParty": { "type": "array", "items": { "$ref": "#/definitions/RelatedParty" } }, "skill": { "type": "array", "items": { "$ref": "#/definitions/Skill" } }, "status": { "$ref": "#/definitions/IndividualStateType", "description": "Status of the individual" }, "taxExemptionCertificate": { "type": "array", "items": { "$ref": "#/definitions/TaxExemptionCertificate" } }, "@baseType": { "type": "string", "description": "When sub-classing, this defines the super-class" }, "@schemaLocation": { "type": "string", "description": "A URI to a JSON-Schema file that defines additional attributes and relationships", "format": "uri" }, "@type": { "type": "string", "description": "When sub-classing, this defines the sub-class entity name" } } }, "IndividualIdentification": { "type": "object", "description": "Represents our registration of information used as proof of identity by an individual (passport, national identity card, drivers license, social security number, birth certificate)", "properties": { "identificationId": { "type": "string", "description": "Identifier" }, "identificationType": { "type": "string", "description": "Identification type (passport, national identity card, drivers license, social security number, birth certificate)" }, "issuingAuthority": { "type": "string", "description": "Authority which has issued the identifier, such as: social security, town hall" }, "issuingDate": { "type": "string", "format": "date-time", "description": "Date at which the identifier was issued" }, "attachment": { "$ref": "#/definitions/AttachmentRefOrValue" }, "validFor": { "$ref": "#/definitions/TimePeriod", "description": "The period for which the identification information is valid." }, "@baseType": { "type": "string", "description": "When sub-classing, this defines the super-class" }, "@schemaLocation": { "type": "string", "description": "A URI to a JSON-Schema file that defines additional attributes and relationships", "format": "uri" }, "@type": { "type": "string", "description": "When sub-classing, this defines the sub-class entity name" } } }, "IndividualStateType": { "type": "string", "description": "Valid values for the lifecycle state of the individual", "enum": [ "initialized", "validated", "deceaded" ] }, "LanguageAbility": { "type": "object", "description": "Ability of an individual to understand or converse in a language.", "properties": { "isFavouriteLanguage": { "type": "boolean", "description": "A \u201ctrue\u201d value specifies whether the language is considered by the individual as his favourite one" }, "languageCode": { "type": "string", "description": "Language code (RFC 5646)" }, "languageName": { "type": "string", "description": "Language name" }, "listeningProficiency": { "type": "string", "description": "Listening proficiency evaluated for this language" }, "readingProficiency": { "type": "string", "description": "Reading proficiency evaluated for this language" }, "speakingProficiency": { "type": "string", "description": "Speaking proficiency evaluated for this language" }, "writingProficiency": { "type": "string", "description": "Writing proficiency evaluated for this language" }, "validFor": { "$ref": "#/definitions/TimePeriod" }, "@baseType": { "type": "string", "description": "When sub-classing, this defines the super-class" }, "@schemaLocation": { "type": "string", "description": "A URI to a JSON-Schema file that defines additional attributes and relationships", "format": "uri" }, "@type": { "type": "string", "description": "When sub-classing, this defines the sub-class entity name" } } }, "MediumCharacteristic": { "type": "object", "description": "Describes the contact medium characteristics that could be used to contact a party (an individual or an organization)", "properties": { "city": { "type": "string", "description": "The city" }, "contactType": { "type": "string", "description": "The type of contact, for example: phone number such as mobile, fixed home, fixed office. postal address such as shipping instalation\u2026" }, "country": { "type": "string", "description": "The country" }, "emailAddress": { "type": "string", "description": "Full email address in standard format" }, "faxNumber": { "type": "string", "description": "The fax number of the contact" }, "phoneNumber": { "type": "string", "description": "The primary phone number of the contact" }, "postCode": { "type": "string", "description": "Postcode" }, "socialNetworkId": { "type": "string", "description": "Identifier as a member of a social network" }, "stateOrProvince": { "type": "string", "description": "State or province" }, "street1": { "type": "string", "description": "Describes the street" }, "street2": { "type": "string", "description": "Complementary street description" }, "@baseType": { "type": "string", "description": "When sub-classing, this defines the super-class" }, "@schemaLocation": { "type": "string", "description": "A URI to a JSON-Schema file that defines additional attributes and relationships", "format": "uri" }, "@type": { "type": "string", "description": "When sub-classing, this defines the sub-class entity name" } } }, "Organization": { "type": "object", "description": "Organization represents a group of people identified by shared interests or purpose. Examples include business, department and enterprise. Because of the complex nature of many businesses, both organizations and organization units are represented by the same data.", "required": [ "id" ], "properties": { "id": { "type": "string", "description": "Unique identifier of the organization" }, "href": { "type": "string", "description": "Hyperlink to access the organization" }, "isHeadOffice": { "type": "boolean", "description": "If value is true, the organization is the head office" }, "isLegalEntity": { "type": "boolean", "description": "If value is true, the organization is a legal entity known by a national referential." }, "name": { "type": "string", "description": "Organization name (department name for example)" }, "nameType": { "type": "string", "description": "Type of the name : Co, Inc, Ltd,\u2026" }, "organizationType": { "type": "string", "description": "Type of Organization (company, department...)" }, "tradingName": { "type": "string", "description": "Name that the organization (unit) trades under" }, "contactMedium": { "type": "array", "items": { "$ref": "#/definitions/ContactMedium" } }, "creditRating": { "type": "array", "items": { "$ref": "#/definitions/PartyCreditProfile" } }, "existsDuring": { "$ref": "#/definitions/TimePeriod" }, "externalReference": { "type": "array", "items": { "$ref": "#/definitions/ExternalReference" } }, "organizationChildRelationship": { "type": "array", "items": { "$ref": "#/definitions/OrganizationChildRelationship" } }, "organizationIdentification": { "type": "array", "items": { "$ref": "#/definitions/OrganizationIdentification" } }, "organizationParentRelationship": { "$ref": "#/definitions/OrganizationParentRelationship" }, "otherName": { "type": "array", "items": { "$ref": "#/definitions/OtherNameOrganization" } }, "partyCharacteristic": { "type": "array", "items": { "$ref": "#/definitions/Characteristic" } }, "relatedParty": { "type": "array", "items": { "$ref": "#/definitions/RelatedParty" } }, "status": { "$ref": "#/definitions/OrganizationStateType", "description": "Status of the organization" }, "taxExemptionCertificate": { "type": "array", "items": { "$ref": "#/definitions/TaxExemptionCertificate" } }, "@baseType": { "type": "string", "description": "When sub-classing, this defines the super-class" }, "@schemaLocation": { "type": "string", "description": "A URI to a JSON-Schema file that defines additional attributes and relationships", "format": "uri" }, "@type": { "type": "string", "description": "When sub-classing, this defines the sub-class entity name" } } }, "Organization_Create": { "type": "object", "description": "Organization represents a group of people identified by shared interests or purpose. Examples include business, department and enterprise. Because of the complex nature of many businesses, both organizations and organization units are represented by the same data.\nSkipped properties: id,href", "required": [ "tradingName" ], "properties": { "isHeadOffice": { "type": "boolean", "description": "If value is true, the organization is the head office" }, "isLegalEntity": { "type": "boolean", "description": "If value is true, the organization is a legal entity known by a national referential." }, "name": { "type": "string", "description": "Organization name (department name for example)" }, "nameType": { "type": "string", "description": "Type of the name : Co, Inc, Ltd,\u2026" }, "organizationType": { "type": "string", "description": "Type of Organization (company, department...)" }, "tradingName": { "type": "string", "description": "Name that the organization (unit) trades under" }, "contactMedium": { "type": "array", "items": { "$ref": "#/definitions/ContactMedium" } }, "creditRating": { "type": "array", "items": { "$ref": "#/definitions/PartyCreditProfile" } }, "existsDuring": { "$ref": "#/definitions/TimePeriod" }, "externalReference": { "type": "array", "items": { "$ref": "#/definitions/ExternalReference" } }, "organizationChildRelationship": { "type": "array", "items": { "$ref": "#/definitions/OrganizationChildRelationship" } }, "organizationIdentification": { "type": "array", "items": { "$ref": "#/definitions/OrganizationIdentification" } }, "organizationParentRelationship": { "$ref": "#/definitions/OrganizationParentRelationship" }, "otherName": { "type": "array", "items": { "$ref": "#/definitions/OtherNameOrganization" } }, "partyCharacteristic": { "type": "array", "items": { "$ref": "#/definitions/Characteristic" } }, "relatedParty": { "type": "array", "items": { "$ref": "#/definitions/RelatedParty" } }, "status": { "$ref": "#/definitions/OrganizationStateType", "description": "Status of the organization" }, "taxExemptionCertificate": { "type": "array", "items": { "$ref": "#/definitions/TaxExemptionCertificate" } }, "@baseType": { "type": "string", "description": "When sub-classing, this defines the super-class" }, "@schemaLocation": { "type": "string", "description": "A URI to a JSON-Schema file that defines additional attributes and relationships", "format": "uri" }, "@type": { "type": "string", "description": "When sub-classing, this defines the sub-class entity name" } } }, "Organization_Update": { "type": "object", "description": "Organization represents a group of people identified by shared interests or purpose. Examples include business, department and enterprise. Because of the complex nature of many businesses, both organizations and organization units are represented by the same data.\nSkipped properties: id,href", "properties": { "isHeadOffice": { "type": "boolean", "description": "If value is true, the organization is the head office" }, "isLegalEntity": { "type": "boolean", "description": "If value is true, the organization is a legal entity known by a national referential." }, "name": { "type": "string", "description": "Organization name (department name for example)" }, "nameType": { "type": "string", "description": "Type of the name : Co, Inc, Ltd,\u2026" }, "organizationType": { "type": "string", "description": "Type of Organization (company, department...)" }, "tradingName": { "type": "string", "description": "Name that the organization (unit) trades under" }, "contactMedium": { "type": "array", "items": { "$ref": "#/definitions/ContactMedium" } }, "creditRating": { "type": "array", "items": { "$ref": "#/definitions/PartyCreditProfile" } }, "existsDuring": { "$ref": "#/definitions/TimePeriod" }, "externalReference": { "type": "array", "items": { "$ref": "#/definitions/ExternalReference" } }, "organizationChildRelationship": { "type": "array", "items": { "$ref": "#/definitions/OrganizationChildRelationship" } }, "organizationIdentification": { "type": "array", "items": { "$ref": "#/definitions/OrganizationIdentification" } }, "organizationParentRelationship": { "$ref": "#/definitions/OrganizationParentRelationship" }, "otherName": { "type": "array", "items": { "$ref": "#/definitions/OtherNameOrganization" } }, "partyCharacteristic": { "type": "array", "items": { "$ref": "#/definitions/Characteristic" } }, "relatedParty": { "type": "array", "items": { "$ref": "#/definitions/RelatedParty" } }, "status": { "$ref": "#/definitions/OrganizationStateType", "description": "Status of the organization" }, "taxExemptionCertificate": { "type": "array", "items": { "$ref": "#/definitions/TaxExemptionCertificate" } }, "@baseType": { "type": "string", "description": "When sub-classing, this defines the super-class" }, "@schemaLocation": { "type": "string", "description": "A URI to a JSON-Schema file that defines additional attributes and relationships", "format": "uri" }, "@type": { "type": "string", "description": "When sub-classing, this defines the sub-class entity name" } } }, "OrganizationChildRelationship": { "type": "object", "description": "Child references of an organization in a structure of organizations.", "properties": { "relationshipType": { "type": "string", "description": "Type of the relationship. Could be juridical, hierarchical, geographical, functional for example." }, "organization": { "$ref": "#/definitions/OrganizationRef" }, "@baseType": { "type": "string", "description": "When sub-classing, this defines the super-class" }, "@schemaLocation": { "type": "string", "description": "A URI to a JSON-Schema file that defines additional attributes and relationships", "format": "uri" }, "@type": { "type": "string", "description": "When sub-classing, this defines the sub-class entity name" } } }, "OrganizationIdentification": { "type": "object", "description": "Represents our registration of information used as proof of identity by an organization", "properties": { "identificationId": { "type": "string", "description": "Identifier" }, "identificationType": { "type": "string", "description": "Type of identification information used to identify the company in a country or internationally" }, "issuingAuthority": { "type": "string", "description": "Authority which has issued the identifier (chamber of commerce...)" }, "issuingDate": { "type": "string", "format": "date-time", "description": "Date at which the identifier was issued" }, "attachment": { "$ref": "#/definitions/AttachmentRefOrValue" }, "validFor": { "$ref": "#/definitions/TimePeriod", "description": "The period for which the identification information is valid." }, "@baseType": { "type": "string", "description": "When sub-classing, this defines the super-class" }, "@schemaLocation": { "type": "string", "description": "A URI to a JSON-Schema file that defines additional attributes and relationships", "format": "uri" }, "@type": { "type": "string", "description": "When sub-classing, this defines the sub-class entity name" } } }, "OrganizationParentRelationship": { "type": "object", "description": "Parent references of an organization in a structure of organizations.", "properties": { "relationshipType": { "type": "string", "description": "Type of the relationship. Could be juridical, hierarchical, geographical, functional for example." }, "organization": { "$ref": "#/definitions/OrganizationRef" }, "@baseType": { "type": "string", "description": "When sub-classing, this defines the super-class" }, "@schemaLocation": { "type": "string", "description": "A URI to a JSON-Schema file that defines additional attributes and relationships", "format": "uri" }, "@type": { "type": "string", "description": "When sub-classing, this defines the sub-class entity name" } } }, "OrganizationRef": { "type": "object", "properties": { "id": { "type": "string", "description": "Unique identifier of a related entity." }, "href": { "type": "string", "description": "Reference of the related entity." }, "name": { "type": "string", "description": "Name of the related entity." }, "@baseType": { "type": "string", "description": "When sub-classing, this defines the super-class" }, "@schemaLocation": { "type": "string", "description": "A URI to a JSON-Schema file that defines additional attributes and relationships", "format": "uri" }, "@type": { "type": "string", "description": "When sub-classing, this defines the sub-class entity name" }, "@referredType": { "type": "string", "description": "The actual type of the target instance when needed for disambiguation." } }, "required": [ "id" ] }, "OrganizationStateType": { "type": "string", "description": "Valid values for the lifecycle state of the organization", "enum": [ "initialized", "validated", "closed" ] }, "OtherNameIndividual": { "type": "object", "description": "Keeps track of other names, for example the old name of a woman before marriage or an artist name.", "properties": { "aristocraticTitle": { "type": "string", "description": "e.g. Baron, Graf, Earl,\u2026" }, "familyName": { "type": "string", "description": "Contains the non-chosen or inherited name. Also known as last name in the Western context" }, "familyNamePrefix": { "type": "string", "description": "Family name prefix" }, "formattedName": { "type": "string", "description": ". A fully formatted name in one string with all of its pieces in their proper place and all of the necessary punctuation. Useful for specific contexts (Chinese, Japanese, Korean,\u2026)" }, "fullName": { "type": "string", "description": "Full name flatten (first, middle, and last names)" }, "generation": { "type": "string", "description": "e.g. Sr, Jr\u2026" }, "givenName": { "type": "string", "description": "First name" }, "legalName": { "type": "string", "description": "Legal name or birth name (name one has for official purposes)" }, "middleName": { "type": "string", "description": "Middle name or initial" }, "preferredGivenName": { "type": "string", "description": "Contains the chosen name by which the person prefers to be addressed. Note: This name may be a name other than a given name, such as a nickname" }, "title": { "type": "string", "description": "Use for titles (aristrocatic, social, ...): Pr, Dr, Sir,...." }, "validFor": { "$ref": "#/definitions/TimePeriod" }, "@baseType": { "type": "string", "description": "When sub-classing, this defines the super-class" }, "@schemaLocation": { "type": "string", "description": "A URI to a JSON-Schema file that defines additional attributes and relationships", "format": "uri" }, "@type": { "type": "string", "description": "When sub-classing, this defines the sub-class entity name" } } }, "OtherNameOrganization": { "type": "object", "description": "Keeps track of other names, for example the old name of an organization.", "properties": { "name": { "type": "string", "description": "Organization name (department name for example)" }, "nameType": { "type": "string", "description": "Co. , Inc. , Ltd. , Pty Ltd. , Plc; , Gmbh" }, "tradingName": { "type": "string", "description": "The name that the organization trades under" }, "validFor": { "$ref": "#/definitions/TimePeriod" }, "@baseType": { "type": "string", "description": "When sub-classing, this defines the super-class" }, "@schemaLocation": { "type": "string", "description": "A URI to a JSON-Schema file that defines additional attributes and relationships", "format": "uri" }, "@type": { "type": "string", "description": "When sub-classing, this defines the sub-class entity name" } } }, "Party": { "type": "object", "description": "Generic Party structure used to define commonalities between sub concepts of Individual and Organization.", "properties": { "id": { "type": "string", "description": "Unique identifier of the organization" }, "href": { "type": "string", "description": "Hyperlink to access the organization" }, "contactMedium": { "type": "array", "items": { "$ref": "#/definitions/ContactMedium" } }, "creditRating": { "type": "array", "items": { "$ref": "#/definitions/PartyCreditProfile" } }, "externalReference": { "type": "array", "items": { "$ref": "#/definitions/ExternalReference" } }, "partyCharacteristic": { "type": "array", "items": { "$ref": "#/definitions/Characteristic" } }, "relatedParty": { "type": "array", "items": { "$ref": "#/definitions/RelatedParty" } }, "taxExemptionCertificate": { "type": "array", "items": { "$ref": "#/definitions/TaxExemptionCertificate" } }, "@baseType": { "type": "string", "description": "When sub-classing, this defines the super-class" }, "@schemaLocation": { "type": "string", "description": "A URI to a JSON-Schema file that defines additional attributes and relationships", "format": "uri" }, "@type": { "type": "string", "description": "When sub-classing, this defines the sub-class entity name" } } }, "PartyCreditProfile": { "type": "object", "description": "An individual might be evaluated for its worthiness and this evaluation might be based on a credit rating given by a credit agency.", "properties": { "creditAgencyName": { "type": "string", "description": "Name of the credit agency giving the score" }, "creditAgencyType": { "type": "string", "description": "Type of the credit agency giving the score" }, "ratingReference": { "type": "string", "description": "Reference corresponding to the credit rating" }, "ratingScore": { "type": "integer", "description": "A measure of a party\u2019s creditworthiness calculated on the basis of a combination of factors such as their income and credit history" }, "validFor": { "$ref": "#/definitions/TimePeriod" }, "@baseType": { "type": "string", "description": "When sub-classing, this defines the super-class" }, "@schemaLocation": { "type": "string", "description": "A URI to a JSON-Schema file that defines additional attributes and relationships", "format": "uri" }, "@type": { "type": "string", "description": "When sub-classing, this defines the sub-class entity name" } } }, "Quantity": { "type": "object", "description": "An amount in a given unit", "properties": { "amount": { "default": 1, "type": "number", "format": "float", "description": "Numeric value in a given unit" }, "units": { "type": "string", "description": "Unit" } } }, "RelatedParty": { "type": "object", "description": "Related Entity reference. A related party defines party or party role linked to a specific entity.", "required": [ "@referredType", "id" ], "properties": { "id": { "type": "string", "description": "Unique identifier of a related entity." }, "href": { "type": "string", "description": "Reference of the related entity." }, "name": { "type": "string", "description": "Name of the related entity." }, "role": { "type": "string", "description": "Role played by the related party" }, "@baseType": { "type": "string", "description": "When sub-classing, this defines the super-class" }, "@schemaLocation": { "type": "string", "description": "A URI to a JSON-Schema file that defines additional attributes and relationships", "format": "uri" }, "@type": { "type": "string", "description": "When sub-classing, this defines the sub-class entity name" }, "@referredType": { "type": "string", "description": "The actual type of the target instance when needed for disambiguation." } } }, "Skill": { "type": "object", "description": "Skills evaluated for an individual with a level and possibly with a limited validity when an obsolescence is defined (Ex: the first-aid certificate first level is limited to one year and an update training is required each year to keep the level).", "properties": { "comment": { "type": "string", "description": "A free text comment linked to the evaluation done" }, "evaluatedLevel": { "type": "string", "description": "Level of expertise in a skill evaluated for an individual" }, "skillCode": { "type": "string", "description": "Code of the skill" }, "skillName": { "type": "string", "description": "Name of the skill such as Java language,\u2026" }, "validFor": { "$ref": "#/definitions/TimePeriod" }, "@baseType": { "type": "string", "description": "When sub-classing, this defines the super-class" }, "@schemaLocation": { "type": "string", "description": "A URI to a JSON-Schema file that defines additional attributes and relationships", "format": "uri" }, "@type": { "type": "string", "description": "When sub-classing, this defines the sub-class entity name" } } }, "TaxDefinition": { "type": "object", "description": "Reference of a tax definition. A tax is levied by an authorized tax jurisdiction. There are many different types of tax (Federal Tax levied by the US Government, State Tax levied by the State of California,\u2026).", "properties": { "id": { "type": "string", "description": "Unique identifier of the tax." }, "name": { "type": "string", "description": "Tax name." }, "taxType": { "type": "string", "description": "Type of the tax." }, "@baseType": { "type": "string", "description": "When sub-classing, this defines the super-class" }, "@schemaLocation": { "type": "string", "description": "A URI to a JSON-Schema file that defines additional attributes and relationships", "format": "uri" }, "@type": { "type": "string", "description": "When sub-classing, this defines the sub-class entity name" }, "@referredType": { "type": "string", "description": "The actual type of the target instance when needed for disambiguation." } } }, "TaxExemptionCertificate": { "type": "object", "description": "A tax exemption certificate represents a tax exemption granted to a party (individual or organization) by a tax jurisdiction which may be a city, state, country,... An exemption has a certificate identifier (received from the jurisdiction that levied the tax) and a validity period. An exemption is per tax types and determines for each type of tax what portion of the tax is exempted (partial by percentage or complete) via the tax definition.", "properties": { "id": { "type": "string", "description": "Unique identifier of the certificate of the tax exemption" }, "attachment": { "$ref": "#/definitions/AttachmentRefOrValue" }, "taxDefinition": { "type": "array", "items": { "$ref": "#/definitions/TaxDefinition" } }, "validFor": { "$ref": "#/definitions/TimePeriod" }, "@baseType": { "type": "string", "description": "When sub-classing, this defines the super-class" }, "@schemaLocation": { "type": "string", "description": "A URI to a JSON-Schema file that defines additional attributes and relationships", "format": "uri" }, "@type": { "type": "string", "description": "When sub-classing, this defines the sub-class entity name" } } }, "TimePeriod": { "type": "object", "description": "A period of time, either as a deadline (endDateTime only) a startDateTime only, or both", "properties": { "endDateTime": { "type": "string", "format": "date-time", "description": "End of the time period, using IETC-RFC-3339 format" }, "startDateTime": { "type": "string", "format": "date-time", "description": "Start of the time period, using IETC-RFC-3339 format. If you define a start, you must also define an end" } } }, "EventSubscription": { "required": [ "id", "callback" ], "type": "object", "description": "Sets the communication endpoint address the service instance must use to deliver notification information", "properties": { "id": { "type": "string", "description": "Id of the listener" }, "callback": { "type": "string", "description": "The callback being registered." }, "query": { "type": "string", "description": "additional data to be passed" } } }, "EventSubscriptionInput": { "required": [ "callback" ], "type": "object", "description": "Sets the communication endpoint address the service instance must use to deliver notification information", "properties": { "callback": { "type": "string", "description": "The callback being registered." }, "query": { "type": "string", "description": "additional data to be passed" } } }, "OrganizationCreateEvent": { "type": "object", "description": "The notification data structure", "properties": { "eventId": { "type": "string", "description": "The identifier of the notification." }, "eventTime": { "type": "string", "description": "Time of the event occurrence.", "format": "date-time" }, "description": { "type": "string", "description": "An explnatory of the event." }, "timeOcurred": { "type": "string", "description": "The time the event occured.", "format": "date-time" }, "title": { "type": "string", "description": "The title of the event." }, "eventType": { "type": "string", "description": "The type of the notification." }, "domain": { "type": "string", "description": "The domain of the event." }, "priority": { "type": "string", "description": "A priority." }, "href": { "type": "string", "description": "Reference of the ProcessFlow" }, "id": { "type": "string", "description": "Identifier of the Process flow" }, "correlationId": { "type": "string", "description": "The correlation id for this event." }, "event": { "description": "The event payload linked to the involved resource object", "$ref": "#/definitions/OrganizationCreateEventPayload" } } }, "OrganizationCreateEventPayload": { "type": "object", "description": "The event data structure", "properties": { "organization": { "description": "The involved resource data for the event", "$ref": "#/definitions/Organization" } } }, "OrganizationAttributeValueChangeEvent": { "type": "object", "description": "The notification data structure", "properties": { "eventId": { "type": "string", "description": "The identifier of the notification." }, "fieldPath": { "type": "string", "description": "The path identifying the object field concerned by this notification." }, "eventTime": { "type": "string", "description": "Time of the event occurrence.", "format": "date-time" }, "description": { "type": "string", "description": "An explnatory of the event." }, "timeOcurred": { "type": "string", "description": "The time the event occured.", "format": "date-time" }, "title": { "type": "string", "description": "The title of the event." }, "eventType": { "type": "string", "description": "The type of the notification." }, "domain": { "type": "string", "description": "The domain of the event." }, "priority": { "type": "string", "description": "A priority." }, "correlationId": { "type": "string", "description": "The correlation id for this event." }, "event": { "description": "The event payload linked to the involved resource object", "$ref": "#/definitions/OrganizationAttributeValueChangeEventPayload" } } }, "OrganizationAttributeValueChangeEventPayload": { "type": "object", "description": "The event data structure", "properties": { "organization": { "description": "The involved resource data for the event", "$ref": "#/definitions/Organization" } } }, "OrganizationStateChangeEvent": { "type": "object", "description": "The notification data structure", "properties": { "eventId": { "type": "string", "description": "The identifier of the notification." }, "eventTime": { "type": "string", "description": "Time of the event occurrence.", "format": "date-time" }, "description": { "type": "string", "description": "An explnatory of the event." }, "timeOcurred": { "type": "string", "description": "The time the event occured.", "format": "date-time" }, "title": { "type": "string", "description": "The title of the event." }, "eventType": { "type": "string", "description": "The type of the notification." }, "domain": { "type": "string", "description": "The domain of the event." }, "priority": { "type": "string", "description": "A priority." }, "href": { "type": "string", "description": "Reference of the ProcessFlow" }, "id": { "type": "string", "description": "Identifier of the Process flow" }, "correlationId": { "type": "string", "description": "The correlation id for this event." }, "event": { "description": "The event payload linked to the involved resource object", "$ref": "#/definitions/OrganizationStateChangeEventPayload" } } }, "OrganizationStateChangeEventPayload": { "type": "object", "description": "The event data structure", "properties": { "organization": { "description": "The involved resource data for the event", "$ref": "#/definitions/Organization" } } }, "OrganizationDeleteEvent": { "type": "object", "description": "The notification data structure", "properties": { "eventId": { "type": "string", "description": "The identifier of the notification." }, "eventTime": { "type": "string", "description": "Time of the event occurrence.", "format": "date-time" }, "description": { "type": "string", "description": "An explnatory of the event." }, "timeOcurred": { "type": "string", "description": "The time the event occured.", "format": "date-time" }, "title": { "type": "string", "description": "The title of the event." }, "eventType": { "type": "string", "description": "The type of the notification." }, "domain": { "type": "string", "description": "The domain of the event." }, "priority": { "type": "string", "description": "A priority." }, "href": { "type": "string", "description": "Reference of the ProcessFlow" }, "id": { "type": "string", "description": "Identifier of the Process flow" }, "correlationId": { "type": "string", "description": "The correlation id for this event." }, "event": { "description": "The event payload linked to the involved resource object", "$ref": "#/definitions/OrganizationDeleteEventPayload" } } }, "OrganizationDeleteEventPayload": { "type": "object", "description": "The event data structure", "properties": { "organization": { "description": "The involved resource data for the event", "$ref": "#/definitions/Organization" } } }, "IndividualCreateEvent": { "type": "object", "description": "The notification data structure", "properties": { "eventId": { "type": "string", "description": "The identifier of the notification." }, "eventTime": { "type": "string", "description": "Time of the event occurrence.", "format": "date-time" }, "description": { "type": "string", "description": "An explnatory of the event." }, "timeOcurred": { "type": "string", "description": "The time the event occured.", "format": "date-time" }, "title": { "type": "string", "description": "The title of the event." }, "eventType": { "type": "string", "description": "The type of the notification." }, "domain": { "type": "string", "description": "The domain of the event." }, "priority": { "type": "string", "description": "A priority." }, "href": { "type": "string", "description": "Reference of the ProcessFlow" }, "id": { "type": "string", "description": "Identifier of the Process flow" }, "correlationId": { "type": "string", "description": "The correlation id for this event." }, "event": { "description": "The event payload linked to the involved resource object", "$ref": "#/definitions/IndividualCreateEventPayload" } } }, "IndividualCreateEventPayload": { "type": "object", "description": "The event data structure", "properties": { "individual": { "description": "The involved resource data for the event", "$ref": "#/definitions/Individual" } } }, "IndividualAttributeValueChangeEvent": { "type": "object", "description": "The notification data structure", "properties": { "eventId": { "type": "string", "description": "The identifier of the notification." }, "fieldPath": { "type": "string", "description": "The path identifying the object field concerned by this notification." }, "eventTime": { "type": "string", "description": "Time of the event occurrence.", "format": "date-time" }, "description": { "type": "string", "description": "An explnatory of the event." }, "timeOcurred": { "type": "string", "description": "The time the event occured.", "format": "date-time" }, "title": { "type": "string", "description": "The title of the event." }, "eventType": { "type": "string", "description": "The type of the notification." }, "domain": { "type": "string", "description": "The domain of the event." }, "priority": { "type": "string", "description": "A priority." }, "correlationId": { "type": "string", "description": "The correlation id for this event." }, "event": { "description": "The event payload linked to the involved resource object", "$ref": "#/definitions/IndividualAttributeValueChangeEventPayload" } } }, "IndividualAttributeValueChangeEventPayload": { "type": "object", "description": "The event data structure", "properties": { "individual": { "description": "The involved resource data for the event", "$ref": "#/definitions/Individual" } } }, "IndividualStateChangeEvent": { "type": "object", "description": "The notification data structure", "properties": { "eventId": { "type": "string", "description": "The identifier of the notification." }, "eventTime": { "type": "string", "description": "Time of the event occurrence.", "format": "date-time" }, "description": { "type": "string", "description": "An explnatory of the event." }, "timeOcurred": { "type": "string", "description": "The time the event occured.", "format": "date-time" }, "title": { "type": "string", "description": "The title of the event." }, "eventType": { "type": "string", "description": "The type of the notification." }, "domain": { "type": "string", "description": "The domain of the event." }, "priority": { "type": "string", "description": "A priority." }, "href": { "type": "string", "description": "Reference of the ProcessFlow" }, "id": { "type": "string", "description": "Identifier of the Process flow" }, "correlationId": { "type": "string", "description": "The correlation id for this event." }, "event": { "description": "The event payload linked to the involved resource object", "$ref": "#/definitions/IndividualStateChangeEventPayload" } } }, "IndividualStateChangeEventPayload": { "type": "object", "description": "The event data structure", "properties": { "individual": { "description": "The involved resource data for the event", "$ref": "#/definitions/Individual" } } }, "IndividualDeleteEvent": { "type": "object", "description": "The notification data structure", "properties": { "eventId": { "type": "string", "description": "The identifier of the notification." }, "eventTime": { "type": "string", "description": "Time of the event occurrence.", "format": "date-time" }, "description": { "type": "string", "description": "An explnatory of the event." }, "timeOcurred": { "type": "string", "description": "The time the event occured.", "format": "date-time" }, "title": { "type": "string", "description": "The title of the event." }, "eventType": { "type": "string", "description": "The type of the notification." }, "domain": { "type": "string", "description": "The domain of the event." }, "priority": { "type": "string", "description": "A priority." }, "href": { "type": "string", "description": "Reference of the ProcessFlow" }, "id": { "type": "string", "description": "Identifier of the Process flow" }, "correlationId": { "type": "string", "description": "The correlation id for this event." }, "event": { "description": "The event payload linked to the involved resource object", "$ref": "#/definitions/IndividualDeleteEventPayload" } } }, "IndividualDeleteEventPayload": { "type": "object", "description": "The event data structure", "properties": { "individual": { "description": "The involved resource data for the event", "$ref": "#/definitions/Individual" } } }, "Error": { "required": [ "code", "reason" ], "type": "object", "description": "Used when an API throws an Error, typically with a HTTP error response-code (3xx, 4xx, 5xx)", "properties": { "code": { "type": "string", "description": "Application relevant detail, defined in the API or a common list." }, "reason": { "type": "string", "description": "Explanation of the reason for the error which can be shown to a client user." }, "message": { "type": "string", "description": "More details and corrective actions related to the error which can be shown to a client user." }, "status": { "type": "string", "description": "HTTP Error code extension" }, "referenceError": { "type": "string", "description": "URI of documentation describing the error.", "format": "uri" }, "@baseType": { "type": "string", "description": "When sub-classing, this defines the super-class." }, "@schemaLocation": { "type": "string", "description": "A URI to a JSON-Schema file that defines additional attributes and relationships", "format": "uri" }, "@type": { "type": "string", "description": "When sub-classing, this defines the sub-class entity name." } } } } }