Een bronverbinding en gegevensstroom maken voor SugarCRM Accounts & Contacts met de Flow Service API
Het volgende leerprogramma begeleidt u door de stappen om een SugarCRM Accounts & Contacts bronverbinding tot stand te brengen en een dataflow tot stand te brengen om SugarCRMrekeningen en contactgegevens aan Adobe Experience Platform te brengen gebruikend Flow Service API.
Aan de slag
Deze handleiding vereist een goed begrip van de volgende onderdelen van het Experience Platform:
- Bronnen: Experience Platform staat gegevens toe om van diverse bronnen worden opgenomen terwijl het voorzien van u van de capaciteit om, inkomende gegevens te structureren te etiketteren en te verbeteren gebruikend de diensten van het Platform.
- Sandboxes: Experience Platform verstrekt virtuele zandbakken die één enkele instantie van het Platform in afzonderlijke virtuele milieu's verdelen helpen digitale ervaringstoepassingen ontwikkelen en ontwikkelen.
In de volgende secties vindt u aanvullende informatie die u moet weten voordat u verbinding kunt maken met SugarCRM via de Flow Service API.
Vereiste referenties verzamelen
Als u SugarCRM Accounts & Contacts wilt verbinden met Platform, moet u waarden opgeven voor de volgende verbindingseigenschappen:
host
developer.salesfusion.com
username
abc.def@example.com@sugarmarketdemo000.com
password
123456789
Verbinding maken SugarCRM Accounts & Contacts met platform met behulp van de Flow Service API
In het volgende voorbeeld worden de stappen beschreven die u moet uitvoeren om de SugarCRM -bron te verifiëren, een bronverbinding te maken en een gegevensstroom te maken om uw accounts en contactgegevens naar het Experience Platform te brengen.
Een basisverbinding maken base-connection
Een basisverbinding behoudt informatie tussen uw bron en Platform, met inbegrip van de de authentificatiegeloofsbrieven van uw bron, de huidige staat van de verbinding, en uw unieke identiteitskaart van de basisverbinding. Met de ID van de basisverbinding kunt u bestanden verkennen en door bestanden navigeren vanuit uw bron en kunt u de specifieke items identificeren die u wilt opnemen, inclusief informatie over hun gegevenstypen en indelingen.
Als u een basis-verbindings-id wilt maken, vraagt u een POST naar het /connections
-eindpunt en geeft u de SugarCRM Accounts & Contacts -verificatiegegevens op als onderdeel van de aanvraaginstantie.
API formaat
POST /connections
Verzoek
Met de volgende aanvraag wordt een basisverbinding voor SugarCRM Accounts & Contacts gemaakt:
curl -X POST \
'https://platform.adobe.io/data/foundation/flowservice/connections' \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-H 'Content-Type: application/json' \
-d '{
"name": "SugarCRM Accounts & Contacts base connection",
"description": "Create a live inbound connection to your SugarCRM Accounts & Contacts instance, to ingest both historic and scheduled data into Experience Platform",
"connectionSpec": {
"id": "59a4b493-a615-40f9-bd38-f823d0909a2b",
"version": "1.0"
},
"auth": {
"specName": "OAuth2 Refresh Code",
"params": {
"host": "developer.salesfusion.com",
"username": "{SUGARCRM_DEVELOPER_ACCOUNT_USERNAME}",
"password": "{SUGARCRM_DEVELOPER_ACCOUNT_PASSWORD}"
}
}
}'
name
description
connectionSpec.id
auth.specName
auth.params.host
auth.params.username
auth.params.password
Reactie
Een succesvolle reactie keert de pas gecreëerde basisverbinding, met inbegrip van zijn unieke verbindings herkenningsteken (id
) terug. Deze id is vereist om de bestandsstructuur en inhoud van uw bron in de volgende stap te verkennen.
{
"id": "f5421911-6f6c-41c7-aafa-5d9d2ce51535",
"etag": "\"4d08164f-0000-0200-0000-6368b7bf0000\""
}
Ontdek uw bron explore
Met de id van de basisverbinding die u in de vorige stap hebt gegenereerd, kunt u bestanden en mappen verkennen door GET-aanvragen uit te voeren.
Gebruik de volgende vraag om de weg van het dossier te vinden u in Platform wilt brengen:
API formaat
GET /connections/{BASE_CONNECTION_ID}/explore?objectType=rest&object={OBJECT}&fileType={FILE_TYPE}&preview={PREVIEW}&sourceParams={SOURCE_PARAMS}
Wanneer het uitvoeren van GET verzoeken om de het dossierstructuur en inhoud van uw bron te onderzoeken, moet u de vraagparameters omvatten die in de lijst hieronder vermeld zijn:
{BASE_CONNECTION_ID}
objectType=rest
rest
.{OBJECT}
json
zijn.fileType=json
json
het enige ondersteunde bestandstype.{PREVIEW}
{SOURCE_PARAMS}
Bepaalt parameters voor het brondossier u aan Platform wilt brengen. Als u het geaccepteerde indelingstype voor {SOURCE_PARAMS}
wilt ophalen, moet u de gehele tekenreeks coderen in base64.
SugarCRM Accounts & Contacts ondersteunt meerdere API's. Afhankelijk van het objecttype dat u gebruikt, geeft u een van de volgende waarden door:
accounts
: bedrijven met wie uw organisatie een relatie heeft.contacts
: Individuele personen met wie uw organisatie een vaste relatie heeft.
De SugarCRM Accounts & Contacts ondersteunt meerdere API's. Afhankelijk van het objecttype dat u gebruikt voor het verzenden van de aanvraag, ziet u als volgt:
Verzoek
Voor de SugarCRM Accounts-API wordt de waarde voor {SOURCE_PARAMS}
doorgegeven als {"object_type":"accounts"}
. Wanneer gecodeerd in base64, komt deze overeen met eyJvYmplY3RfdHlwZSI6ImFjY291bnRzIn0=
zoals hieronder weergegeven.
code language-shell |
---|
|
Voor de SugarCRM Contactpersonen-API wordt de waarde voor {SOURCE_PARAMS}
doorgegeven als {"object_type":"contacts"}
. Wanneer gecodeerd in base64 komt deze overeen met eyJvYmplY3RfdHlwZSI6ImNvbnRhY3RzIn0=
zoals hieronder weergegeven.
code language-shell |
---|
|
Reactie
En afhankelijk van welk objecttype u de ontvangen reactie leveraging is de volgende tabel:
Een geslaagde reactie retourneert een structuur zoals hieronder.
code language-json |
---|
|
Een geslaagde reactie retourneert een structuur zoals hieronder.
code language-json |
---|
|
Een bronverbinding maken source-connection
U kunt een bronverbinding maken door een aanvraag voor een POST in te dienen bij de Flow Service API. Een bronverbinding bestaat uit een verbinding-id, een pad naar het brongegevensbestand en een verbindingsspecificatie-id.
API formaat
POST /sourceConnections
Verzoek
Met de volgende aanvraag wordt een bronverbinding gemaakt voor SugarCRM Accounts & Contacts :
Afhankelijk van het objecttype dat u gebruikt, selecteert u een van de volgende tabbladen:
Voor de API voor SugarCRM Accounts moet de waarde van de object_type
-eigenschap accounts
zijn.
code language-shell |
---|
|
Voor de SugarCRM Contactpersonen-API moet de waarde van de eigenschap object_type
contacts
zijn.
code language-shell |
---|
|
name
description
baseConnectionId
connectionSpec.id
data.format
json
.object_type
SugarCRM Accounts & Contacts ondersteunt meerdere API's. Afhankelijk van het objecttype dat u gebruikt, geeft u een van de volgende waarden door:
accounts
: bedrijven met wie uw organisatie een relatie heeft.contacts
: Individuele personen met wie uw organisatie een vaste relatie heeft.
path
object_type
selecteert.Reactie
Een succesvolle reactie keert het unieke herkenningsteken (id
) van de pas gecreëerde bronverbinding terug. Deze id is in een latere stap vereist om een gegevensstroom te maken.
{
"id": "8f1fc72a-f562-4a1d-8597-85b5ca1b1cd3",
"etag": "\"ed05f1e1-0000-0200-0000-6368b8710000\""
}
Een doel-XDM-schema maken target-schema
Om de brongegevens in Platform te gebruiken, moet een doelschema worden gecreeerd om de brongegevens volgens uw behoeften te structureren. Het doelschema wordt dan gebruikt om een dataset van het Platform tot stand te brengen waarin de brongegevens bevat zijn.
Een doelXDM schema kan worden gecreeerd door een verzoek van de POST aan de Registratie API van het Schemauit te voeren.
Voor gedetailleerde stappen op hoe te om een doelXDM schema tot stand te brengen, zie het leerprogramma op creërend een schema gebruikend API.
Een doelgegevensset maken target-dataset
Een doeldataset kan worden gecreeerd door een verzoek van de POST aan de Dienst API van de Catalogus uit te voeren, verstrekkend identiteitskaart van het doelschema binnen de nuttige lading.
Voor gedetailleerde stappen op hoe te om een doeldataset tot stand te brengen, zie het leerprogramma op het creëren van een dataset gebruikend API.
Een doelverbinding maken target-connection
Een doelverbinding vertegenwoordigt de verbinding met de bestemming waar de ingesloten gegevens moeten worden opgeslagen. Om een doelverbinding tot stand te brengen, moet u vaste identiteitskaart van de verbindingsspecificatie verstrekken die aan het gegevens meer beantwoordt. Deze id is: c604ff05-7f1a-43c0-8e18-33bf874cb11c
.
U hebt nu de unieke herkenningstekens een doelschema een doeldataset en identiteitskaart van de verbindingsspecificatie aan het gegevensmeer. Met behulp van deze id's kunt u een doelverbinding maken met de Flow Service API om de gegevensset op te geven die de binnenkomende brongegevens zal bevatten.
API formaat
POST /targetConnections
Verzoek
Met de volgende aanvraag wordt een doelverbinding voor SugarCRM Accounts & Contacts gemaakt:
curl -X POST \
'https://platform.adobe.io/data/foundation/flowservice/targetConnections' \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-H 'Content-Type: application/json' \
-d '{
"name": "SugarCRM Target Connection Generic Rest",
"description": "SugarCRM Target Connection Generic Rest",
"connectionSpec": {
"id": "63d2b27b-69a5-45c9-a7fe-78148a25de3c",
"version": "1.0"
},
"data": {
"format": "parquet_xdm",
"schema": {
"id": "https://ns.adobe.com/{TENANT_ID}/schemas/b156e6f818f923e048199173c45e55e20fd2487f5eb03d22",
"version": "1.22"
}
},
"params": {
"dataSetId": "6365389d1d37d01c077a81da"
}
}'
name
description
connectionSpec.id
6b137bf6-d2a0-48c8-914b-d50f4942eb85
.data.format
params.dataSetId
Reactie
Een succesvolle reactie keert het unieke herkenningsteken van de nieuwe doelverbinding (id
) terug. Deze id is vereist in latere stappen.
{
"id": "6b137bf6-d2a0-48c8-914b-d50f4942eb85",
"etag": "\"8405a268-0000-0200-0000-6368b8c30000\""
}
Een toewijzing maken mapping
Opdat de brongegevens in een doeldataset moeten worden opgenomen, moet het eerst aan het doelschema worden in kaart gebracht dat de doeldataset zich aan houdt. Dit wordt bereikt door een verzoek van de POST aan Data Prep APImet gegevenstoewijzingen uit te voeren die binnen de verzoeklading worden bepaald.
API formaat
POST /conversion/mappingSets
Verzoek
curl -X POST \
'https://platform.adobe.io/data/foundation/conversion/mappingSets' \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-H 'Content-Type: application/json' \
-d '{
"outputSchema": {
"schemaRef": {
"id": "https://ns.adobe.com/{TENANT_ID}/schemas/b156e6f818f923e048199173c45e55e20fd2487f5eb03d22",
"contentType": "application/vnd.adobe.xed-full+json;version=1"
}
},
"mappings": [
{
"sourceType": "ATTRIBUTE",
"source": "results.account",
"destination": "_extconndev.account"
},
{
"sourceType": "ATTRIBUTE",
"source": "results.account_id",
"destination": "_extconndev.account_id"
},
{
"sourceType": "ATTRIBUTE",
"source": "results.acount_name",
"destination": "_extconndev.account_name"
},
{
"sourceType": "ATTRIBUTE",
"source": "results.account_score",
"destination": "_extconndev.account_score"
},
{
"sourceType": "ATTRIBUTE",
"source": "results.billing_city",
"destination": "_extconndev.billing_city"
},
{
"sourceType": "ATTRIBUTE",
"source": "results.contacts",
"destination": "_extconndev.contacts"
},
{
"sourceType": "ATTRIBUTE",
"source": "results.created_by",
"destination": "_extconndev.created_by"
},
{
"sourceType": "ATTRIBUTE",
"source": "results.created_by_id",
"destination": "_extconndev.created_by_id"
},
{
"sourceType": "ATTRIBUTE",
"source": "results.created_date",
"destination": "_extconndev.created_date"
},
{
"sourceType": "ATTRIBUTE",
"source": "results.custom_score_field",
"destination": "_extconndev.custom_score_field"
},
{
"sourceType": "ATTRIBUTE",
"source": "results.key_account",
"destination": "_extconndev.key_account"
},
{
"sourceType": "ATTRIBUTE",
"source": "results.owner",
"destination": "_extconndev.owner"
},
{
"sourceType": "ATTRIBUTE",
"source": "results.owner_id",
"destination": "_extconndev.owner_id"
},
{
"sourceType": "ATTRIBUTE",
"source": "results.phone",
"destination": "_extconndev.phone_no"
},
{
"sourceType": "ATTRIBUTE",
"source": "results.updated_by",
"destination": "_extconndev.updated_by"
},
{
"sourceType": "ATTRIBUTE",
"source": "results.updated_by_id",
"destination": "_extconndev.updated_by_id"
},
{
"sourceType": "ATTRIBUTE",
"source": "results.updated_date",
"destination": "_extconndev.updated_date"
}
]
}'
outputSchema.schemaRef.id
mappings.sourceType
mappings.source
mappings.destination
Reactie
Een succesvolle reactie keert details van de pas gecreëerde afbeelding met inbegrip van zijn uniek herkenningsteken (id
) terug. Deze waarde is in een latere stap vereist om een gegevensstroom te maken.
{
"id": "059c69f7207b4d7e9b48c47e2fd966a6",
"version": 0,
"createdDate": 1597784069368,
"modifiedDate": 1597784069368,
"createdBy": "{CREATED_BY}",
"modifiedBy": "{MODIFIED_BY}"
}
Een flow maken flow
De laatste stap op weg naar het verzenden van gegevens van SugarCRM Accounts & Contacts naar Platform is het maken van een gegevensstroom. Momenteel zijn de volgende vereiste waarden voorbereid:
Een dataflow is verantwoordelijk voor het plannen en verzamelen van gegevens uit een bron. U kunt een gegevensstroom tot stand brengen door een verzoek van de POST uit te voeren terwijl het verstrekken van de eerder vermelde waarden binnen de lading.
Als u een opname wilt plannen, moet u eerst de begintijdwaarde instellen op Tijd in seconden. Vervolgens moet u de frequentiewaarde instellen op hour
of day
. De intervalwaarde geeft de periode tussen twee opeenvolgende indelingen aan. De intervalwaarde moet worden ingesteld op 1
of 24
afhankelijk van scheduleParams.frequency
de selectie van hour
of day
.
API formaat
POST /flows
Verzoek
curl -X POST \
'https://platform.adobe.io/data/foundation/flowservice/flows' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-H 'Content-Type: application/json' \
-d '{
"name": "SugarCRM Connector Description Flow Generic Rest",
"description": "SugarCRM Connector Description Flow Generic Rest",
"flowSpec": {
"id": "6499120c-0b15-42dc-936e-847ea3c24d72",
"version": "1.0"
},
"sourceConnectionIds": [
"8f1fc72a-f562-4a1d-8597-85b5ca1b1cd3"
],
"targetConnectionIds": [
"6b137bf6-d2a0-48c8-914b-d50f4942eb85"
],
"transformations": [
{
"name": "Mapping",
"params": {
"mappingId": "059c69f7207b4d7e9b48c47e2fd966a6",
"mappingVersion": "0"
}
}
],
"scheduleParams": {
"startTime": "1625040887",
"frequency": "hour",
"interval": 1
}
}'
name
description
flowSpec.id
6499120c-0b15-42dc-936e-847ea3c24d72
.flowSpec.version
1.0
.sourceConnectionIds
targetConnectionIds
transformations
transformations.name
transformations.params.mappingId
transformations.params.mappingVersion
0
.scheduleParams.startTime
scheduleParams.frequency
hour
of day
.scheduleParams.interval
1
of 24
afhankelijk van scheduleParams.frequency
de selectie van hour
of day
.Reactie
Een succesvolle reactie keert identiteitskaart (id
) van nieuw gecreeerd dataflow terug. Met deze id kunt u uw gegevensstroom controleren, bijwerken of verwijderen.
{
"id": "fcd16140-81b4-422a-8f9a-eaa92796c4f4",
"etag": "\"9200a171-0000-0200-0000-6368c1da0000\""
}
Bijlage
In de volgende sectie vindt u informatie over de stappen die u kunt uitvoeren om uw gegevensstroom te controleren, bij te werken en te verwijderen.
Uw gegevensstroom controleren
Zodra uw gegevensstroom is gecreeerd, kunt u de gegevens controleren die door het worden opgenomen om informatie over stroomlooppas, voltooiingsstatus, en fouten te zien. Voor volledige API voorbeelden, lees de gids op controlerend uw brongegevens gebruikend API.
Uw gegevensstroom bijwerken
Werk de details van uw gegevensstroom bij, zoals zijn naam en beschrijving, evenals zijn looppas programma en bijbehorende kaartreeksen door een PATCH verzoek aan het /flows
eindpunt van Flow Service API te richten, terwijl het verstrekken van identiteitskaart van uw gegevensstroom. Wanneer u een PATCH-verzoek indient, moet u de unieke etag
gegevens van uw gegevensstroom opgeven in de If-Match
-header. Voor volledige API voorbeelden, lees de gids bij het bijwerken bronnen dataflows gebruikend API
Uw account bijwerken
Werk de naam, beschrijving en gegevens van uw bronaccount bij door een PATCH-aanvraag uit te voeren naar de Flow Service API en uw basis-verbindings-id op te geven als een queryparameter. Wanneer u een PATCH-aanvraag indient, moet u de unieke etag
van uw bronaccount opgeven in de If-Match
-header. Voor volledige API voorbeelden, lees de gids bij het bijwerken van uw bronrekening gebruikend API.
Uw gegevensstroom verwijderen
Verwijder de gegevensstroom door een DELETE-aanvraag uit te voeren naar de Flow Service API en de id op te geven van de gegevensstroom die u wilt verwijderen als onderdeel van de queryparameter. Voor volledige API voorbeelden, lees de gids op schrappend uw dataflows gebruikend API.
Uw account verwijderen
Verwijder uw account door een DELETE-aanvraag uit te voeren naar de Flow Service API terwijl u de basis verbinding-id opgeeft van het account dat u wilt verwijderen. Voor volledige API voorbeelden, lees de gids bij het schrappen van uw bronrekening gebruikend API.