{{ metadata.projectName }}

Created by {{ metadata.fileAuthor }} on {{ metadata.pubDate }} via Erlenmeyer.
Copyright © {{ metadata.pubYear }} {{ metadata.projectOwner }}. All rights reserved.


{% for model in models %}

{{ model.className }}

GET /{{ model.className }}s

Parameters:

None

Responses:

[
    {
        {%- for attribute in model.attributes %}
        "{{ attribute.name }}": {{ attribute.exampleValue }}
        {%- endfor -%}
        {%- for relationship in model.relationships if not relationship.isToMany %}
        "{{ relationship.name }}": {{ relationship.exampleValue }}
        {%- endfor %}
    }
]

PUT /{{ model.className }}s

Parameters:

{% for attribute in model.attributes %} {% endfor %} {% for relationship in model.relationships if not relationship.isToMany %} {% endfor %}
Name Type
{{ attribute.name }} {{ attribute.type }}
{{ relationship.name }} {{ relationship.type }}

Responses:

GET /{{ model.className }}s/<{{ model.primaryKey }}>

Parameters:

Name Type
{{ model.primaryKey }} {{ model.primaryKeyType }}

Responses:

{
    {%- for attribute in model.attributes %}
    "{{ attribute.name }}": {{ attribute.exampleValue }}
    {%- endfor -%}
    {% for relationship in model.relationships if not relationship.isToMany %}
    "{{ relationship.name }}": {{ relationship.exampleValue }}
    {%- endfor %}
}

POST /{{ model.className }}s/<{{ model.primaryKey }}>

Parameters:

{% for attribute in model.attributes %} {% endfor %} {% for relationship in model.relationships if not relationship.isToMany %} {% endfor %}
Name Type
{{ attribute.name }} {{ attribute.type }}
{{ relationship.name }} {{ relationship.type }}

Responses:

DELETE /{{ model.className }}s/<{{ model.primaryKey }}>

Parameters:

Name Type
{{ model.primaryKey }} {{ model.primaryKeyType }}

Responses:

{% for relationship in model.relationships %} {% if relationship.isToMany %}

GET /{{ model.className }}s/<{{ model.primaryKey }}>/{{ relationship.name }}

Parameters:

Name Type
{{ model.primaryKey }} {{ model.primaryKeyType }}

Responses:

{% for model in models if model.className == relationship.className %}
[
    {
        {%- for attribute in model.attributes %}
        "{{ attribute.name }}": {{ attribute.exampleValue }}
        {%- endfor -%}
        {% for relationship in model.relationships if not relationship.isToMany %}
        "{{ relationship.name }}": {{ relationship.exampleValue }}
        {%- endfor %}
    }
]
{% endfor %}

PUT /{{ model.className }}s/<{{ model.primaryKey }}>/{{ relationship.name }}

Parameters:

Name Type
{{ model.primaryKey }} {{ model.primaryKeyType }}
{{ relationship.name }}Object {{ model.primaryKeyType }}

Responses:

DELETE /{{ model.className }}s/<{{ model.primaryKey }}>/{{ relationship.name }}

Parameters:

Name Type
{{ model.primaryKey }} {{ model.primaryKeyType }}
{{ relationship.name }}Object {{ model.primaryKeyType }}

Responses:

{% else %}

GET /{{ model.className }}s/<{{ model.primaryKey }}>/{{ relationship.name }}

Parameters:

Name Type
{{ model.primaryKey }} {{ model.primaryKeyType }}

Responses:

{% for model in models if model.className == relationship.className %}
{
    {%- for attribute in model.attributes %}
    "{{ attribute.name }}": {{ attribute.exampleValue }}
    {%- endfor -%}
    {% for relationship in model.relationships if not relationship.isToMany %}
    "{{ relationship.name }}": {{ relationship.exampleValue }}
    {%- endfor %}
}
{% endfor %}

POST /{{ model.className }}s/<{{ model.primaryKey }}>/{{ relationship.name }}

Parameters:

Name Type
{{ model.primaryKey }} {{ model.primaryKeyType }}
{{ relationship.name }}Object {{ model.primaryKeyType }}

Responses:

{% endif %} {% endfor %}
{% endfor %}