RAML API (v1)

http://localhost:8081/{version}

Table of contents

RAML API

This documents the API calls that can be made to get RAML of a module defined by X-Okapi-Module-Id header

/_/ramls

GET /_/ramls

Get RAMLs for the given module defined by header X-Okapi-Module-Id. Without path query param will return list of RAML paths. With path query param will return the specific RAML with resolvable references.

GET /_/ramls
Query Parameters
  • path: (string)

    Path to specific RAML

    Example:

    users.raml

Response 200

RAML

Body

Media type: application/json

Type: any

Example:

[
  "proxiesFor.raml",
  "users.raml",
  "addressTypes.raml",
  "groups.raml"
]

Media type: application/raml+yaml

Type: any

Example:

#%RAML 1.0
title: Users
version: v1
baseUri: http://github.com/org/folio/mod-users

documentation:
  - title: mod-users API
    content: This documents the API calls that can be made to query and manage users of the system

types:
  user: !include http://localhost:9130/_/jsonSchemas?path=userdata.json
  userdataCollection: !include http://localhost:9130/_/jsonSchemas?path=userdataCollection.json
  errors: !include http://localhost:9130/_/jsonSchemas?path=raml-util/schemas/errors.schema

traits:
  orderable: !include http://localhost:9130/_/ramls?path=raml-util/traits/orderable.raml
  pageable: !include http://localhost:9130/_/ramls?path=raml-util/traits/pageable.raml
  searchable: !include http://localhost:9130/_/ramls?path=raml-util/traits/searchable.raml
  language: !include http://localhost:9130/_/ramls?path=raml-util/traits/language.raml
  validate: !include http://localhost:9130/_/ramls?path=raml-util/traits/validation.raml
  facets: !include http://localhost:9130/_/ramls?path=raml-util/traits/facets.raml

resourceTypes:
  collection: !include http://localhost:9130/_/ramls?path=raml-util/rtypes/collection.raml
  collection-item: !include http://localhost:9130/_/ramls?path=raml-util/rtypes/item-collection.raml
  get-only: !include http://localhost:9130/_/ramls?path=raml-util/rtypes/get-only.raml
  post-empty-body: !include http://localhost:9130/_/ramls?path=raml-util/rtypes/post-empty-body.raml

/users:
  type:
    collection:
      exampleCollection: !include http://localhost:9130/_/jsonSchemas?path=examples/user_collection.sample
      exampleItem: !include http://localhost:9130/_/jsonSchemas?path=examples/user.sample
      schemaCollection: userdataCollection
      schemaItem: user
  get:
    is: [
      searchable: {description: "", example: "active=true sortBy username"},
      orderable: {fieldsList: "field A, field B"},
      pageable,
      facets
    ]
    description: Return a list of users
  post:
    is: [validate]
    description: Create a user
  /{userId}:
    type:
      collection-item:
        exampleItem: !include http://localhost:9130/_/jsonSchemas?path=examples/user.sample
        schema: user
    get:
      description: Get a single user

Response 404

RAML with a given path not found

Body

Media type: text/plain

Type: any

Response 500

Internal server error

Body

Media type: text/plain

Type: any

Example:

Internal server error, contact administrator