...
The topics entered during PubSub connection creation will be added as subscribers to the topic tree. The PubSub connection will implement the client
interface in core_messaging/broker/client_manager.go. We will use the Publish
func to forward messages to Google.
Endpoints:
/admin/{systemKey}/{name}/google-integrations/pub-sub
GET, POST, PUT and DELETE support
POST:
Body required. Body can have iotcore and non iotcore topics. For iotcore topics, type
and target
is required. type
can be 1 for events
and 2 for state
:
Code Block |
---|
{
"credentials_map": { // this is the service account json object
"type": "service_account",
"project_id": "myprojectid",
"private_key_id": "blahblahblah",
"private_key": "<priv_key>",
"client_email": "a@a.com",
"client_id": "9126871624161341",
"auth_uri": "https://accounts.google.com/o/oauth2/auth",
"token_uri": "https://oauth2.googleapis.com/token",
"auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
"client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/dahjkdhajkd%40dajsdgajdadsad.iam.gserviceaccount.com"
},
"project_id": "myprojectid",
"topics": [
{"path": "iotdemo"}, // Non iot core topic
{"path": "/devices/+/events", "type": 1, "target": "performance-testing"}, // iot core topic
{"path": "/devices/+/events/sub", "type": 1, "target": "performance-testing-sub", "sub_folder": "sub"}, // iot core topic
{"path": "/devices/+/state", "type": 2, "target": "performance-testing-state"} // iot core topic
]
} |
GET:
No query support. Admin or Dev
Returns the same object as the POST body