L'API Map Management ti consente di gestire le risorse di personalizzazione delle mappe basate su cloud utilizzando le API RESTful.
Riepilogo dei passaggi
- Utilizza la console Cloud per creare un ID mappa (limitato alle mappe vettoriali basate su JavaScript).
- Utilizza la console Cloud per creare uno stile della mappa. Uno stile di mappa viene utilizzato come collegamento tra un ID mappa e un set di dati.
- Utilizza Cloud Console o l'API Maps Datasets per creare un set di dati.
- Utilizza l'API Map Management per associare il set di dati all'ID stile.
- Utilizza l'ID mappa in un'applicazione (JS, iOS o Android) e utilizza l'API per lo stile basato sui dati per applicare uno stile agli elementi del set di dati.
Tipi
DatasetStyleAssociation
Tipo: oggetto/proto
Incapsula la relazione tra un set di dati esistente e uno stile client esistente.
message DatasetStyleAssociation {
option (google.api.resource) = {
type: "mapstyling.googleapis.com/DatasetStyleAssociation"
pattern: "projects/{project}/datasets/{dataset}/clientStyles/{client_style}"
plural: "datasetStyleAssociations",
singular: "datasetStyleAssociation"
};
// Resource name.
// projects/{project}/datasets/{dataset}/clientStyles/{client_style}
string name = 1;
// The resource name of the style.
// projects/{project}/clientStyles/{client_style}
string client_style = 2;
Metodi
CreateDatasetStyleAssociation
rpc CreateDatasetStyleAssociation(CreateDatasetStyleAssociationRequest)
returns (DatasetStyleAssociation) {
option (google.api.http) = {
post: "/v1/{parent=projects/*/datasets/*}"
body: "dataset_style_association"
};
option (google.api.method_signature) = parent,dataset_style_association";
}
ListDatasetStyleAssociations
rpc ListDatasetStyleAssociations(ListDatasetStyleAssociationsRequest)
returns (ListDatasetStyleAssociationsResponse) {
option (google.api.http) = {
get: "/v1/{parent=projects/*/datasets/*}"
};
option (google.api.method_signature) = "parent";
}
DeleteDatasetStyleAssociation
rpc DeleteDatasetStyleAssociation(DeleteDatasetStyleAssociationRequest)
returns (google.protobuf.Empty) {
option (google.api.http) = {
post: "/v1/{name=projects/*/datasets/*/clientStyles/*}:delete"
body: "*"
};
option (google.api.method_signature) = "name";
}
Esempi di chiamate C++
Esempio di chiamata per creare l'endpoint
<pre>curl --http2 -X POST -H 'Content-Type: application/json' -H 'Authorization: Bearer <Token>' https://mapmanagement.googleapis.com/v1/projects/<Project_Number>/datasets/{dataset_id} -d '{name: "projects/{project_number}/datasets/{dataset_id}/clientStyles/{style_id}", client_style: "projects/{project_number}/clientStyles/{style_id}" }'</pre>
Esempio di chiamata all'endpoint dell'elenco
<pre>curl --http2 -X GET -H 'Content-Type: application/json' -H 'Authorization: Bearer <Token>' https://mapmanagement.googleapis.com/v1/projects/<Project_Number>/datasets/-</pre>
Esempio di chiamata per elencare le mappe associate
<pre>curl --http2 -X GET -H 'Content-Type: application/json' -H 'Authorization: Bearer <Token>' https://mapmanagement.googleapis.com/v1/projects/<Project_Number>/datasets/<dataset-id>/clientStyles/<style_id>:listAssociatedMaps</pre>
Esempio di chiamata per eliminare l'endpoint
<pre>curl --http2 -X POST -H 'Content-Type: application/json' -H 'Authorization: Bearer <Token>' https://mapmanagement.googleapis.com/v1/projects/<Project_Number>/datasets/<dataset_id>/clientStyles/<style_id>:delete -d '{"map_ids": ["map-id-1", "map-id-2"]}'</pre>
Errori
PERMISSION_DENIED : questi errori specificano sempre l'accesso alle risorse negato. Ad esempio, quando l'API non è abilitata per il progetto fornito.
ALREADY_EXISTS: attivato da una chiamata Create quando DatasetStyleAssociation esiste già.
NOT_FOUND: attivato da uno qualsiasi dei metodi precedenti quando viene effettuato un tentativo di accedere a una risorsa inesistente, ad esempio uno stile, un set di dati o un progetto.
INVALID_ARGUMENT: la richiesta non è valida.