Entities (Profile Access) API Endpoint (2023)

Adobe Experience Platform enables you to access Real-Time Customer Profile data using RESTful APIs or the user interface. This guide outlines how to access entities, more commonly known as “profiles”, using the API. For more information on accessing profiles using the Platform UI, please refer to the Profile user guide.

Getting started

The API endpoint used in this guide is part of the Real-Time Customer Profile API. Before continuing, please review the getting started guide for links to related documentation, a guide to reading the sample API calls in this document, and important information regarding required headers that are needed to successfully make calls to any Experience Platform API.

Access profile data by identity

You can access a Profile entity by making a GET request to the /access/entities endpoint and providing the entity’s identity as a series of query parameters. This identity consists of an ID value (entityId) and the identity namespace (entityIdNS).

Query parameters provided in the request path specify which data to access. You can include multiple parameters, separated by ampersands (&). A complete list of valid parameters is provided in the query parameters section of the appendix.

API format

GET /access/entities?{QUERY_PARAMETERS}

Request

The following request retrieves a customer’s email and name using an identity:

curl -X GET \ 'https://platform.adobe.io/data/core/ups/access/entities?schema.name=_xdm.context.profile&entityId=janedoe@example.com&entityIdNS=email&fields=identities,person.name,workEmail' \ -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}'

Response

{ "BVrqzwVv7o2p3naHvnsWpqZXv3KJgA": { "entityId": "BVrqzwVv7o2p3naHvnsWpqZXv3KJgA", "sources": [ "1000000000" ], "entity": { "identities": [ { "id": "89149270342662559642753730269986316601", "namespace": { "code": "ecid" } }, { "id": "janedoe@example.com", "namespace": { "code": "email" } }, { "id": "janesmith@example.com", "namespace": { "code": "email" } }, { "id": "89149270342662559642753730269986316604", "namespace": { "code": "ecid" } }, { "id": "58832431024964181144308914570411162539", "namespace": { "code": "ecid" } }, { "id": "89149270342662559642753730269986316602", "namespace": { "code": "ecid" }, "primary": true } ], "person": { "name": { "firstName": "Jane", "middleName": "F", "lastName": "Doe" } }, "workEmail": { "primary": true, "address": "janedoe@example.com", "label": "Jane Doe", "type": "work", "status": "active" } }, "lastModifiedAt": "2018-08-28T20:57:24Z" }}

NOTE

If a related graph links more than 50 identities, this service will return HTTP status 422 and the message “Too many related identities”. If you receive this error, consider adding more query parameters to narrow your search.

Access profile data by list of identities

You can access multiple profile entities by their identities by making a POST request to the /access/entities endpoint and providing the identities in the payload. These identities consist of an ID value (entityId) and an identity namespace (entityIdNS).

(Video) How to Create API Endpoint in 3 Minutes!

API format

POST /access/entities

Request

The following request retrieves the names and email addresses of several customers by a list of identities:

curl -X POST \ https://platform.adobe.io/data/core/ups/access/entities \ -H 'Content-Type: application/json' \ -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}' \ -d '{ "schema":{ "name":"_xdm.context.profile" }, "fields":[ "identities", "person.name", "workEmail" ], "identities":[ { "entityId":"89149270342662559642753730269986316601", "entityIdNS":{ "code":"ECID" } }, { "entityId":"89149270342662559642753730269986316900", "entityIdNS":{ "code":"ECID" } }, { "entityId":"89149270342662559642753730269986316602", "entityIdNS":{ "code":"ECID" } } ], "timeFilter": { "startTime": 1539838505, "endTime": 1539838510 }, "limit": 10, "orderby": "-timestamp", "withCA": true }'
PropertyDescription
schema.name(Required) The name of the XDM schema the entity belongs to.
fieldsThe XDM fields to be returned, as an array of strings. By default, all fields will be returned.
identities(Required) An array containing a list of identities for the entities you want to access.
identities.entityIdThe ID of an entity you wish to access.
identities.entityIdNS.codeThe namespace of an entity ID you wish to access.
timeFilter.startTimeStart time of the time range filter, included. Should be at millisecond granularity. Default, if not specified, is the beginning of available time.
timeFilter.endTimeEnd time of time range filter, excluded. Should be at millisecond granularity. Default, if not specified, is the end of available time.
limitNumber of records to return. Only applies to the number of experience events returned. Default: 1,000.
orderbyThe sort order of retrieved experience events by timestamp, written as (+/-)timestamp with the default being +timestamp.
withCAFeature flag for enabling computed attributes for lookup. Default: false.

Response
A successful response returns the requested fields of entities specified in the request body.

{ "A29cgveD5y64ezlhxjUXNzcm": { "entityId": "A29cgveD5y64ezlhxjUXNzcm", "sources": [ "1000000000" ], "entity": { "identities": [ { "id": "89149270342662559642753730269986316601", "namespace": { "code": "ecid" } }, { "id": "janedoe@example.com", "namespace": { "code": "email" } }, { "id": "05DD23564EC4607F0A490D44", "namespace": { "code": "ecid" } }, { "id": "89149270342662559642753730269986316603", "namespace": { "code": "ecid" } }, { "id": "janesmith@example.com", "namespace": { "code": "email" } }, { "id": "89149270342662559642753730269986316604", "namespace": { "code": "ecid" } }, { "id": "89149270342662559642753730269986316700", "namespace": { "code": "ecid" } }, { "id": "89149270342662559642753730269986316701", "namespace": { "code": "ecid" } }, { "id": "58832431024964181144308914570411162539", "namespace": { "code": "ecid" } }, { "id": "89149270342662559642753730269986316602", "namespace": { "code": "ecid" }, "primary": true } ], "person": { "name": { "firstName": "Jane", "middleName": "F", "lastName": "Doe" } }, "workEmail": { "primary": true, "address": "janedoe@example.com", "label": "Jane Doe", "type": "work", "status": "active" } }, "lastModifiedAt": "2018-08-28T20:57:24Z" }, "A29cgveD5y64e2RixjUXNzcm": { "entityId": "A29cgveD5y64e2RixjUXNzcm", "sources": [ "" ], "entity": {}, "lastModifiedAt": "1970-01-01T00:00:00Z" }, "A29cgveD5y64ezphxjUXNzcm": { "entityId": "A29cgveD5y64ezphxjUXNzcm", "sources": [ "1000000000" ], "entity": { "identities": [ { "id": "89149270342662559642753730269986316602", "namespace": { "code": "ecid" }, "primary": true }, { "id": "janedoe@example.com", "namespace": { "code": "email" } } ], "person": { "name": { "firstName": "Jane", "middleName": "F", "lastName": "Doe" } }, "workEmail": { "primary": true, "address": "janedoe@example.com", "label": "Jane Doe", "type": "work", "status": "active" } }, "lastModifiedAt": "2018-08-27T23:25:52Z" }}

Access time series events for a profile by identity

You can access time series events by the identity of their associated profile entity by making a GET request to the /access/entities endpoint. This identity consists of an ID value (entityId) and an identity namespace (entityIdNS).

Query parameters provided in the request path specify which data to access. You can include multiple parameters, separated by ampersands (&). A complete list of valid parameters is provided in the query parameters section of the appendix.

API format

GET /access/entities?{QUERY_PARAMETERS}

Request

The following request finds a profile entity by ID, and retrieves the values for the properties endUserIDs, web, and channel for all time series events associated with the entity.

curl -X GET \ 'https://platform.adobe.io/data/core/ups/access/entities?schema.name=_xdm.context.experienceevent&relatedSchema.name=_xdm.context.profile&relatedEntityId=89149270342662559642753730269986316900&relatedEntityIdNS=ECID&fields=endUserIDs,web,channel&startTime=1531260476000&endTime=1531260480000&limit=1' \ -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}'

Response

A successful response returns a paginated list of time series events and associated fields that were specified in the request query parameters.

NOTE

The request specified a limit of one (limit=1), therefore the count in the response below is 1 and only one entity is returned.

(Video) API Design: Don’t expose your JPA entities in your REST API
{ "_page": { "orderby": "timestamp", "start": "c8d11988-6b56-4571-a123-b6ce74236036", "count": 1, "next": "c8d11988-6b56-4571-a123-b6ce74236037" }, "children": [ { "relatedEntityId": "A29cgveD5y64e2RixjUXNzcm", "entityId": "c8d11988-6b56-4571-a123-b6ce74236036", "timestamp": 1531260476000, "entity": { "endUserIDs": { "_experience": { "ecid": { "id": "89149270342662559642753730269986316900", "namespace": { "code": "ecid" } } } }, "channel": { "_type": "web" }, "web": { "webPageDetails": { "name": "Fernie Snow", "pageViews": { "value": 1 } } } }, "lastModifiedAt": "2018-08-21T06:49:02Z" } ], "_links": { "next": { "href": "/entities?start=c8d11988-6b56-4571-a123-b6ce74236037&orderby=timestamp&schema.name=_xdm.context.experienceevent&relatedSchema.name=_xdm.context.profile&relatedEntityId=89149270342662559642753730269986316900&relatedEntityIdNS=ECID&fields=endUserIDs,web,channel&startTime=1531260476000&endTime=1531260480000&limit=1" } }}

Access a subsequent page of results

Results are paginated when retrieving time series events. If there are subsequent pages of results, the _page.next property will contain an ID. Additionally, the _links.next.href property provides a request URI for retrieving the next page. To retrieve the results, make another GET request to the /access/entities endpoint, however you must be sure to replace /entities with the value of the provided URI.

NOTE

Be sure that you do not accidentally repeat /entities/ in the request path. It should only appear once like, /access/entities?start=...

API format

GET /access/{NEXT_URI}
ParameterDescription
{NEXT_URI}The URI value taken from _links.next.href.

Request

The following request retrieves the next page of results by using the _links.next.href URI as the request path.

curl -X GET \ 'https://platform.adobe.io/data/core/ups/access/entities?start=c8d11988-6b56-4571-a123-b6ce74236037&orderby=timestamp&schema.name=_xdm.context.experienceevent&relatedSchema.name=_xdm.context.profile&relatedEntityId=89149270342662559642753730269986316900&relatedEntityIdNS=ECID&fields=endUserIDs,web,channel&startTime=1531260476000&endTime=1531260480000&limit=1' \ -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}'

Response

A successful response returns the next page of results. This response does not have subsequent pages of results, as indicated by the empty string values of _page.next and _links.next.href.

{ "_page": { "orderby": "timestamp", "start": "c8d11988-6b56-4571-a123-b6ce74236037", "count": 1, "next": "" }, "children": [ { "relatedEntityId": "A29cgveD5y64e2RixjUXNzcm", "entityId": "c8d11988-6b56-4571-a123-b6ce74236037", "timestamp": 1531260477000, "entity": { "endUserIDs": { "_experience": { "ecid": { "id": "89149270342662559642753730269986316900", "namespace": { "code": "ecid" } } } }, "channel": { "_type": "web" }, "web": { "webPageDetails": { "name": "Fernie Snow", "pageViews": { "value": 1 } } } }, "lastModifiedAt": "2018-08-21T06:50:01Z" } ], "_links": { "next": { "href": "" } }}

Access time series events for multiple profiles by identities

You can access time series events from multiple associated profiles by making a POST request to the /access/entities endpoint and providing the profile identities in the payload. These identities each consist of an ID value (entityId) and an identity namespace (entityIdNS).

(Video) User Sign-Up 🚀 Verify/Confirm Email & Forgot/Reset Password with a .NET 6 Web API

API format

POST /access/entities

Request

The following request retrieves user IDs, local times, and country codes for time series events associated with a list of profile identities:

curl -X POST \ https://platform.adobe.io/data/core/ups/access/entities \ -H 'Content-Type: application/json' \ -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}' \ -d '{ "schema": { "name": "_xdm.context.experienceevent" }, "relatedSchema": { "name": "_xdm.context.profile" }, "identities": [ { "relatedEntityId": "GkouAW-yD9aoRCPhRYROJ-TetAFW" } { "relatedEntityId": "GkouAW-2u-7iWt5vQ9u2wm40JOZY" } ], "fields": [ "endUserIDs", "placeContext.localTime", "placeContext.geo.countryCode" ], "timeFilter": { "startTime": 11539838505 "endTime": 1539838510 }, "limit": 10}'
PropertyDescription
schema.name(REQUIRED) The XDM schema of the entity to retrieve
relatedSchema.nameIf schema.name is _xdm.context.experienceevent this value must specify the schema for the profile entity that the time series events are related to.
identities(REQUIRED) An array listing of profiles to retrieve associated time series events from. Each entry in the array is set in one of two ways: 1) using a fully qualified identity consisting of ID value and namespace or 2) providing an XID.
fieldsIsolates the data returned to a specified set of fields. Use this to filter which schema fields are included in data retrieved. Example: personalEmail,person.name,person.gender
mergePolicyIdIdentifies the Merge Policy by which to govern the data returned. If one is not specified in the service call, your organization’s default for that schema will be used. If no default Merge Policy has been configured, the default is no profile merge and no identity stitching.
orderbyThe sort order of retrieved experience events by timestamp, written as (+/-)timestamp with the default being +timestamp.
timeFilter.startTimeSpecify the start time to filter time-series objects (in milliseconds).
timeFilter.endTimeSpecify the end time to filter time-series objects (in milliseconds).
limitNumeric value specifying the maximum number of objects to return. Default: 1000
withCAFeature flag for enabling computed attributes for lookup. Default: false

Response

A successful response returns a paginated list of time series events associated with the multiple profiles specified in the request.

{ "GkouAW-yD9aoRCPhRYROJ-TetAFW": { "_page": { "orderby": "timestamp", "start": "ee0fa8eb-f09c-4d72-a432-fea7f189cfcd", "count": 10, "next": "40cb2fb3-78cd-49d3-806f-9bdb22748226" }, "children": [ { "relatedEntityId": "GkouAW-yD9aoRCPhRYROJ-TetAFW", "entityId": "ee0fa8eb-f09c-4d72-a432-fea7f189cfcd", "timestamp": 1537275882000, "entity": { "endUserIDs": { "_experience": { "mcid": { "id": "67971860962043911970658021809222795905", "namespace": { "code": "ECID" } }, "aacustomid": { "id": "50353446361742744826197433431642033796", "namespace": { "code": "CRMID" }, "primary": true }, "acid": { "id": "2de32e9a00003314-2fd9c00000000026", "namespace": { "code": "AVID" } } } }, "placeContext": { "localTime": "2018-09-18T13:04:42Z", "geo": { "countryCode": "MX" } } }, "lastModifiedAt": "2018-10-24T17:35:01Z" }, { "relatedEntityId": "GkouAW-yD9aoRCPhRYROJ-TetAFW", "entityId": "a9e137b4-1348-4878-8167-e308af523d8b", "timestamp": 1537275889000, "entity": { "endUserIDs": { "_experience": { "mcid": { "id": "67971860962043911970658021809222795905", "namespace": { "code": "ECID" } }, "aacustomid": { "id": "50353446361742744826197433431642033796", "namespace": { "code": "CRMID" }, "primary": true }, "acid": { "id": "2de32e9a00003314-2fd9c00000000026", "namespace": { "code": "AVID" } } } }, "placeContext": { "localTime": "2018-09-18T13:04:49Z", "geo": { "countryCode": "MX" } } }, "lastModifiedAt": "2018-10-24T17:35:01Z" } ], "_links": { "next": { "href": "/entities", "payload": { "schema": { "name": "_xdm.context.experienceevent" }, "relatedSchema": { "name": "_xdm.context.profile" }, "timeFilter": { "startTime": 1537275882000 }, "fields": [ "endUserIDs", "placeContext.localTime", "placeContext.geo.countryCode" ], "identities": [ { "relatedEntityId": "GkouAW-yD9aoRCPhRYROJ-TetAFW", "start": "40cb2fb3-78cd-49d3-806f-9bdb22748226" } ], "limit": 10 } } } }, "GkouAW-2u-7iWt5vQ9u2wm40JOZY": { "_page": { "orderby": "timestamp", "start": "2746d0db-fa64-4e29-b67e-324bec638816", "count": 9, "next": "" }, "children": [ { "relatedEntityId": "GkouAW-2u-7iWt5vQ9u2wm40JOZY", "entityId": "2746d0db-fa64-4e29-b67e-324bec638816", "timestamp": 1537559483000, "entity": { "endUserIDs": { "_experience": { "mcid": { "id": "76436745599328540420034822220063618863", "namespace": { "code": "ECID" } }, "aacustomid": { "id": "48593470048917738786405847327596263131", "namespace": { "code": "CRMID" }, "primary": true }, "acid": { "id": "2de32e9a80007451-03da600000000028", "namespace": { "code": "AVID" } } } }, "placeContext": { "localTime": "2018-09-21T19:51:23Z", "geo": { "countryCode": "US" } } }, "lastModifiedAt": "2018-10-24T17:34:58Z" }, { "relatedEntityId": "GkouAW-2u-7iWt5vQ9u2wm40JOZY", "entityId": "9bf337a1-3256-431e-a38c-5c0d42d121d1", "timestamp": 1537559486000, "entity": { "endUserIDs": { "_experience": { "mcid": { "id": "76436745599328540420034822220063618863", "namespace": { "code": "ECID" } }, "aacustomid": { "id": "48593470048917738786405847327596263131", "namespace": { "code": "CRMID" }, "primary": true }, "acid": { "id": "2de32e9a80007451-03da600000000028", "namespace": { "code": "AVID" } } } }, "placeContext": { "localTime": "2018-09-21T19:51:26Z", "geo": { "countryCode": "US" } } }, "lastModifiedAt": "2018-10-24T17:34:58Z" } ], "_links": { "next": { "href": "" } } }}`

In this example response, the first listed profile (“GkouAW-yD9aoRCPhRYROJ-TetAFW”) provides a value for _links.next.payload, meaning that there are additional pages of results for this profile. See the following section on accessing additional results for details on how to access those additional results.

Access additional results

When retrieving time series events there may be many results being returned, therefore the results are often paginated. If there are subsequent pages of results for a particular profile, the _links.next.payload value for that profile will contain a payload object.

Using this payload in the request body, you can perform an additional POST request to the access/entities endpoint to retrieve the subsequent page of time series data for that profile.

Access time series events in multiple schema entities

You can access multiple entities that are connected through a relationship descriptor. The following example API call assumes a relationship has already been defined between two schemas. For more information on relationship descriptors, please read the Schema Registry API developer guide descriptors endpoint guide.

You can include query parameters in the request path in order to specify which data to access. You can include multiple parameters, separated by ampersands (&). A complete list of valid parameters is provided in the query parameters section of the appendix.

API format

GET /access/entities?{QUERY_PARAMETERS}

Request

(Video) Securing API with Duende Server (Identity Server 6)

The following request retrieves an entity containing a previously established relationship descriptor to access information across different schemas.

curl -X GET \ https://platform.adobe.io/data/core/ups/access/entities?relatedSchema.name=_xdm.context.profile&schema.name=_xdm.context.experienceevent&relatedEntityId=GkouAW-2Xkftzer3bBtHiW8GkaFL \ -H 'Content-Type: application/json' \ -H 'Authorization: Bearer {ACCESS_TOKEN}' \ -H 'x-api-key: {API_KEY}' \ -H 'x-gw-ims-org-id: {ORG_ID}' \

Response

A successful response returns a paginated list of time series events associated with the multiple entities.

{ "_page": { "orderby": "timestamp", "start": "cb10369f-a47b-4e65-afb4-06e1ad78a648", "count": 1, "next": "" }, "children": [ { "relatedEntityId": "GkouAW-2Xkftzer3bBtHiW8GkaFL", "entityId": "cb10369f-a47b-4e65-afb4-06e1ad78a648", "timestamp": 1564614939000, "entity": { "environment": { "browserDetails": {} }, "identityMap": { "CRMId": [ { "id": "78520026455138218785449796480922109723", "primary": true } ] }, "commerce": { "productViews": { "value": 1 } }, "productListItems": [ { "name": "Red shoe", "quantity": 85, "storesAvailableIn": [ "da6dced5-9574-4dda-89b5-9dc106903f80", "981bb433-2ee5-4db0-a19a-449ec9dbf39f" ], "SKU": "8f998279-797b-4da2-9e60-88bf73a9f15a", "priceTotal": 934.8 } ], "_id": "cb10369f-a47b-4e65-afb4-06e1ad78a648", "commerce": { "order": {} }, "placeContext": { "geo": { "_schema": {} } }, "device": {}, "timestamp": "2019-07-31T23:15:39Z", "_experience": { "profile": { "identityNamespaces": { "/productListItems[*]/SKU": { "namespace": { "code": "ECID" } } } } } }, "lastModifiedAt": "2019-10-10T00:14:19Z" } ], "_links": { "next": { "href": "" } }}

Access a subsequent page of results

Results are paginated when retrieving time series events. If there are subsequent pages of results, the _page.next property will contain an ID. Additionally, the _links.next.href property provides a request URI for retrieving the subsequent page by making additional GET requests to the access/entities endpoint.

Next steps

By following this guide you have successfully accessed Real-Time Customer Profile data fields, profiles, and time series data. To learn how to access other data resources stored in Platform, see the Data Access overview.

Appendix

The following section provides supplemental information regarding accessing Profile data using the API.

Query parameters

The following parameters are used in the path for GET requests to the /access/entities endpoint. They serve to identify the profile entity you wish to access and filter the data returned in the response. Required parameters are labeled, while the rest are optional.

ParameterDescriptionExample
schema.name(REQUIRED) The XDM schema of the entity to retrieveschema.name=_xdm.context.experienceevent
relatedSchema.nameIf schema.name is “_xdm.context.experienceevent”, this value must specify the schema for the profile entity that the time series events are related to.relatedSchema.name=_xdm.context.profile
entityId(REQUIRED) The ID of the entity. If the value of this parameter is not an XID, an identity namespace parameter must also be provided (see entityIdNS below).entityId=janedoe@example.com
entityIdNSIf entityId is not provided as an XID, this field must specify the identity namespace.entityIdNE=email
relatedEntityIdIf schema.name is “_xdm.context.experienceevent”, this value must specify the related profile entity’s identity namespace. This value follows the same rules as entityId.relatedEntityId=69935279872410346619186588147492736556
relatedEntityIdNSIf schema.name is “_xdm.context.experienceevent”, this value must specify the identity namespace for the entity specified in relatedEntityId.relatedEntityIdNS=CRMID
fieldsFilters the data returned in the response. Use this to specify which schema field values to include in data retrieved. For multiple fields, separate values by a comma with no spaces betweenfields=personalEmail,person.name,person.gender
mergePolicyIdIdentifies the Merge Policy by which to govern the data returned. If one is not specified in the call, your organization’s default for that schema will be used. If no default Merge Policy has been configured, the default is no profile merge and no identity stitching.mergePoilcyId=5aa6885fcf70a301dabdfa4a
orderByThe sort order of retrieved experience events by timestamp, written as (+/-)timestamp with the default being +timestamp.orderby=-timestamp
startTimeSpecify the start time to filter time-series objects (in milliseconds).startTime=1539838505
endTimeSpecify the end time to filter time-series objects (in milliseconds).endTime=1539838510
limitNumeric value specifying the maximum number of objects to return. Default: 1000limit=100
propertyFilters by the property value. Supports the following evaluators: =, !=, <, <=, >, >=. Can only be used with experience events, with a maximum of three properties being supported.property=webPageDetails.isHomepage=true&property=localTime<="2020-07-20"
withCAFeature flag for enabling computed attributes for lookup. Default: falsewithCA=true

Business.Adobe.com resources

Behavioral TargetingRecommendation EngineDocument GenerationContent ManagementAnomaly DetectionDemand Side Platform

(Video) Introduction to Entity Framework Core 7 - Free Course!

FAQs

What is an API endpoint example? ›

Software programs typically have multiple API endpoints. For example, Instagram's endpoints include one that allows businesses and creators to measure media and profile interactions; one that allows them to moderate comments and their replies; and a third that allows them to discover hashtagged media.

How do I find the endpoint of an API? ›

There are three ways you can access the API Endpoint: 1. Through the dataset URL: You can get the API endpoint by simply taking the dataset's UID and replacing it in this string: https://domain/resource/UID.extension *where the extension is the data format you's like to pull the data as.

What does API endpoint mean? ›

Simply put, an endpoint is one end of a communication channel. When an API interacts with another system, the touchpoints of this communication are considered endpoints. For APIs, an endpoint can include a URL of a server or service.

What is the difference between an API and an endpoint? ›

An endpoint is a component of an API, while an API is a set of rules that allow two applications to share resources. Endpoints are the locations of the resources, and the API uses endpoint URLs to retrieve the requested resources.

What are the different types of endpoints in API? ›

The API endpoint type can be edge-optimized, regional, or private, depending on where the majority of your API traffic originates from.
  • Edge-optimized API endpoints. An edge-optimized API endpoint is best for geographically distributed clients. ...
  • Regional API endpoints. ...
  • Private API endpoints.

What are the parts of an API endpoint? ›

The API components are:
  • API endpoint. It is a unique URL that contains the objects or collection of objects: ...
  • Headers. Headers are used to give server instructions about the variables in the request. ...
  • Method. ...
  • Data. ...
  • Params.
Jun 27, 2018

How do you check if an API endpoint is working? ›

API testing flow is quite simple with three main steps:
  1. Send the request with necessary input data.
  2. Get the response having output data.
  3. Verify that the response returned as expected in the requirement.

What is an endpoint identifier? ›

An endpoint identifier (EID) is an IPv4 or IPv6 address used to identify an endpoint on the network. These EIDs help mark endpoints, normally a gateway or H. 323 terminal, where a locator provides the information about the topological location of the endpoint.

How do I set endpoints in API? ›

Creating an API endpoint is simple with the following four steps, detailed below.
  1. Pick the Programming Language of Your Choice. ...
  2. Set Up Your Environment and Directory Structure. ...
  3. Get Started with Code. ...
  4. Test the API Endpoints Using Postman.
Aug 16, 2022

How do you manage API endpoints? ›

Navigate to Tools > API platform > API collections and select an API collection to see the endpoints.
...
Step 1: Create The Endpoint
  1. Select the API collection in which to create the new endpoint.
  2. Click Create new endpoint. ...
  3. Fill in the following fields: ...
  4. Click Add endpoint.

Where are API endpoints stored? ›

If you mean from a practical standing point of where to put them then I'd put them in a Vuex store, probably in its own module. You don't use env files for sensitive data, otherwise it's just a matter of what's practical for you. Possible duplicate of How to set API path in vue. config.

What is the difference between URL and endpoint? ›

Endpoint (or route) is the URL you request for. It contains a Uniform Resource Identifier (URI) indicating where and how to find the resource on the Internet. The most common type of URI is a Unique Resource Location (URL), serving as a complete web address.

Is an endpoint always a URL? ›

Yes, the endpoint is the URL where your service can be accessed by a client application. The same web service can have multiple endpoints, for example in order to make it available using different protocols.

Can an API have multiple endpoints? ›

Often, each REST API offers multiple endpoints from which you can get the data.

Is endpoint a URL that communicates with the API? ›

An API endpoint is a digital location exposed via the API from where the API receives requests and sends out responses. Each endpoint is a URL (Uniform Resource Locator) that provides the location of a resource on the API server. To understand the purpose and use of APIs, let's first understand how they work.

What are the 4 types of API? ›

APIs are broadly accepted and used in web applications. There are four different types of APIs commonly used in web services: public, partner, private and composite.

What are common endpoints? ›

Common examples of endpoints include: Mobile phones. Laptops. Desktops. Servers.

What are standard endpoints? ›

Standard endpoints enable a developer to define an endpoint that has default values or where one or more endpoint's properties does not change.

What is an example of an endpoint URL? ›

The URL prefix format is protocol://host_name:port_number , for example, http:// myHost :9045 . The actual endpoint URL that is contained in a published WSDL file consists of the prefix followed by the module's context-root and the web service url-pattern, for example, http:// myHost :9045/services/ myService .

What is API structure? ›

API architecture refers to the technical framework of developing a software interface that exposes backend data and application functionality for use in external applications. An API architecture consists of components for external interfacing, traffic control, runtime execution of business logic, and data access.

What does your endpoint URL consist of? ›

In simple terms, a web service endpoint is a web address (URL) at which customers of a specific service can gain access to it. By referencing that URL, customers can get to operations provided by that service. The endpoint is a connection point where HTML files or active server pages are exposed.

How do I validate a REST API endpoint? ›

Implementing Validations for RESTful Services
  1. Step 1: Open the UserResource. ...
  2. Step 2: Add @Valid annotation. ...
  3. UserResource.java.
  4. Step 3: Open the User. ...
  5. Step 4: Add @Size(min=5) annotation just above the name variable.
  6. Step 5: Add @Past annotation just above the dob variable.
  7. User.java.

How do I view API responses? ›

An alternative method of viewing the raw response is by clicking Output Options > More Options > JMESPath > View API Response. This method shows the raw response only, so can be faster or more convenient if you don't need to see the full field preview.

How do you validate responses in API testing? ›

7 Ways to Validate that Your APIs Are Working Correctly
  1. Invalid response codes.
  2. Invalid response headers.
  3. API time-outs.
  4. Slow API response with respect to response data bytes.
  5. Incorrect required data in JSON responses.
  6. Missing required text in response bodies.
  7. Slow response for customers in specific locations.
Feb 21, 2018

What can endpoint verification See? ›

Endpoint verification lets your administrator review information about your device and control your access to apps based on your location, device security status, or other attributes.

What is endpoint address? ›

The endpoint address is represented by the EndpointAddress class, which contains a Uniform Resource Identifier (URI) that represents the address of the service, an Identity, which represents the security identity of the service, and a collection of optional Headers.

Is endpoint same as IP? ›

IPv4: an IP endpoint is identical to its IP address. IPX: XXX - insert info here. TCP: a TCP endpoint is a combination of the IP address and the TCP port used, so different TCP ports on the same IP address are different TCP endpoints.

How do I create a custom endpoint? ›

How to Create a Custom Endpoint for the REST API (In 4 Steps)
  1. Create a Child Theme.
  2. Define Your Route.
  3. Implement the Callback Function for Your Custom REST Endpoint.
  4. Test Your Endpoint.
Jun 23, 2021

How do I authenticate a user in REST API? ›

Users of the REST API can authenticate by providing a user ID and password to the REST API login resource with the HTTP POST method. An LTPA token is generated that enables the user to authenticate future requests. This LTPA token has the prefix LtpaToken2 .

Why do we use endpoint? ›

Use an endpoint as an entry and exit point to access high-value assets and information on an organization's network. Access assets on the endpoint to exfiltrate or hold hostage, either for ransom or purely for disruption. Take control of the device and use it in a botnet to execute a DoS attack.

Is endpoint the same as hostname? ›

An endpoint consists of two components: The hostname or IP address.

How do I add an endpoint to my URL? ›

Procedure
  1. Open the administrative console.
  2. Click Applications > Enterprise Applications > application_instance > Provide JMS and EJB endpoint URL information.
  3. Locate the list of EJB modules.
  4. Select the application module.
  5. Type the web address fragment in the URL fragment field. ...
  6. Click OK.
  7. Click Save.

Do endpoints have IP addresses? ›

Endpoints on which ObserveIT agents are installed, and clients from which a remote session to an endpoint is opened, can be identified by their name or by IP address. The IP address is available in most locations the endpoint name is displayed, including lists and tool tips.

Do endpoints have a limit? ›

At an endpoint, a limit if the left- or right- limit exists; there is no two-sided limit.

How many endpoints can a single API service expose? ›

Each endpoint fulfills a single function. The API node supports 7 kinds of endpoints: The Prediction or Clustering endpoint to predict or cluster using models created with the DSS Visual Machine Learning component.

How many requests can an API handle? ›

In the API Console, there is a similar quota referred to as Requests per 100 seconds per user. By default, it is set to 100 requests per 100 seconds per user and can be adjusted to a maximum value of 1,000. But the number of requests to the API is restricted to a maximum of 10 requests per second per user.

How many API requests is too many? ›

These plans can vary depending on a particular API or a user's current service plan. But in most cases our servers will reject API requests from a particular application if the request rate exceeds 30 API requests per minute. In this case the client will get an HTTP error with status code 429 “too many requests”.

What are some API examples? ›

7 Examples of APIs in Use Today
  • Twitter Bots.
  • Log-In Using XYZ.
  • Weather Snippers.
  • Pay with PayPal.
  • Google Maps.
  • Travel Booking.
  • E-Commerce.

What is a real life example of API? ›

Weather Snippets

Weather data is a popular API example that we come across regularly. Rich weather snippets appear ubiquitous, appearing on all platforms such as Google Search, Apple's Weather app, and even your smart home device.

What are 3 most common APIs? ›

Today, there are three categories of API protocols or architectures: REST, RPC and SOAP.

What is an API easy explanation? ›

APIs are mechanisms that enable two software components to communicate with each other using a set of definitions and protocols. For example, the weather bureau's software system contains daily weather data. The weather app on your phone “talks” to this system via APIs and shows you daily weather updates on your phone.

How do I write an API URL? ›

Examples of valid server URLs: https://api.example.com. https://api.example.com:8443/v1/reports. http://localhost:3025/v1.

What are most common API used? ›

The most common type of API is the web API, which can be accessed over the internet using HTTP. It's typically used with JavaScript to add features during web development. Other APIs include local APIs, mobile APIs, and machine-to-machine (M2M) APIs, but we'll be focusing on web APIs for now.

Where are API mostly used? ›

From apps on our phones to complicated flight control systems, APIs bring otherwise disparate systems together to create single platforms. They allow applications or IOT devices to access data and create gateways to interact with external systems.

What is the commonly used API nowadays? ›

Today's most popular APIs are RESTful APIs. Compared to other types, this one is easier to use, more flexible and has an extensive toolchain and community. The RESTful API is so popular nowadays because of its request and response (input and output) format.

Videos

1. Microsoft Purview REST API Deep Dive
(Microsoft Purview)
2. Connections and Credentials Overview - Learn Integrations on the Now Platform
(ServiceNow Dev Program)
3. NAV TechDays 2017: Creating great API’s
(mibuso.com)
4. Asp.Net Core Web API - CRUD operations in REST API using Entity Framework Core and SQL Server
(Manoj Deshwal)
5. 21 Attachable Access Entity Profile Try saying that 3x fast!
(Bernard Pinto)
6. .NET 7 Web API & Entity Framework 🚀 Full Course (CRUD, Repository Pattern, DI, SQL Server & more)
(Patrick God)
Top Articles
Latest Posts
Article information

Author: Allyn Kozey

Last Updated: 01/04/2023

Views: 5671

Rating: 4.2 / 5 (43 voted)

Reviews: 90% of readers found this page helpful

Author information

Name: Allyn Kozey

Birthday: 1993-12-21

Address: Suite 454 40343 Larson Union, Port Melia, TX 16164

Phone: +2456904400762

Job: Investor Administrator

Hobby: Sketching, Puzzles, Pet, Mountaineering, Skydiving, Dowsing, Sports

Introduction: My name is Allyn Kozey, I am a outstanding, colorful, adventurous, encouraging, zealous, tender, helpful person who loves writing and wants to share my knowledge and understanding with you.