Documentation menu
API reference

What actually happens

Covers meeting, case, permit and metric. Every parameter, response and example below is generated from the contract.

The facts that belong to every operation rather than to this group, the refusal shape, the cursor rules, the filters and the credential each call accepts, are the other pages under API. What a field means is under Get started.

Operations
7
Tags
4
Need a credential
7
Public
0

meeting

2 operations

Body meetings with agendas, minutes and staff reports.

GET/meetingAPI key

When bodies meet, and their packets

Operation ID list_meeting_meeting_get

Parameters

query

bodystring[]
A bod_ id. Repeatable.
date[gte]string | null
No description.
date[lte]string | null
No description.
qstring | null
Full text over agendas and minutes.
cursorstring | null
From a previous page's page.next_cursor.
sizeinteger | null
Default 25.
regionstring | null
A saved rgn_ region, or a statistical area such as a CBSA (sta_ id). Membership resolves at as_of.
jurisdictionstring[]
A jur_ id or fips_key. Repeatable.
statestring | null
Two-letter postal code or two-digit FIPS.
countystring | null
County FIPS, 5 digits, or a county's jur_ id.
geometrystring | null
WKT or GeoJSON. Jurisdictions that intersect it.
buffernumber | null
Feet around geometry.

Responses

200
Collection_Meeting_
Successful Response
401
empty
No usable credential.
402
ErrorResponse
quota_exhausted: out of credit. Credit is prepaid and the balance cannot go below zero, so add credit rather than retrying.
403
ErrorResponse
entitlement_missing: the plan does not cover this operation.
404
ErrorResponse
No such id. The only meaning of 404.
422
ErrorResponse
The request cannot be answered as asked. The code says why.
429
ErrorResponse
rate_limited, with Retry-After.
501
ErrorResponse
not_available: this operation does not answer yet.

Example request

curl -X GET 'http://localhost:8000/meeting?size=50&jurisdiction=value&state=NC' \
  -H 'X-API-Key: $PLACESTACK_API_KEY'

Example response

{
  "request": {
    "path": "<Path>",
    "param": {},
    "dry_run": false
  },
  "meta": {
    "contract_date": "2026-09-13",
    "vocabulary_version": "<Vocabulary Version>",
    "request_id": "req_01h455vb4pex5vsknk084sn02q",
    "api_version": "v1",
    "answer_id": "ans_01h455vb4pex5vsknk084sn02q",
    "answer_through": 1,
    "unit": {
      "key": "string"
    },
    "cost": "<Cost>"
  },
  "item": [
    {
      "id": "mtg_01h455vb4pex5vsknk084sn02q",
      "jurisdiction": "<JurisdictionRef>",
      "body": "<BodyRef>",
      "starts_at": "2026-09-13T12:00:00Z",
      "timezone": "<Timezone>",
      "status": "scheduled",
      "href": "<Href>",
      "location_text": "string",
      "agenda": "<Packet>",
      "minutes": "<Packet>",
      "staff_report": [
        "<StaffReport>"
      ],
      "hearing": [
        "<HearingRef>"
      ]
    }
  ],
  "page": {
    "size": 1,
    "next_cursor": "string",
    "indeterminate": 0,
    "total": "<envelope__Total>"
  },
  "as_of": {
    "resolved": "<Interval>",
    "timezone": "<Timezone>",
    "basis": "requested",
    "known_as_of": "2026-09-13T12:00:00Z",
    "known_as_of_basis": "requested",
    "requested": "string",
    "earliest_retained": {
      "key": "2026-09-13"
    },
    "constant": true,
    "segment_count": 1
  },
  "notice": [
    {
      "code": "as_of_interval_spans_change",
      "severity": "info",
      "detail": "<Detail>",
      "count": 1,
      "subject": [
        "string"
      ]
    }
  ],
  "coverage": {
    "jurisdiction": "jur_01h455vb4pex5vsknk084sn02q",
    "layer": {
      "key": "<CoverageLayer>"
    },
    "href": "<Href>"
  }
}
GET/meeting/{meeting}API key

One meeting

Operation ID get_meeting_meeting__meeting__get

Parameters

path

meetingrequiredstring
An mtg_ id.

Responses

200
Single_Meeting_
Successful Response
401
empty
No usable credential.
402
ErrorResponse
quota_exhausted: out of credit. Credit is prepaid and the balance cannot go below zero, so add credit rather than retrying.
403
ErrorResponse
entitlement_missing: the plan does not cover this operation.
404
ErrorResponse
No such id. The only meaning of 404.
422
ErrorResponse
The request cannot be answered as asked. The code says why.
429
ErrorResponse
rate_limited, with Retry-After.
501
ErrorResponse
not_available: this operation does not answer yet.

Example request

curl -X GET 'http://localhost:8000/meeting/meeting_123' \
  -H 'X-API-Key: $PLACESTACK_API_KEY'

Example response

{
  "request": {
    "path": "<Path>",
    "param": {},
    "dry_run": false
  },
  "meta": {
    "contract_date": "2026-09-13",
    "vocabulary_version": "<Vocabulary Version>",
    "request_id": "req_01h455vb4pex5vsknk084sn02q",
    "api_version": "v1",
    "answer_id": "ans_01h455vb4pex5vsknk084sn02q",
    "answer_through": 1,
    "unit": {
      "key": "string"
    },
    "cost": "<Cost>"
  },
  "item": {
    "id": "mtg_01h455vb4pex5vsknk084sn02q",
    "jurisdiction": "<JurisdictionRef>",
    "body": "<BodyRef>",
    "starts_at": "2026-09-13T12:00:00Z",
    "timezone": "<Timezone>",
    "status": "scheduled",
    "href": "<Href>",
    "location_text": "string",
    "agenda": "<Packet>",
    "minutes": "<Packet>",
    "staff_report": [
      "<StaffReport>"
    ],
    "hearing": [
      "<HearingRef>"
    ]
  },
  "as_of": {
    "resolved": "<Interval>",
    "timezone": "<Timezone>",
    "basis": "requested",
    "known_as_of": "2026-09-13T12:00:00Z",
    "known_as_of_basis": "requested",
    "requested": "string",
    "earliest_retained": {
      "key": "2026-09-13"
    },
    "constant": true,
    "segment_count": 1
  },
  "notice": [
    {
      "code": "as_of_interval_spans_change",
      "severity": "info",
      "detail": "<Detail>",
      "count": 1,
      "subject": [
        "string"
      ]
    }
  ],
  "coverage": {
    "jurisdiction": "jur_01h455vb4pex5vsknk084sn02q",
    "layer": {
      "key": "<CoverageLayer>"
    },
    "href": "<Href>"
  }
}

case

2 operations

Applications with decisions, votes, conditions, hearings, milestones, opposition and notices.

GET/caseAPI key

Applications and their outcomes, across jurisdictions

geometry plus buffer is the notice-radius question: what was applied for within 300 ft of my site.

Sortable: -decided_on (default), effective_on, filed_on, jurisdiction.name.

Operation ID list_case_case_get

Parameters

query

parcelstring[]
A prc_ id. Repeatable.
addressstring | null
No description.
normalized_typestring[]
rezoning, variance, special_use, ... Repeatable.
status"filed" | "under_review" | "scheduled" | "decided"[]
No description.
outcome"approved" | "approved_with_conditions" | "denied" | "tabled"[]
No description.
filed[gte]string | null
No description.
decided[gte]string | null
No description.
qstring | null
No description.
includestring | null
Comma-separated: decision, hearing, milestone, opposition, notice.
sortstring | null
field or -field, comma-separated, at most three. Sortable fields are listed per operation.
cursorstring | null
From a previous page's page.next_cursor.
sizeinteger | null
Default 25.
totalboolean
Include page.total. First page only.
regionstring | null
A saved rgn_ region, or a statistical area such as a CBSA (sta_ id). Membership resolves at as_of.
jurisdictionstring[]
A jur_ id or fips_key. Repeatable.
statestring | null
Two-letter postal code or two-digit FIPS.
countystring | null
County FIPS, 5 digits, or a county's jur_ id.
geometrystring | null
WKT or GeoJSON. Jurisdictions that intersect it.
buffernumber | null
Feet around geometry.
filterobject map
filter[<field>][<op>]=<value>. Operators: eq ne in nin lt lte gt gte between prefix contains is_null not_null any all permits forbids. AND across fields, OR within repeated values. A row whose status has no comparable value is returned as filter_outcome: indeterminate, never silently dropped; filter_indeterminate=exclude opts out. An unknown field, operator or value is a 422, never an empty result.
filter_indeterminate"include" | "exclude" | "only"
only is the audit query: which rows is the code silent on.

Responses

200
Collection_Case_
Successful Response
401
empty
No usable credential.
402
ErrorResponse
quota_exhausted: out of credit. Credit is prepaid and the balance cannot go below zero, so add credit rather than retrying.
403
ErrorResponse
entitlement_missing: the plan does not cover this operation.
404
ErrorResponse
No such id. The only meaning of 404.
422
ErrorResponse
The request cannot be answered as asked. The code says why.
429
ErrorResponse
rate_limited, with Retry-After.
501
ErrorResponse
not_available: this operation does not answer yet.

Example request

curl -X GET 'http://localhost:8000/case?address=100+Main+St&size=50&jurisdiction=value' \
  -H 'X-API-Key: $PLACESTACK_API_KEY'

Example response

{
  "request": {
    "path": "<Path>",
    "param": {},
    "dry_run": false
  },
  "meta": {
    "contract_date": "2026-09-13",
    "vocabulary_version": "<Vocabulary Version>",
    "request_id": "req_01h455vb4pex5vsknk084sn02q",
    "api_version": "v1",
    "answer_id": "ans_01h455vb4pex5vsknk084sn02q",
    "answer_through": 1,
    "unit": {
      "key": "string"
    },
    "cost": "<Cost>"
  },
  "item": [
    {
      "id": "cse_01h455vb4pex5vsknk084sn02q",
      "jurisdiction": "<JurisdictionRef>",
      "local_case_number": "<Local Case Number>",
      "normalized_type": "<Normalized Type>",
      "status": "filed",
      "filed_on": "2026-09-13",
      "href": "<Href>",
      "process": "apt_01h455vb4pex5vsknk084sn02q",
      "summary": "string",
      "parcel": [
        "prc_01h455vb4pex5vsknk084sn02q"
      ],
      "address": "string",
      "party": [
        "<practice__Party>"
      ]
    }
  ],
  "page": {
    "size": 1,
    "next_cursor": "string",
    "indeterminate": 0,
    "total": "<envelope__Total>"
  },
  "as_of": {
    "resolved": "<Interval>",
    "timezone": "<Timezone>",
    "basis": "requested",
    "known_as_of": "2026-09-13T12:00:00Z",
    "known_as_of_basis": "requested",
    "requested": "string",
    "earliest_retained": {
      "key": "2026-09-13"
    },
    "constant": true,
    "segment_count": 1
  },
  "notice": [
    {
      "code": "as_of_interval_spans_change",
      "severity": "info",
      "detail": "<Detail>",
      "count": 1,
      "subject": [
        "string"
      ]
    }
  ],
  "coverage": {
    "jurisdiction": "jur_01h455vb4pex5vsknk084sn02q",
    "layer": {
      "key": "<CoverageLayer>"
    },
    "href": "<Href>"
  }
}
GET/case/{case}API key

One case, with everything that happened to it

Operation ID get_case_case__case__get

Parameters

path

caserequiredstring
A cse_ id.

query

includestring | null
Comma-separated: decision, hearing, milestone, opposition, notice.

Responses

200
Single_Case_
Successful Response
401
empty
No usable credential.
402
ErrorResponse
quota_exhausted: out of credit. Credit is prepaid and the balance cannot go below zero, so add credit rather than retrying.
403
ErrorResponse
entitlement_missing: the plan does not cover this operation.
404
ErrorResponse
No such id. The only meaning of 404.
422
ErrorResponse
The request cannot be answered as asked. The code says why.
429
ErrorResponse
rate_limited, with Retry-After.
501
ErrorResponse
not_available: this operation does not answer yet.

Example request

curl -X GET 'http://localhost:8000/case/case_123' \
  -H 'X-API-Key: $PLACESTACK_API_KEY'

Example response

{
  "request": {
    "path": "<Path>",
    "param": {},
    "dry_run": false
  },
  "meta": {
    "contract_date": "2026-09-13",
    "vocabulary_version": "<Vocabulary Version>",
    "request_id": "req_01h455vb4pex5vsknk084sn02q",
    "api_version": "v1",
    "answer_id": "ans_01h455vb4pex5vsknk084sn02q",
    "answer_through": 1,
    "unit": {
      "key": "string"
    },
    "cost": "<Cost>"
  },
  "item": {
    "id": "cse_01h455vb4pex5vsknk084sn02q",
    "jurisdiction": "<JurisdictionRef>",
    "local_case_number": "<Local Case Number>",
    "normalized_type": "<Normalized Type>",
    "status": "filed",
    "filed_on": "2026-09-13",
    "href": "<Href>",
    "process": "apt_01h455vb4pex5vsknk084sn02q",
    "summary": "string",
    "parcel": [
      "prc_01h455vb4pex5vsknk084sn02q"
    ],
    "address": "string",
    "party": [
      "<practice__Party>"
    ]
  },
  "as_of": {
    "resolved": "<Interval>",
    "timezone": "<Timezone>",
    "basis": "requested",
    "known_as_of": "2026-09-13T12:00:00Z",
    "known_as_of_basis": "requested",
    "requested": "string",
    "earliest_retained": {
      "key": "2026-09-13"
    },
    "constant": true,
    "segment_count": 1
  },
  "notice": [
    {
      "code": "as_of_interval_spans_change",
      "severity": "info",
      "detail": "<Detail>",
      "count": 1,
      "subject": [
        "string"
      ]
    }
  ],
  "coverage": {
    "jurisdiction": "jur_01h455vb4pex5vsknk084sn02q",
    "layer": {
      "key": "<CoverageLayer>"
    },
    "href": "<Href>"
  }
}

permit

2 operations

Issued permits with the zoning in force at issuance.

GET/permitAPI key

Issued permits, where published

Never returned without the issuer's coverage, because permit publication is uneven by office.

Sortable: -issued_on (default), valuation, issuer.

Operation ID list_permit_permit_get

Parameters

query

work_typestring[]
No description.
status"applied" | "issued" | "finaled" | "expired"[]
No description.
issued[gte]string | null
No description.
issued[lte]string | null
No description.
district_at_issuestring | null
A dst_ id.
zoning_changed_sinceboolean | null
Issued under zoning that has since changed.
sortstring | null
field or -field, comma-separated, at most three. Sortable fields are listed per operation.
cursorstring | null
From a previous page's page.next_cursor.
sizeinteger | null
Default 25.
totalboolean
Include page.total. First page only.
regionstring | null
A saved rgn_ region, or a statistical area such as a CBSA (sta_ id). Membership resolves at as_of.
jurisdictionstring[]
A jur_ id or fips_key. Repeatable.
statestring | null
Two-letter postal code or two-digit FIPS.
countystring | null
County FIPS, 5 digits, or a county's jur_ id.
geometrystring | null
WKT or GeoJSON. Jurisdictions that intersect it.
buffernumber | null
Feet around geometry.
filterobject map
filter[<field>][<op>]=<value>. Operators: eq ne in nin lt lte gt gte between prefix contains is_null not_null any all permits forbids. AND across fields, OR within repeated values. A row whose status has no comparable value is returned as filter_outcome: indeterminate, never silently dropped; filter_indeterminate=exclude opts out. An unknown field, operator or value is a 422, never an empty result.
filter_indeterminate"include" | "exclude" | "only"
only is the audit query: which rows is the code silent on.

Responses

200
Collection_Permit_
Successful Response
401
empty
No usable credential.
402
ErrorResponse
quota_exhausted: out of credit. Credit is prepaid and the balance cannot go below zero, so add credit rather than retrying.
403
ErrorResponse
entitlement_missing: the plan does not cover this operation.
404
ErrorResponse
No such id. The only meaning of 404.
422
ErrorResponse
The request cannot be answered as asked. The code says why.
429
ErrorResponse
rate_limited, with Retry-After.
501
ErrorResponse
not_available: this operation does not answer yet.

Example request

curl -X GET 'http://localhost:8000/permit?size=50&jurisdiction=value&state=NC' \
  -H 'X-API-Key: $PLACESTACK_API_KEY'

Example response

{
  "request": {
    "path": "<Path>",
    "param": {},
    "dry_run": false
  },
  "meta": {
    "contract_date": "2026-09-13",
    "vocabulary_version": "<Vocabulary Version>",
    "request_id": "req_01h455vb4pex5vsknk084sn02q",
    "api_version": "v1",
    "answer_id": "ans_01h455vb4pex5vsknk084sn02q",
    "answer_through": 1,
    "unit": {
      "key": "string"
    },
    "cost": "<Cost>"
  },
  "item": [
    {
      "id": "pmt_01h455vb4pex5vsknk084sn02q",
      "jurisdiction": "<JurisdictionRef>",
      "number": "<Number>",
      "work_type": "<Work Type>",
      "status": "applied",
      "source_record_id": "<Source Record Id>",
      "retrieved_at": "2026-09-13T12:00:00Z",
      "district_at_issue": "<ZoningAt>",
      "href": "<Href>",
      "issued_on": "2026-09-13",
      "valuation": "<Money>",
      "issuer": "iss_01h455vb4pex5vsknk084sn02q",
      "address": "string",
      "parcel": "prc_01h455vb4pex5vsknk084sn02q"
    }
  ],
  "page": {
    "size": 1,
    "next_cursor": "string",
    "indeterminate": 0,
    "total": "<envelope__Total>"
  },
  "as_of": {
    "resolved": "<Interval>",
    "timezone": "<Timezone>",
    "basis": "requested",
    "known_as_of": "2026-09-13T12:00:00Z",
    "known_as_of_basis": "requested",
    "requested": "string",
    "earliest_retained": {
      "key": "2026-09-13"
    },
    "constant": true,
    "segment_count": 1
  },
  "notice": [
    {
      "code": "as_of_interval_spans_change",
      "severity": "info",
      "detail": "<Detail>",
      "count": 1,
      "subject": [
        "string"
      ]
    }
  ],
  "coverage": {
    "jurisdiction": "jur_01h455vb4pex5vsknk084sn02q",
    "layer": {
      "key": "<CoverageLayer>"
    },
    "href": "<Href>"
  }
}
GET/permit/{permit}API key

One permit

Operation ID get_permit_permit__permit__get

Parameters

path

permitrequiredstring
A pmt_ id.

Responses

200
Single_Permit_
Successful Response
401
empty
No usable credential.
402
ErrorResponse
quota_exhausted: out of credit. Credit is prepaid and the balance cannot go below zero, so add credit rather than retrying.
403
ErrorResponse
entitlement_missing: the plan does not cover this operation.
404
ErrorResponse
No such id. The only meaning of 404.
422
ErrorResponse
The request cannot be answered as asked. The code says why.
429
ErrorResponse
rate_limited, with Retry-After.
501
ErrorResponse
not_available: this operation does not answer yet.

Example request

curl -X GET 'http://localhost:8000/permit/permit_123' \
  -H 'X-API-Key: $PLACESTACK_API_KEY'

Example response

{
  "request": {
    "path": "<Path>",
    "param": {},
    "dry_run": false
  },
  "meta": {
    "contract_date": "2026-09-13",
    "vocabulary_version": "<Vocabulary Version>",
    "request_id": "req_01h455vb4pex5vsknk084sn02q",
    "api_version": "v1",
    "answer_id": "ans_01h455vb4pex5vsknk084sn02q",
    "answer_through": 1,
    "unit": {
      "key": "string"
    },
    "cost": "<Cost>"
  },
  "item": {
    "id": "pmt_01h455vb4pex5vsknk084sn02q",
    "jurisdiction": "<JurisdictionRef>",
    "number": "<Number>",
    "work_type": "<Work Type>",
    "status": "applied",
    "source_record_id": "<Source Record Id>",
    "retrieved_at": "2026-09-13T12:00:00Z",
    "district_at_issue": "<ZoningAt>",
    "href": "<Href>",
    "issued_on": "2026-09-13",
    "valuation": "<Money>",
    "issuer": "iss_01h455vb4pex5vsknk084sn02q",
    "address": "string",
    "parcel": "prc_01h455vb4pex5vsknk084sn02q"
  },
  "as_of": {
    "resolved": "<Interval>",
    "timezone": "<Timezone>",
    "basis": "requested",
    "known_as_of": "2026-09-13T12:00:00Z",
    "known_as_of_basis": "requested",
    "requested": "string",
    "earliest_retained": {
      "key": "2026-09-13"
    },
    "constant": true,
    "segment_count": 1
  },
  "notice": [
    {
      "code": "as_of_interval_spans_change",
      "severity": "info",
      "detail": "<Detail>",
      "count": 1,
      "subject": [
        "string"
      ]
    }
  ],
  "coverage": {
    "jurisdiction": "jur_01h455vb4pex5vsknk084sn02q",
    "layer": {
      "key": "<CoverageLayer>"
    },
    "href": "<Href>"
  }
}

metric

1 operation

Activity statistics with their n and denominator.

GET/metricAPI key

Activity statistics by jurisdiction, county, state or region

Operation ID list_metric_metric_get

Parameters

query

metricrequiredstring[]
Which statistics. Repeatable.
grain"current" | "month" | "quarter" | "year"
No description.
periodstring | null
2026, 2026-Q2, from:2025-01 to:2026-06.
facet"application_type" | "use" | "outcome" | "body" | null
No description.
as_ofstring | null
Valid time: the law in force then. Default now, in the jurisdiction's timezone. 2024-06-30, 2024-06-30T14:00:00-04:00, from:2023-01-01 to:2024-12-31, or last 90 days. An interval returns segment[], never a winner.
known_as_ofstring | null
Knowledge time: the answer we would have given then. Default now. Same grammar as as_of.
cursorstring | null
From a previous page's page.next_cursor.
regionstring | null
A saved rgn_ region, or a statistical area such as a CBSA (sta_ id). Membership resolves at as_of.
jurisdictionstring[]
A jur_ id or fips_key. Repeatable.
statestring | null
Two-letter postal code or two-digit FIPS.
countystring | null
County FIPS, 5 digits, or a county's jur_ id.
geometrystring | null
WKT or GeoJSON. Jurisdictions that intersect it.
buffernumber | null
Feet around geometry.

Responses

200
Collection_Metric_
Successful Response
401
empty
No usable credential.
402
ErrorResponse
quota_exhausted: out of credit. Credit is prepaid and the balance cannot go below zero, so add credit rather than retrying.
403
ErrorResponse
entitlement_missing: the plan does not cover this operation.
404
ErrorResponse
No such id. The only meaning of 404.
422
ErrorResponse
The request cannot be answered as asked. The code says why.
429
ErrorResponse
rate_limited, with Retry-After.
501
ErrorResponse
not_available: this operation does not answer yet.

Example request

curl -X GET 'http://localhost:8000/metric?metric=value' \
  -H 'X-API-Key: $PLACESTACK_API_KEY'

Example response

{
  "request": {
    "path": "<Path>",
    "param": {},
    "dry_run": false
  },
  "meta": {
    "contract_date": "2026-09-13",
    "vocabulary_version": "<Vocabulary Version>",
    "request_id": "req_01h455vb4pex5vsknk084sn02q",
    "api_version": "v1",
    "answer_id": "ans_01h455vb4pex5vsknk084sn02q",
    "answer_through": 1,
    "unit": {
      "key": "string"
    },
    "cost": "<Cost>"
  },
  "item": [
    {
      "scope": "<MetricScope>",
      "period": "<Period>",
      "grain": "current",
      "metric": "case_filed_count",
      "value": 1.25,
      "n": 1,
      "denominator_note": "<Denominator Note>",
      "horizon": "<Horizon>",
      "coverage": "<MetricCoverage>",
      "facet": "<Facet>",
      "derivation": "derived",
      "input_version": [
        "ver_01h455vb4pex5vsknk084sn02q"
      ]
    }
  ],
  "page": {
    "size": 1,
    "next_cursor": "string",
    "indeterminate": 0,
    "total": "<envelope__Total>"
  },
  "as_of": {
    "resolved": "<Interval>",
    "timezone": "<Timezone>",
    "basis": "requested",
    "known_as_of": "2026-09-13T12:00:00Z",
    "known_as_of_basis": "requested",
    "requested": "string",
    "earliest_retained": {
      "key": "2026-09-13"
    },
    "constant": true,
    "segment_count": 1
  },
  "notice": [
    {
      "code": "as_of_interval_spans_change",
      "severity": "info",
      "detail": "<Detail>",
      "count": 1,
      "subject": [
        "string"
      ]
    }
  ],
  "coverage": {
    "jurisdiction": "jur_01h455vb4pex5vsknk084sn02q",
    "layer": {
      "key": "<CoverageLayer>"
    },
    "href": "<Href>"
  }
}

The document

Everything above is read from OpenAPI 3.1.0 version 0.0.0. When the contract changes, this page follows.

Download the OpenAPI document

Next

Evidence

9 operations: citation, document, answer.