# Aiyoti Integration API Basic > Integrate asset creation, retrieval, updates, and tracking lifecycle management with the Aiyoti API. - [Aiyoti Integration API Basic](https://docs.aiyoti.com/index.md): Integrate asset creation, retrieval, updates, and tracking lifecycle management into your application. - [Authentication](https://docs.aiyoti.com/authentication.md): Log in, send the AccessKey header, and refresh credentials. - [Log in](https://docs.aiyoti.com/api-reference/users/log-in.md): We recommend creating a dedicated Aiyoti user for each integration, with only the account access and permissions it needs. Use that user's credentials instead of a person's everyday login so the integration's access can be managed independently. - [Refresh credentials](https://docs.aiyoti.com/api-reference/users/refresh-credentials.md): Send the `refresh` token returned by Login in the `RefreshKey` request body field to refresh credentials. - [Carriers, labels, and notes](https://docs.aiyoti.com/lookups-and-notes.md): Choose a carrier and an available label before creating an asset, then add a note to the asset. - [List carriers](https://docs.aiyoti.com/api-reference/carriers/list-carriers.md): Returns a direct array of carriers, each with `CarrierName` and `CarrierID`. Use a returned `CarrierID` when creating or editing an asset. - [List available labels](https://docs.aiyoti.com/api-reference/labels/list-available-labels.md): Finds labels that can be used for new assets. The response is an object with two separate properties: `Summary` (counts) and `Labels` (rows). - [Create assets](https://docs.aiyoti.com/api-reference/assets-shipments/create-assets.md): Send a JSON array, including when creating one asset. Each item requires `AssetName` and `AccountID`. All other fields are optional. - [List assets](https://docs.aiyoti.com/api-reference/assets-shipments/list-assets.md): Returns an array of asset summaries. Supply `AccountID` and a comma-separated `Statuses` filter to select the assets you need. - [Get an asset](https://docs.aiyoti.com/api-reference/assets-shipments/get-an-asset.md): Supply `AssetID` in the query string. There is no request body. - [Edit an asset](https://docs.aiyoti.com/api-reference/assets-shipments/edit-an-asset.md): `AssetID` is required. Other fields are optional. - [Add a note to an asset](https://docs.aiyoti.com/api-reference/assets-shipments/add-a-note-to-an-asset.md): Adds a note to an asset you have permission to access. Send `AssetID` and `Context` in a JSON body. - [Delivery and tracking](https://docs.aiyoti.com/delivery-and-tracking.md): Mark an asset delivered, end tracking, or end tracking and expire it. - [Delete an asset](https://docs.aiyoti.com/api-reference/assets-shipments/delete-an-asset.md): Deletion is allowed only when the asset is Created or Ready. Send a JSON body containing only `AssetID`. - [Shared links](https://docs.aiyoti.com/shared-links.md): Create a visitor link, retrieve shared tracking data, and revoke access. - [Create a shared link](https://docs.aiyoti.com/api-reference/assets-shipments/create-a-shared-link.md): Creates a new sharing record for an asset you have permission to access. The response returns `AssetShareID`, not a complete URL. Each successful call creates a new identifier; avoid automatically retrying an ambiguous creation result. See the shared links guide for the visitor URL format. Anyone wi… - [Get a shared asset](https://docs.aiyoti.com/api-reference/assets-shipments/get-a-shared-asset.md): Retrieves asset data using `AssetShareID` in the query string. No AccessKey is required. The response includes current and destination addresses, tracking information, asset status, exception labels, and location history. It returns an empty object when no matching sharing record exists. Unlike Get… - [List shared links](https://docs.aiyoti.com/api-reference/assets-shipments/list-shared-links.md): Returns the active sharing records available to your integration. An empty result is an empty array. ExpirationDate describes the asset's expiration, not a link expiration deadline. - [Delete a shared link](https://docs.aiyoti.com/api-reference/assets-shipments/delete-a-shared-link.md): Deletes a sharing record you have permission to manage. Send AssetShareID in a JSON body. The asset itself is not deleted. Subsequent GetSharing requests for this identifier return an empty object. Do not rely on repeated deletion returning the same success response. ## OpenAPI Specs - [openapi](/openapi/openapi.json) This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.