# Blink Documentation > Blink's app API allows you to create integrations with Blink. ## Guides: Creating Apps - [Getting Started](https://developer.joinblink.com/docs/creating-an-integration.md) - [Configuring Legacy Apps](https://developer.joinblink.com/docs/configuring-integrations.md) - [Configuring App Identities](https://developer.joinblink.com/docs/configuring-app-identities.md) - [Webhook usage](https://developer.joinblink.com/docs/webhook-usage.md) - [API changes](https://developer.joinblink.com/docs/api-changes.md) ## Guides: Feed - [Getting started with Blink Feed API](https://developer.joinblink.com/docs/getting-started-with-blink-feed-api.md) - [CardKit](https://developer.joinblink.com/docs/cardkit.md) - [Client Actions](https://developer.joinblink.com/docs/client-actions.md) - [Sending Feed Events with Attachments or Images](https://developer.joinblink.com/docs/sending-feed-events-with-attachments-or-images.md) - [Finding Team and User Ids](https://developer.joinblink.com/docs/finding-team-and-user-ids.md) ## Guides: API Errors - [Rate Limiting](https://developer.joinblink.com/docs/rate-limiting.md) - [429 - Too Many Requests](https://developer.joinblink.com/docs/429-too-many-requests.md) - [422 - Unprocessable Entity](https://developer.joinblink.com/docs/422-unprocessable-entity.md) - [403 - Forbidden](https://developer.joinblink.com/docs/403-forbidden.md) - [401 - Unauthorized](https://developer.joinblink.com/docs/401-unauthorized.md) - [500 - Server Error](https://developer.joinblink.com/docs/500-server-error.md) ## Guides: Support - [Contact Us](https://developer.joinblink.com/docs/contact-us.md) ## API Endpoints: Blink API v2 - [Quick Start](https://developer.joinblink.com/reference/quick-start.md): This page will help you get started with the Blink API. ## API Endpoints: Feed - [Feed Events](https://developer.joinblink.com/reference/feed-events.md) - [Send Feed Event](https://developer.joinblink.com/reference/send-feed-event.md): Allows your integration to send feed events to users in your organisation. - [Update Feed Event](https://developer.joinblink.com/reference/update-feed-event.md): Edit a feed event that has been sent. - [Archive Feed Event](https://developer.joinblink.com/reference/archive-feed-event.md): Dismiss a feed event for all recipients. - [Archive Feed Event For User](https://developer.joinblink.com/reference/archive-feed-event-for-user.md): Dismiss a feed event for a single user who received the event. - [Get Feed Event Id By External Id](https://developer.joinblink.com/reference/get-feed-event-id-by-external-id.md): Get the event_id for a feed event by the external_id it was sent with. - [Get Feed Event Categories](https://developer.joinblink.com/reference/get-feed-event-categories.md) ## API Endpoints: Users - [Get Users](https://developer.joinblink.com/reference/get-users.md): Fetch any user in your Organisation. ## API Endpoints: Forms - [Get Forms](https://developer.joinblink.com/reference/get-forms.md) - [Get Form Submissions](https://developer.joinblink.com/reference/form-submissions.md) ## API Endpoints: Linked Account Management - [What is a Linked Account?](https://developer.joinblink.com/reference/what-is-a-linked-account.md) - [Add User Linked Account](https://developer.joinblink.com/reference/add-user-linked-account.md): Create a linked account for a user - [Update User Linked Account](https://developer.joinblink.com/reference/update-user-linked-account.md) - [Get User Linked Accounts](https://developer.joinblink.com/reference/get-user-linked-accounts.md) - [Get Linked Account](https://developer.joinblink.com/reference/get-linked-account.md) - [Get Linked Accounts](https://developer.joinblink.com/reference/get-linked-accounts.md): Returns all linked accounts that have been added for the integration. - [Delete User Linked Account](https://developer.joinblink.com/reference/delete-user-linked-account.md) ## API Endpoints: SCIM API - ServiceProviderConfig - [Get Service Provider config](https://developer.joinblink.com/reference/getserviceproviderconfig.md) - [User](https://developer.joinblink.com/reference/user.md) - [Search or list users](https://developer.joinblink.com/reference/searchviaget.md) - [Create user](https://developer.joinblink.com/reference/createuser.md) - [Get user by id](https://developer.joinblink.com/reference/getuserbyid.md) - [Fully update/replace a user](https://developer.joinblink.com/reference/replaceuser.md) - [Disable a user](https://developer.joinblink.com/reference/deleteuser.md) - [Partially update/patch a user](https://developer.joinblink.com/reference/patchuser.md) - Group - [Search or list groups](https://developer.joinblink.com/reference/searchgroupviaget.md) - [Create Group](https://developer.joinblink.com/reference/creategroup.md) - [Get group by id](https://developer.joinblink.com/reference/getgroupbyid.md) - [Fully update/replace a group](https://developer.joinblink.com/reference/replacegroup.md) - [Partially update/patch a group](https://developer.joinblink.com/reference/groupuser.md) - [Disable a group](https://developer.joinblink.com/reference/deletegroup.md) ## API Endpoints: Blink Chat API - Chats - [Create a new chat](https://developer.joinblink.com/reference/createchat.md): Creates a new chat and returns it in full, exactly as a subsequent GET of the chat would. `members` states who is in the chat from creation: each named principal is joined outright, on an explicit… - [Look up a single chat](https://developer.joinblink.com/reference/getchat.md): Looks up a single chat by its identifier and returns it in full. - [Update a chat's metadata](https://developer.joinblink.com/reference/updatechat.md): Updates the mutable metadata (title, description, icon) of an existing chat, and returns the updated chat in full. Description and icon follow three-state PATCH semantics: omit a field to leave it… - [Delete a chat](https://developer.joinblink.com/reference/deletechat.md): Deletes a chat along with its members, grants and messages. After deletion the chat can no longer be looked up and will not be returned from any inbox query. For untitled chats the membership-based… - [List the caller's inbox](https://developer.joinblink.com/reference/listchatinbox.md): Returns a page of inbox entries — each pairing a chat with a preview of its most recent message — most-recent-activity first. There is no parameter for whose inbox to read: it is always the caller's.… - Access - [List the explicit grants made on a chat](https://developer.joinblink.com/reference/listgrants.md): Returns a page of the grants an administrator has made, and therefore the list of things they can withdraw. A grant says only that the principal may be in the chat: to see who is actually in it, read… - [Grant a principal access to a chat](https://developer.joinblink.com/reference/grantaccess.md): Grants a user or app access to the chat and returns the grant with a 201. This is how somebody is added to a chat: a grant also joins them, since being added to a chat means both. Granting access a… - [Revoke a user's access to a chat](https://developer.joinblink.com/reference/revokeuseraccess.md): Withdraws a user's grant, so they lose access to the chat and cease to be a member of it. A user with no grant on the chat answers 404. To remove somebody from the chat while leaving them able to… - [Revoke an app's access to a chat](https://developer.joinblink.com/reference/revokeappaccess.md): Withdraws an app's grant, on the same terms as revoking a user's: the app loses access to the chat and ceases to be a member of it. - Members - [List the members of a chat](https://developer.joinblink.com/reference/listmembers.md): Returns a page of the principals who have joined the chat, ordered by display name. Somebody with access who has not joined does not appear — they are not a member — and nor does somebody who has… - [Get the caller's own membership of a chat](https://developer.joinblink.com/reference/getmymembership.md): Returns the calling principal's own row: why they have access, whether they have joined, their role, and — for a user — the favourite flag and inbox state that belong to them alone. Caller-scoped, so… - [Join a chat the caller has access to](https://developer.joinblink.com/reference/joinchat.md): Joins the calling principal to the chat, so they are listed to the other members and it reaches their inbox. Requires access and never grants it: to bring somebody else in, grant them access instead.… - [Leave a chat, keeping access](https://developer.joinblink.com/reference/leavechat.md): Removes the calling principal from the chat while leaving their access untouched, so a caller with access may still read it and may rejoin at any time. Leaving is visible: the other members see the… - [Update a user's role in a chat](https://developer.joinblink.com/reference/updateusermemberrole.md): Updates whether a user is an administrator of the chat. `role` is required and the user must already be a member. Role attaches to membership rather than to the grant that justifies it, so it… - [Remove a user from a chat](https://developer.joinblink.com/reference/removeusermember.md): Removes a user from the chat on an administrator's instruction, leaving their grant untouched — so they keep access and may rejoin with `:join`. Removing somebody and keeping them out means revoking… - [Update an app's role in a chat](https://developer.joinblink.com/reference/updateappmemberrole.md): Updates whether an app is an administrator of the chat. An app holds a role exactly as a user does, so a bot administers a chat on the same terms, and role is the only field an app has to update: it… - [Remove an app from a chat](https://developer.joinblink.com/reference/removeappmember.md): Removes an app from the chat on the same terms as removing a user: its grant is untouched, so it keeps access and may rejoin. Returns the removed app's row. - Messages - [List messages from a chat](https://developer.joinblink.com/reference/listmessages.md): Returns a page of messages from the given chat, ordered from newest to oldest. Pages backwards through history: pass the returned page's `next_cursor` back via the `cursor` query parameter to fetch… - [Send a new message into a chat](https://developer.joinblink.com/reference/sendmessage.md): Sends a new message into the given chat, and returns the created message in full, exactly as a subsequent GET of the message would. The sender is required and must be the authenticated app making the… - [Look up a single message](https://developer.joinblink.com/reference/getmessage.md): Looks up a single message by its identifier and returns it in full. - [Edit the contents of a message](https://developer.joinblink.com/reference/updatemessage.md): Edits the contents of an existing message, and returns the edited message in full, exactly as a subsequent GET of the message would, carrying the server-set `edited_at`. Each field follows PATCH… - [Delete a message](https://developer.joinblink.com/reference/deletemessage.md): Deletes an existing message by clearing it: the message is left in place, but its attachments are discarded and its body is replaced with a `deleted` marker, so clients can indicate that a message… - [Get a durable link to a message](https://developer.joinblink.com/reference/getmessagepermalink.md): Returns a durable link to a message, suitable for referencing or sharing the message outside the normal chat flow. Works for messages sent by both users and apps.