> For the complete documentation index, see [llms.txt](https://docs.hos.accessacloud.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.hos.accessacloud.com/atreemo-api/api-reference/atreemo-api-reference/app.md).

# App

Api Methods for App

## GetCtcIDByPushNotificationToken

> Get the list of push notification tokens linked to a contact

```json
{"openapi":"3.0.3","info":{"title":"Atreemo API","version":"0.1.0"},"tags":[{"name":"App","description":"Api Methods for App"}],"servers":[{"url":"https://apim-hospitality-dev-uksouth.azure-api.net/atreemo-api","description":"Local DEV APIM import draft only; not a deployed endpoint announcement."}],"security":[{"AtreemoBearer":[]}],"components":{"securitySchemes":{"AtreemoBearer":{"type":"http","scheme":"bearer","description":"Atreemo access token obtained by the caller from the Atreemo instance `POST /token` endpoint (OAuth2 password grant) and sent as `Authorization: Bearer <token>`. See the Authorisation guide."}},"schemas":{"CtcIDOutPut":{"type":"object","nullable":true,"properties":{"Error":{"type":"string","nullable":true},"Response":{"type":"boolean"},"CtcID":{"type":"integer","format":"int32"}},"description":"Source-backed JSON members, including inheritance and JSON naming/ignore attributes. No property is required solely because its CLR value type is non-nullable. Runtime and deployment alignment are unverified."}}},"paths":{"/api/App/GetCtcIDByPushNotificationToken":{"get":{"operationId":"AppGetCtcIdByPushNotificationToken","summary":"GetCtcIDByPushNotificationToken","tags":["App"],"description":"Get the list of push notification tokens linked to a contact","parameters":[{"name":"Token","in":"query","schema":{"type":"string","nullable":true},"description":"Native query parameter. CLR string Token in the pinned controller signature.","required":true}],"responses":{"200":{"description":"OK (sample status in the public collection).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CtcIDOutPut"}}}}}}}}}
```

## GetPushNotificationTokensByContact

> Get the list of push notification tokens linked to a contact

```json
{"openapi":"3.0.3","info":{"title":"Atreemo API","version":"0.1.0"},"tags":[{"name":"App","description":"Api Methods for App"}],"servers":[{"url":"https://apim-hospitality-dev-uksouth.azure-api.net/atreemo-api","description":"Local DEV APIM import draft only; not a deployed endpoint announcement."}],"security":[{"AtreemoBearer":[]}],"components":{"securitySchemes":{"AtreemoBearer":{"type":"http","scheme":"bearer","description":"Atreemo access token obtained by the caller from the Atreemo instance `POST /token` endpoint (OAuth2 password grant) and sent as `Authorization: Bearer <token>`. See the Authorisation guide."}},"schemas":{"TokensOutPut":{"type":"object","nullable":true,"properties":{"Error":{"type":"string","nullable":true},"Response":{"type":"boolean"},"Tokens":{"type":"array","items":{"type":"string","nullable":true},"nullable":true}},"description":"Source-backed JSON members, including inheritance and JSON naming/ignore attributes. No property is required solely because its CLR value type is non-nullable. Runtime and deployment alignment are unverified."}}},"paths":{"/api/App/GetPushNotificationTokensByContact":{"get":{"operationId":"AppGetPushNotificationTokensByContact","summary":"GetPushNotificationTokensByContact","tags":["App"],"description":"Get the list of push notification tokens linked to a contact","parameters":[{"name":"CtcID","in":"query","schema":{"type":"integer","format":"int32"},"description":"Native query parameter. CLR int CtcID in the pinned controller signature.","required":true}],"responses":{"200":{"description":"OK (sample status in the public collection).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TokensOutPut"}}}}}}}}}
```

## LinkTo

> Link token to customer that will be used for mobile App notifications

```json
{"openapi":"3.0.3","info":{"title":"Atreemo API","version":"0.1.0"},"tags":[{"name":"App","description":"Api Methods for App"}],"servers":[{"url":"https://apim-hospitality-dev-uksouth.azure-api.net/atreemo-api","description":"Local DEV APIM import draft only; not a deployed endpoint announcement."}],"security":[{"AtreemoBearer":[]}],"components":{"securitySchemes":{"AtreemoBearer":{"type":"http","scheme":"bearer","description":"Atreemo access token obtained by the caller from the Atreemo instance `POST /token` endpoint (OAuth2 password grant) and sent as `Authorization: Bearer <token>`. See the Authorisation guide."}},"schemas":{"LinkToInput":{"type":"object","properties":{"AppID":{"type":"integer","format":"int32","description":"Clients having more than one customer application should also use an AppID which will be supplied by Acteol"},"CustomerID":{"type":"integer","format":"int32","description":"The ID of the customer (CtcID)"},"ExpiryDate":{"type":"string","format":"date-time","nullable":true,"description":"the expiry date of the token"},"OriginID":{"type":"string","description":"Origin ID"},"OS":{"type":"string","description":"Device \"IOS\" or \"Android\""},"SourceID":{"type":"string","description":"Source ID"},"Token":{"type":"string","description":"The notification token"}}},"ApiOutput":{"type":"object","properties":{"Error":{"type":"string","description":"Error description"},"Response":{"type":"boolean","description":"The status call"}}}}},"paths":{"/api/App/LinkTo":{"post":{"operationId":"AppLinkTo","summary":"LinkTo","tags":["App"],"description":"Link token to customer that will be used for mobile App notifications","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LinkToInput"}}}},"responses":{"200":{"description":"OK (sample status in the public collection).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiOutput"}}}}}}}}}
```

## RemovePushNotificationToken

> Remove push notification token

```json
{"openapi":"3.0.3","info":{"title":"Atreemo API","version":"0.1.0"},"tags":[{"name":"App","description":"Api Methods for App"}],"servers":[{"url":"https://apim-hospitality-dev-uksouth.azure-api.net/atreemo-api","description":"Local DEV APIM import draft only; not a deployed endpoint announcement."}],"security":[{"AtreemoBearer":[]}],"components":{"securitySchemes":{"AtreemoBearer":{"type":"http","scheme":"bearer","description":"Atreemo access token obtained by the caller from the Atreemo instance `POST /token` endpoint (OAuth2 password grant) and sent as `Authorization: Bearer <token>`. See the Authorisation guide."}}},"paths":{"/api/App/RemovePushNotificationToken":{"post":{"operationId":"AppRemovePushNotificationToken","summary":"RemovePushNotificationToken","tags":["App"],"description":"Remove push notification token","parameters":[{"name":"Token","in":"query","schema":{"type":"string","nullable":true},"description":"Native query parameter. CLR string Token in the pinned controller signature.","required":true}],"responses":{"200":{"description":"No response body: the pinned action returns Ok() without content. Runtime-unverified. This truthful bodyless contract requires an owner decision against the repository blanket response-model rule."}}}}}}
```

## WebLinkTo

> Link token to customer that will be used for web notifications

```json
{"openapi":"3.0.3","info":{"title":"Atreemo API","version":"0.1.0"},"tags":[{"name":"App","description":"Api Methods for App"}],"servers":[{"url":"https://apim-hospitality-dev-uksouth.azure-api.net/atreemo-api","description":"Local DEV APIM import draft only; not a deployed endpoint announcement."}],"security":[{"AtreemoBearer":[]}],"components":{"securitySchemes":{"AtreemoBearer":{"type":"http","scheme":"bearer","description":"Atreemo access token obtained by the caller from the Atreemo instance `POST /token` endpoint (OAuth2 password grant) and sent as `Authorization: Bearer <token>`. See the Authorisation guide."}},"schemas":{"LinkToInput":{"type":"object","properties":{"AppID":{"type":"integer","format":"int32","description":"Clients having more than one customer application should also use an AppID which will be supplied by Acteol"},"CustomerID":{"type":"integer","format":"int32","description":"The ID of the customer (CtcID)"},"ExpiryDate":{"type":"string","format":"date-time","nullable":true,"description":"the expiry date of the token"},"OriginID":{"type":"string","description":"Origin ID"},"OS":{"type":"string","description":"Device \"IOS\" or \"Android\""},"SourceID":{"type":"string","description":"Source ID"},"Token":{"type":"string","description":"The notification token"}}},"ApiOutput":{"type":"object","properties":{"Error":{"type":"string","description":"Error description"},"Response":{"type":"boolean","description":"The status call"}}}}},"paths":{"/api/App/WebLinkTo":{"post":{"operationId":"AppWebLinkTo","summary":"WebLinkTo","tags":["App"],"description":"Link token to customer that will be used for web notifications","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LinkToInput"}}}},"responses":{"200":{"description":"Source return path at pinned commit; runtime and deployed-version alignment unverified.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiOutput"}}}}}}}}}
```


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.hos.accessacloud.com/atreemo-api/api-reference/atreemo-api-reference/app.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
