# API-Expressivität

Verfügbar in...

* Cloud API Services Platform
* Cloud Big Data
* Cloud Big Data Platform
* Cloud Data Fabric
* Cloud Data Integration
* Cloud Data Management Platform
* Cloud Pipeline Designer Standard Edition
* Data Fabric

Verwenden Sie die unterstützte OData-Expressivität, um Ihre Abfragen zu verfeinern und ganz spezifische Daten aus Ihrem Datensatz abzurufen. Weitere Informationen finden Sie in der [OData-Dokumentation](https://www.odata.org/getting-started/).

## Unterstützte OData-Expressivität

Die folgenden Expressivitätsmuster können zur Erstellung spezifischer Requests verwendet werden.

InformationshinweisAnmerkung: Die Verwendung einer nicht unterstützten Option in einem OData-Request hat die Ausgabe des Fehlers 501 - Not Implemented (501 - Nicht Implementiert) zur Folge.

* url/$metadata
* url/entity\_set\_name
* url/entity\_set\_name(primary\_key\_value)
* url/entity\_set\_name(primary\_key\_value)/column\_name
* url/entity\_set\_name(primary\_key\_value)/column\_name/$value
* url/entity\_set\_name?$top=n
* url/entity\_set\_name?$skip=n
* url/entity\_set\_name?$skip=n&$top=n
* url/entity\_set\_name?$select=column\_name
* url/entity\_set\_name?$orderby=column\_name asc|desc
* url/entity\_set\_name?$filter=column\_name eq 'value'
* url/entity\_set\_name?$filter=contains(column\_name, 'value')

## Beispiele für Datenabfragen

Die folgende Tabelle enthält ein paar Beispiele für Requests, die an eine API gesendet werden können. In diesem Beispiel wurde eine API für die Entitätsgruppe customers (Kunden) erstellt, der generierte API-Pfad lautet customers-api-2PZPTB. Der Datensatz enthält folgende Spalten: customer\_age (Kunde\_Alter), id (ID), customer\_name (Kunde\_Name), customer\_city (Kunde\_Stadt) und customer\_street (Kunde\_Straße). Die Spalte id (ID) wird als Primärschlüssel verwendet.

Beispiele für Muster in Requests und den entsprechenden AntwortenBeispiele für Muster in Requests und den entsprechenden Antworten

| Muster | Beschreibung | Beispiel |
| --- | --- | --- |
| url/entity\_set\_name | Abrufen aller Daten in der Entitätsgruppe. | Request:<br><br>```<br>https://company-talend-com.eu.talend-dataset.com/apis/customers-api-2PZPTB/customers<br>```<br><br>Antwort:<br><br>```<br>{<br>	"@odata.context": "http://company-talend-com.eu.talend-dataset.com/apis/customers-api-2PZPTB/$metadata#customers",<br>	"value": [<br>		{<br>			"customer_age": "36",<br>			"id": "g9wjC",<br>			"customer_name": "Franklin Washington",<br>			"customer_city": "Olympia",<br>			"customer_street": "North Erringer Road"<br>		},<br>		{<br>			"customer_age": "31",<br>			"id": "DNOFp",<br>			"customer_name": "Theodore Ford",<br>			"customer_city": "Boise",<br>			"customer_street": "Lawrenceville Suwanee"<br>		},<br>		{<br>			"customer_age": "41",<br>			"id": "IRvgp",<br>			"customer_name": "Gerald Cleveland",<br>			"customer_city": "Atlanta",<br>			"customer_street": "Steele Lane"<br>		},<br>		{<br>			"customer_age": "19",<br>			"id": "V7o2h",<br>			"customer_name": "Benjamin Adams",<br>			"customer_city": "Little Rock",<br>			"customer_street": "Castillo Drive"<br>		},<br>		{<br>			"customer_age": "56",<br>			"id": "LwvLC",<br>			"customer_name": "Theodore Hayes",<br>			"customer_city": "Saint Paul",<br>			"customer_street": "Carpinteria South"<br>		},<br>		{<br>			"customer_age": "22",<br>			"id": "2oWSU",<br>			"customer_name": "Harry Roosevelt",<br>			"customer_city": "Bismarck",<br>			"customer_street": "East Calle Primera"<br>		},<br>		{<br>			"customer_age": "68",<br>			"id": "tnXgw",<br>			"customer_name": "Rutherford Fillmore",<br>			"customer_city": "Cheyenne",<br>			"customer_street": "Jean de la Fontaine"<br>		}<br>	]<br>}<br>``` |
| url/$metadata | Abrufen der Metadaten der Entitätsgruppe. | Request:<br><br>```<br>https://company-talend-com.eu.talend-dataset.com/apis/customers-api-2PZPTB/$metadata<br>```<br><br>Antwort:<br><br>```<br><?xml version="1.0" encoding="UTF-8" ?><br><edmx:Edmx Version="4.0" xmlns:edmx="http://docs.oasis-open.org/odata/ns/edmx"><br><edmx:DataServices><br><Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="customers-api-2PZPTB"><br><EntityType Name="customersItem"><br><Key><br><PropertyRef Name="id"/><br></Key><br><Property Name="customer_age" Type="Edm.String"/><br><Property Name="id" Type="Edm.String"/><br><Property Name="customer_name" Type="Edm.String"/><br><Property Name="customer_city" Type="Edm.String"/><br><Property Name="customer_street" Type="Edm.String"/><br></EntityType><br><EntityContainer Name="customers"><br><EntitySet Name="customers" EntityType="customers-api-2PZPTB.customersItem"/><br></EntityContainer><br></Schema><br></edmx:DataServices><br></edmx:Edmx><br><br>``` |
| url/entity\_set\_name(primary\_key\_value) | Abrufen einer spezifischen Entität über den entsprechenden Primärschlüsselwert. | Request:<br><br>```<br>https://company-talend-com.eu.talend-dataset.com/apis/customers-api-2PZPTB/customers('g9wjC')<br>```<br><br>Antwort:<br><br>```<br>{<br>"@odata.context": "http://company-talend-com.eu.talend-dataset.com/apis/customers-api-2PZPTB/$metadata#customers",<br>"customer_age": "36",<br>"id": "g9wjC",<br>"customer_name": "Franklin Washington",<br>"customer_city": "Olympia",<br>"customer_street": "North Erringer Road"<br>}<br>``` |
| url/entity\_set\_name(primary\_key\_value)/column\_name | Abrufen einer einzelnen Spalte für eine bestimmte Entität. | Request:<br><br>```<br>https://company-talend-com.eu.talend-dataset.com/apis/customers-api-2PZPTB/customers('g9wjC')/customer_name<br>```<br><br>Antwort:<br><br>```<br>{<br>"@odata.context": "http://company-talend-com.eu.talend-dataset.com/apis/customers-api-2PZPTB/$metadata#customers/customer_name",<br>"value": "Franklin Washington"<br>}<br>``` |
| url/entity\_set\_name(primary\_key\_value)/column\_name/$value | Abrufen des Rohwerts einer Spalte für eine bestimmte Entität. | Request:<br><br>```<br>https://company-talend-com.eu.talend-dataset.com/apis/customers-api-2PZPTB/customers('g9wjC')/customer_city/$value<br>```<br><br>Antwort:<br><br>```<br>Olympia<br>``` |
| url/entity\_set\_name?$top=n | Abrufen einer begrenzten Anzahl von Entitäten | Request:<br><br>```<br>https://company-talend-com.eu.talend-dataset.com/apis/customers-api-2PZPTB/customers?$top=2<br>```<br><br>Antwort:<br><br>```<br>{<br>"@odata.context": "http://company-talend-com.eu.talend-dataset.com/apis/customers-api-2PZPTB/$metadata#customers",<br>"value": [<br>{<br>"customer_age": "36",<br>"id": "g9wjC",<br>"customer_name": "Franklin Washington",<br>"customer_city": "Olympia",<br>"customer_street": "North Erringer Road"<br>},<br>{<br>"customer_age": "31",<br>"id": "DNOFp",<br>"customer_name": "Theodore Ford",<br>"customer_city": "Boise",<br>"customer_street": "Lawrenceville Suwanee"<br>}<br>]<br>}<br>``` |
| url/entity\_set\_name?$skip=n | Abrufen einer Sammlung von Entitäten, wobei die ersten n Entitäten übersprungen werden. | Request:<br><br>```<br>https://company-talend-com.eu.talend-dataset.com/apis/customers-api-2PZPTB/customers?$skip=5<br>```<br><br>Antwort:<br><br>```<br>{<br>"@odata.context": "http://company-talend-com.eu.talend-dataset.com/apis/customers-api-2PZPTB/$metadata#customers",<br>"value":[<br>{<br>"customer_age": "22",<br>"id": "2oWSU",<br>"customer_name": "Harry Roosevelt",<br>"customer_city": "Bismarck",<br>"customer_street": "East Calle Primera"<br>},<br>{<br>"customer_age": "68",<br>"id": "tnXgw",<br>"customer_name": "Rutherford Fillmore",<br>"customer_city": "Cheyenne",<br>"customer_street": "Jean de la Fontaine"<br>},<br>{<br>"customer_age": "40",<br>"id": "QcX7L",<br>"customer_name": "Warren Adams",<br>"customer_city": "Columbus",<br>"customer_street": "North Broadway Street"<br>}<br>]<br>}<br>``` |
| url/entity\_set\_name?$skip=n&$top=n | Erstellen einer Seitennummerierung und Abrufen einer spezifischen Entitätsseite aus einer Sammlung. | Request:<br><br>```<br>https://company-talend-com.eu.talend-dataset.com/apis/customers-api-2PZPTB/customers?$skip=5&$top=2<br>```<br><br>Antwort:<br><br>```<br>{<br>"@odata.context": "http://company-talend-com.eu.talend-dataset.com/apis/customers-api-2PZPTB/$metadata#customers",<br>"value": [<br>{<br>"customer_age": "22",<br>"id": "2oWSU",<br>"customer_name": "Harry Roosevelt",<br>"customer_city": "Bismarck",<br>"customer_street": "East Calle Primera"<br>},<br>{<br>"customer_age": "68",<br>"id": "tnXgw",<br>"customer_name": "Rutherford Fillmore",<br>"customer_city": "Cheyenne",<br>"customer_street": "Jean de la Fontaine"<br>}<br>]<br>}<br>``` |
| url/entity\_set\_name?$select=column\_name | Abrufen ausschließlich bestimmter Entitätsattribute.<br><br>InformationshinweisAnmerkung: Die als Primärschlüssel verwendete Spalte wird immer einbezogen. | Request:<br><br>```<br>https://company-talend-com.eu.talend-dataset.com/apis/customers-api-2PZPTB/customers?$select=customer_city,customer_street<br>```<br><br>Antwort:<br><br>```<br>{<br>"@odata.context": "http://company-talend-com.eu.talend-dataset.com/apis/customers-api-2PZPTB/$metadata#customers",<br>"value": [<br>{<br>"@odata.id": "customers('g9wjC')",<br>"id": "g9wjC",<br>"customer_city": "Olympia",<br>"customer_street": "North Erringer Road"<br>},<br>{<br>"@odata.id": "customers('DNOFp')",<br>"id": "DNOFp",<br>"customer_city": "Boise",<br>"customer_street": "Lawrenceville Suwanee"<br>},<br>{<br>"@odata.id": "customers('IRvgp')",<br>"id": "IRvgp",<br>"customer_city": "Atlanta",<br>"customer_street": "Steele Lane"<br>}<br>]<br>}<br>``` |
| url/entity\_set\_name?$orderby=column\_name asc\|desc | Abrufen einer Sammlung von Entitäten in einer bestimmten Reihenfolge unter Verwendung eines oder mehrerer Attribute. Zwei mögliche Werte für diese Option: asc (aufst.) und desc (abst.). | Request:<br><br>```<br>https://company-talend-com.eu.talend-dataset.com/apis/customers-api-2PZPTB/customers?$orderby=customer_age desc<br>```<br><br>Antwort:<br><br>```<br>{<br>"@odata.context": "http://company-talend-com.eu.talend-dataset.com/apis/customers-api-2PZPTB/$metadata#customers",<br>"value": [<br>{<br>"customer_age": "78",<br>"id": "2lxMe",<br>"customer_name": "Thomas Johnson",<br>"customer_city": "Charleston",<br>"customer_street": "Redwood Highway"<br>},<br>{<br>"customer_age": "75",<br>"id": "EK0fU",<br>"customer_name": "Benjamin Jefferson",<br>"customer_city": "Austin",<br>"customer_street": "Monroe Street"<br>},<br>{<br>"customer_age": "70",<br>"id": "3Wmih",<br>"customer_name": "Grover Carter",<br>"customer_city": "Dover",<br>"customer_street": "Redwood Highway"<br>}<br>]<br>}<br>``` |
| url/entity\_set\_name?$filter=column\_name eq 'value' | Abrufen einer Sammlung von Entitäten gemäß einem Filter. | Request:<br><br>```<br>https://company-talend-com.eu.talend-dataset.com/apis/customers-api-2PZPTB/customers?$filter=customer_city eq 'Olympia'<br>```<br><br>Antwort:<br><br>```<br>{<br>"@odata.context": "http://company-talend-com.eu.talend-dataset.com/apis/customers-api-2PZPTB/$metadata#customers",<br>"value":[<br>{<br>"customer_age": "36",<br>"id": "g9wjC",<br>"customer_name": "Franklin Washington",<br>"customer_city": "Olympia",<br>"customer_street": "North Erringer Road"<br>},<br>{<br>"customer_age": "68",<br>"id": "EVFMD",<br>"customer_name": "Ronald Van Buren",<br>"customer_city": "Olympia",<br>"customer_street": "Bayshore Freeway"<br>}<br>]<br>}<br>```<br><br>InformationshinweisAnmerkung: Je nachdem, welches Tool für den Aufruf der API verwendet wird, erhalten Sie unter Umständen einen Fehler, wenn Leerstellen mit Pluszeichen (+) kodiert werden. Um dieses Problem zu vermeiden, müssen Sie sicherstellen, dass Leerstellen in der Prozentkodierung als %20 kodiert werden. |
| url/entity\_set\_name?$filter=contains(column\_name, 'value') | Abrufen einer Sammlung von Entitäten gemäß einem Filter, wobei column\_name einen bestimmten Wert ('value') enthält. | Request:<br><br>```<br>https://company-talend-com.eu.talend-dataset.com/apis/customers-api-2PZPTB/customers?$filter=contains(customer_name, 'Van')<br>```<br><br>Antwort:<br><br>```<br>{<br>"@odata.context": "http://company-talend-com.eu.talend-dataset.com/apis/customers-api-2PZPTB/$metadata#customers",<br>"value":[<br>{<br>"customer_age": "68",<br>"id": "EVFMD",<br>"customer_name": "Ronald Van Buren",<br>"customer_city": "Olympia",<br>"customer_street": "Bayshore Freeway"<br>}<br>]<br>}<br>``` |