YaaS RAML Patterns

Traits

Version Name / Link Description
  Billing  
v1 trait-billing-aware.yaml Trait which provides billing headers.
  Caching  
v1 trait-cacheable.yaml Trait which provides support for caching headers.
v1 trait-cacheable-content-based.yaml Trait for providing ETag based cache validation.
v1 trait-cacheable-time-based.yaml Trait for providing time based cache validation.
  Localization  
v1 trait-localized-modification.yaml Trait for modifying localized attributes
v1 trait-localized-retrieval.yaml Trait for retrieving localized attributes
  Security  
v2 trait-oauth2.yaml Trait using OAuth2 authentication for restricting resources/methods access.
v1 trait-restricted.yaml Trait for marking a resource/method as restricted.
v1 trait-session-aware.yaml Trait for providing a session identifier to a method.
v2 trait-yaas-aware.yaml Trait for marking a resource/method as being aware of the request identity.
  Tooling  
v1 trait-countable.yaml Trait for marking a resource/method as countable.
v2 trait-paged.yaml Trait for marking a resource/method as paged.
v1 trait-projectable.yaml Trait for marking a resource/method as limited/filtered.
v1 trait-queryable.yaml Trait for providing a simple querying feature for returning matching result
v1 trait-sortable.yaml Trait for marking a resource/method as sorted.

Security Schemas

Version Name / Link Description
v1 security-schema-basic.yaml Security schema using basic authentication for restricting resources/methods access.

Resource Types

Version Name / Link Description
v1 resource-type-collection.yaml Resource type which specifies a parameterized template for a collection resource
v3 resource-type-element.yaml Resource type which specifies a parameterized template for a single element resource

Schemas

Version Name / Link Description
v1 schema-createdAt.json Schema defining a creation time value.
v1 schema-encrypted.json Schema defining an encrypted value.
v1 schema-error-message.json Error schema to use for consistent error response payload
v1 schema-id.json Schema defining an object identifier.
v1 schema-localized.json Schema defining a localized value.
v1 schema-modifiedAt.json Schema defining a modification time value.
v2 schema-monetary-amount.json Schema defining monetary amount in given currency.
v2 schema-quantitative-value.json Schema defining quantitative amount in given measurement unit.
v1 schema-resource-location.json Resource Location schema