Przejdź do treści

Profile kanoniczne

Każdy zasób API.ERP ma co najmniej jeden profil opisany schematem JSON. Adres profilu jest tym samym adresem, który zasób niesie w meta.profile, karta wdrożenia w rest[].resource[].supportedProfile, a wyszukiwanie w parametrze profile.

Adres jest jednocześnie miejscem publikacji: https://api-erp.kamsoft.pl/ns/StructureDefinition/<Nazwa> oddaje schemat tego profilu, a odwołania między schematami używają tych samych adresów, więc walidator pobierze wszystko, czego potrzebuje. Tabela niżej linkuje te same pliki w układzie po zasobie. Schematy poniżej są wersjonowane razem z API; obowiązująca wersja to ta opublikowana w tym przewodniku.

Profile w formacie JSON Schema

Zasób Więcej o modelu JSON Schema
AccountingVariant Wariant księgowy AccountingVariant.schema.json
Address Adres Address.schema.json
AllocationItem Pozycja dokumentu AllocationItem.schema.json
AssetComponent Składowa majątku AssetComponent.schema.json
Attachment (bazowy) Attachment Attachment.schema.json
Attachment – medycyna pracy Attachment AttachmentOccupationalMedicine.schema.json
Attachment – załącznik magazynowy Attachment WarehouseAttachment.schema.json
Attribute Attribute Attribute.schema.json
BankAccount Rachunek bankowy BankAccount.schema.json
Capability Zdolność Capability.schema.json
CodeableConcept Pojęcie kodowane CodeableConcept.schema.json
ContactPoint Punkt kontaktu ContactPoint.schema.json
CostAssignment Przypisanie kosztów CostAssignment.schema.json
CostAssignmentPosition Przypisanie kosztów CostAssignmentPosition.schema.json
CostCarrier Nośnik kosztów CostCarrier.schema.json
CostCenter Centrum kosztów CostCenter.schema.json
DeliveryScheduleLine Zamówienie zakupu DeliveryScheduleLine.schema.json
DocumentPosition Pozycja dokumentu DocumentPosition.schema.json
DocumentReference DokumentReference DocumentReference.schema.json
DocumentReference – dokument kadrowy DokumentReference HrInboxDocument.schema.json
DocumentReference – dokument magazynowy DokumentReference WarehouseDocument.schema.json
EmployeeProfessionalGroup Przypisanie do grupy zawodowej EmployeeProfessionalGroup.schema.json
Employment Zatrudnienie Employment.schema.json
EmploymentPosition Zatrudnienie EmploymentPosition.schema.json
FixedAsset Środek trwały FixedAsset.schema.json
FixedAssetAllocation Alokacja ŚT FixedAssetAllocation.schema.json
FixedAssetDocument Dokument ŚT FixedAssetDocument.schema.json
FixedAssetDocumentPosition Dokument ŚT FixedAssetDocumentPosition.schema.json
FormulaComponent Składnik formuły FormulaComponent.schema.json
GrantAssignment Przyznanie uprawnienia GrantAssignment.schema.json
Identifier Identyfikator Identifier.schema.json
Inventory Stan magazynowy Inventory.schema.json
InventoryDocument Dokument magazynowy InventoryDocument.schema.json
InventoryDocumentPosition Pozycja dokumentu magazynowego InventoryDocumentPosition.schema.json
Invoice Faktura Invoice.schema.json
InvoiceCostLink Faktura InvoiceCostLink.schema.json
InvoicePosition Faktura InvoicePosition.schema.json
InvoiceTaxLine Faktura InvoiceTaxLine.schema.json
JournalEntry Wpis w dzienniku JournalEntry.schema.json
JournalEntryPosition Wpis w dzienniku JournalEntryPosition.schema.json
Location Lokalizacja Location.schema.json
Location – magazyn Warehouse Warehouse.schema.json
Location – miejsce składowania Warehouse StorageLocation.schema.json
Location – miejsce użytkowania Lokalizacja UsagePlace.schema.json
Meta Metadane zasobu Meta.schema.json
Money Kwota Money.schema.json
NamingSystem Przestrzeń identyfikatorów NamingSystem.schema.json
Notification Powiadomienie Notification.schema.json
OrganizationAssignment Przypisanie do jednostki OrganizationAssignment.schema.json
OrganizationUnit Jednostka organizacyjna OrganizationUnit.schema.json
Participant Uczestnik Participant.schema.json
Party Strona Party.schema.json
Party – dysponent majątku Strona AssetHolder.schema.json
Party – kontrahent Strona Contractor.schema.json
Party – pracodawca Strona Employer.schema.json
Party – pracownik Strona Employee.schema.json
PartyRelationship Relacja stron PartyRelationship.schema.json
PartyRole Rola strony PartyRole.schema.json
PartyRole – rola dostawcy Rola strony SupplierRole.schema.json
PartyRole – rola odbiorcy Rola strony CustomerRole.schema.json
PartyRole – rola pracodawcy Rola strony EmployerRole.schema.json
PartyRole – rola pracownika Rola strony EmployeeRole.schema.json
PartyRole – rola płatnika Rola strony PayerRole.schema.json
Payment Płatność Payment.schema.json
Period Okres Period.schema.json
Position Stanowisko Position.schema.json
PostingInstruction Instrukcja dekretacji PostingInstruction.schema.json
PostingInstructionLine Instrukcja dekretacji PostingInstructionLine.schema.json
ProductDefinition Definicja produktu ProductDefinition.schema.json
ProductPricing Ceny produktu ProductPricing.schema.json
ProfessionalGroup Grupa zawodowa ProfessionalGroup.schema.json
PurchaseOrder Zamówienie zakupu PurchaseOrder.schema.json
PurchaseOrderPosition Zamówienie zakupu PurchaseOrderPosition.schema.json
PurchaseRequisition Zapotrzebowanie PurchaseRequisition.schema.json
PurchaseRequisitionPosition Zapotrzebowanie PurchaseRequisitionPosition.schema.json
Qualification Kwalifikacja Qualification.schema.json
Quantity Ilość Quantity.schema.json
Reference Referencja Reference.schema.json
Register Rejestr księgowy Register.schema.json
ReturnDocument Dokument zwrotu ReturnDocument.schema.json
ValueItem Pozycja dokumentu ValueItem.schema.json
ValueSet ValueSet ValueSet.schema.json
ValueSet – cechy majątku ValueSet AssetAttributeValueSet.schema.json
ValueSet – jednostki miary ValueSet UnitOfMeasureValueSet.schema.json
ValueSet – poziom hierarchii przypisań ValueSet OrganizationAssignmentHierarchyLevelValueSet.schema.json
ValueSet – rodzaj majątku ValueSet AssetKindValueSet.schema.json
ValueSet – specjalności ValueSet SpecialtyValueSet.schema.json
ValueSet – typ dokumentu majątkowego ValueSet AssetDocumentTypeValueSet.schema.json
ValueSet – typ dokumentu skrzynki ValueSet InboxDocumentTypeValueSet.schema.json
ValueSet – typ zatrudnienia ValueSet EmploymentTypeValueSet.schema.json

Jak czytać JSON Schema profilu

  • Schemat zawiera $id (adres profilu), title, version oraz properties z opisem każdego pola.
  • Pole required pojawia się tylko gdy profil nakłada dodatkowe ograniczenia — np. AttachmentOccupationalMedicine wymaga identifier i data.
  • Zasoby z więcej niż jednym profilem (jak Attachment) mają osobny wiersz dla każdego wariantu — każdy wariant może mieć inne pola wymagane.
  • Wersję profilu niesie pole version wewnątrz schematu.

Jak pobrać i sprawdzić profil

Schemat pobiera się spod adresu profilu, tego samego, który zasób niesie w meta.profile:

GET https://api-erp.kamsoft.pl/ns/StructureDefinition/Contractor

Odwołania wewnątrz schematu ($ref do Identifier, CodeableConcept, Money i pozostałych typów) wskazują adresy w tej samej przestrzeni, więc walidator pobierze je sam. Walidacja obejmuje cały zasób, nie tylko pola własne. Tabela wyżej linkuje te same schematy w układzie po zasobie, wygodnym do przeglądania.