Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Data API Builder (DAB) biedt een RESTful-web-API waarmee u toegang hebt tot tabellen, weergaven en opgeslagen procedures vanuit een verbonden database. Elk weergegeven databaseobject wordt gedefinieerd als een entiteit in de runtimeconfiguratie.
STANDAARD host DAB REST-eindpunten op:
https://{base_url}/api/{entity}
Opmerking
Alle padonderdelen en queryparameters zijn hoofdlettergevoelig.
Trefwoorden die worden ondersteund in Data API Builder
| Concept | REST | Purpose |
|---|---|---|
| Projection | $select | Kiezen welke velden u wilt retourneren |
| Filtering | $filter | Rijen beperken op conditie |
| Sorteervolgorde | $orderby | De sorteervolgorde definiëren |
| Paginaformaat | $first | De items per pagina beperken |
| Voortzetting | $after | Doorgaan vanaf de laatste pagina |
Basisstructuur
Als u een REST API wilt aanroepen, maakt u een aanvraag met behulp van dit patroon:
{HTTP method} https://{base_url}/{rest-path}/{entity}
Voorbeeld van het lezen van alle records uit de book entiteit:
GET https://localhost:5001/api/book
Het antwoord is een JSON-object:
{
"value": [
{ "id": 1, "title": "Dune" },
{ "id": 2, "title": "Foundation" }
]
}
Opmerking
Standaard retourneert DAB maximaal 100 items per query, tenzij anders geconfigureerd (runtime.pagination.default-page-size).
Querytypen
Elke REST-entiteit ondersteunt zowel leesacties voor verzamelingen als op één enkele record.
| Operation | Beschrijving |
|---|---|
GET /api/{entity} |
Retourneert een lijst met records |
GET /api/{entity}/{primary-key-column}/{primary-key-value} |
Retourneert één record per primaire sleutel |
Voorbeeld van het retourneren van één record:
GET /api/book/id/1010
Voorbeeld van het teruggeven van veel:
GET /api/book
Resultaten filteren
Gebruik de $filter queryparameter om te beperken welke records worden geretourneerd.
GET /api/book?$filter=title eq 'Foundation'
Met deze query worden alle boeken geretourneerd waarvan de titel gelijk is aan "Foundation."
Filters kunnen logische operators bevatten voor complexere query's:
GET /api/book?$filter=year ge 1970 or title eq 'Dune'
Zie de $filter argumentreferentie voor ondersteunde operators, zoals eq, ne, lt, le, anden or.
Resultaten sorteren
De $orderby parameter definieert hoe records worden gesorteerd.
GET /api/book?$orderby=year desc, title asc
Dit retourneert boeken gesorteerd op year aflopend en vervolgens op title.
Zie de $orderby argumentreferentie voor meer informatie.
Resultaten {#first-and-after} beperken
De $first parameter beperkt het aantal records dat in één aanvraag wordt geretourneerd.
GET /api/book?$first=5
Dit retourneert standaard de eerste vijf boeken, gesorteerd op primaire sleutel.
U kunt ook het $first=-1 geconfigureerde maximale paginaformaat aanvragen.
Meer informatie vindt u in de referentie van $first argument.
Doorlopende resultaten
Als u de volgende pagina wilt ophalen, gebruikt u $after met het doorlooptoken uit het vorige antwoord.
GET /api/book?$first=5&$after={continuation-token}
Het $after token geeft aan waar de laatste query is beëindigd.
Zie $after argument referentie voor details.
Veldselectie (projectie)
Hiermee $select kunt u bepalen welke velden zijn opgenomen in het antwoord.
GET /api/book?$select=id,title,price
Hiermee worden alleen de opgegeven kolommen geretourneerd.
Als een veld ontbreekt of niet toegankelijk is, geeft DAB als resultaat 400 Bad Request.
Zie $select argumentreferentie voor meer informatie.
Gegevens wijzigen
De REST API biedt ook ondersteuning voor bewerkingen voor maken, bijwerken en verwijderen, afhankelijk van entiteitsmachtigingen.
| Methode | Handeling |
|---|---|
POST |
Een nieuw item maken |
PUT |
Een bestaand item vervangen (of maken als dit ontbreekt) |
PATCH |
Een bestaand item bijwerken (of maken als dit ontbreekt) |
DELETE |
Een item verwijderen op basis van primaire sleutel |
Voorbeeld van het maken van een nieuwe record:
POST /api/book
Content-type: application/json
{
"id": 2000,
"title": "Leviathan Wakes"
}
Voorbeeld van het bijwerken van een bestaande record:
PATCH /api/book/id/2000
Content-type: application/json
{
"year": 2011,
"pages": 577
}
Voorbeeld van het verwijderen van een record:
DELETE /api/book/id/2000