Library / SDK
line/line-sdk-ios-swift avatar
line/line-sdk-ios-swift

LINE SDK for iOS Swift: putting LINE Login into an app

Provides a modern way of implementing LINE APIs.

877 stars99 forksSwiftApache-2.0

At a glance

What is it?
The line-sdk-ios-swift repository is the official Swift SDK for LINE APIs, and the feature that matters is LINE Login with OpenID Connect support, so a user already signed in to LINE on their phone can sign in to your app without typing a password. It needs iOS 15 or later and Xcode 14.1 or later, and it installs through CocoaPods, Swift Package Manager or Carthage.
Who is it for?
line-sdk-ios-swift suits an iOS app that wants LINE as a sign-in option without asking the user for another account and password, and that is comfortable working in a platform where the platform's own app holds the credentials. It does not suit a service that needs more of the LINE platform than login and profile, because this SDK is scoped to those.
Can I use it commercially?
Yes. Apache-2.0 is a permissive licence: you can use, modify and sell software built on it, as long as you keep its copyright and licence notices.
Is it still maintained?
Yes. The repository last received commits 91 days ago.
What is it written in?
Mainly Swift, according to GitHub's language statistics.

Answers come from the project's GitHub data, last synced on October 22, 2026, and from our analysis. They are not legal advice.

Editorial analysis

Two features, and one of them does the work

The SDK is described as providing a modern way of implementing LINE APIs, and the feature list has two entries. The first is user authentication, which lets users log in to your service with their LINE accounts, and the detail that makes it worthwhile is that your users automatically log in to your app without entering their LINE credentials if they are already logged in to LINE on their iOS devices. The readme puts it plainly, that this offers a great way for users to get started with your app without having to go through a registration process. The second feature is using user data with OpenID support, so once the user has authorised you can get the user's LINE profile and use the information registered in LINE without building your own user system. The primary language is Swift, the licence is Apache-2.0, and the last push was on 2026-07-24 with the most recent release being 5.17.0 from the day before.

OpenID Connect 1.0, and what an ID token gives you

The SDK supports the OpenID Connect 1.0 specification, and the concrete artefact is an ID token that contains the user's LINE profile, which you get when you retrieve the access token. That is a different shape from the older OAuth style integration where the token endpoint returned a profile in the response body, and it is worth understanding before you write the server side, because the ID token is a signed assertion rather than a plain payload. The three steps the documentation gives for using the SDK are deliberately high level, and they describe where your code lives. You create a channel. You integrate LINE Login into your iOS app using the SDK. And you make API calls from your app using the SDK, or from the server side through the Social API. That last clause is the one to note, because it tells you the SDK is not only a client library: the app obtains the token and the server can then use it.

The toolchain floor is iOS 15 and Xcode 14.1

The prerequisites are short and specific. The deployment target is iOS 15.0 or later, and Xcode 14.1 or later. That is a meaningful floor for a library that is otherwise widely compatible, and the practical consequence is that an app still supporting iOS 13 or 14 cannot adopt this SDK without raising its own minimum. The rest of the requirements are environmental rather than technical. The SDK is distributed in the three usual ways for a Swift library, and the repository carries a podspec, a Package.swift, and a second package manifest named for Swift 5.3, so it works with the older Swift Package Manager layout as well as the current one. There is a Gemfile and a Gemfile.lock as well, which is a sign of the documentation tooling rather than the library itself, since the docs are built with jazzy and the jazzy configuration files sit in the repository root.

Three ways to install the SDK

The installation options are the ones you would expect for an iOS library, and each has a badge in the readme confirming it. CocoaPods, where the pod is LineSDKSwift. Swift Package Manager, which is the path most new projects take and the one the Package.swift file supports. And Carthage, which is still around for projects that are not on the newer dependency managers. The repository root confirms the packaging layout, with LineSDKSwift.podspec for CocoaPods, Package.swift and [email protected] for the two Swift Package Manager manifest formats, and the LineSDK.xcworkspace directory for the workspace that ties the sample together. There is also a fastlane directory and a script directory, which are for the release automation and the repository's own scripts rather than for consumers of the library.

The starter app, and the git clone line has its own quirk

There is a starter app for trying the SDK without wiring anything up yourself, and the steps are to clone the repository, open the LineSDK.xcworkspace file in Xcode, and build and run the LineSDKSample scheme, at which point the starter app should launch. The clone command in the readme is written inline as a fenced git block with the command and the closing fence on the same line, which is a formatting artefact rather than anything to copy verbatim, but the URL it points at is the one to use, and the repository is cloned with git clone and that URL.

Note that the sample is not one directory. The repository has a LineSDKSample directory and a LineSDKSample-SwiftUI directory, so the workspace covers both a UIKit style sample and a SwiftUI one, and you pick the scheme that matches what you are trying. The LineSDK directory is the library itself, with the separate workspace and podspec sitting above it.

Security issues do not go in the public tracker

The contributing section contains one instruction that is worth reading before you file anything. If you believe you have discovered a vulnerability, or you have an issue related to security, the instruction is to send a mail to the address given rather than open a public issue. That is the usual arrangement for a vendor SDK, where a public issue would tell the world about the problem before the vendor can ship a fix. The repository also has a CONTRIBUTING file, a CHANGELOG and a CODE_OF_CONDUCT is not in the tree, but the reference to a support address is there, and there is a REFERENCETOP file at the root which is the top level documentation page for the generated API reference. The readme points at the LINE Developers site for the full LINE Login guide for iOS Swift, and the homepage listed for the project is that same guide.

Editorial conclusion

line-sdk-ios-swift suits an iOS app that wants LINE as a sign-in option without asking the user for another account and password, and that is comfortable working in a platform where the platform's own app holds the credentials. It does not suit a service that needs more of the LINE platform than login and profile, because this SDK is scoped to those. Before you integrate, create a channel in the LINE developer console, and note the two constraints the documentation gives you, iOS 15 as the deployment target and Xcode 14.1 as the minimum toolchain, plus the separate rule that security issues are not filed as public issues.

Frequently asked questions

What does the LINE SDK for iOS Swift do?

It provides LINE Login and OpenID Connect 1.0 support. Users who are already logged in to LINE on their iOS device are logged in to your app without entering their LINE credentials, and after authorisation you can retrieve the access token and the ID token that contains the user's LINE profile.

What are the requirements for the LINE SDK for iOS Swift?

iOS 15.0 or later as the deployment target, and Xcode 14.1 or later. The SDK is distributed through CocoaPods, Swift Package Manager and Carthage, with a podspec, a Package.swift and a second manifest for Swift 5.3 in the repository root.

How do I try the LINE SDK before integrating it?

Clone the repository, open the LineSDK.xcworkspace file in Xcode, and build and run the LineSDKSample scheme. The repository contains both a LineSDKSample directory and a LineSDKSample-SwiftUI directory, so you can pick the sample that matches the app you are writing.

How do I report a security problem in the LINE SDK?

Do not open a public issue. The README asks you to send a mail to the address it gives for anything that looks like a vulnerability or a security related issue, so the vendor can fix it before it is disclosed.

Official sources

  1. License: Apache-2.0
  2. line/line-sdk-ios-swift on GitHub
  3. Project website
  4. README
  5. Releases
Add this badge to your README

If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.

Add this badge to your README

markdown
[![Hysen Labs](https://hysenlabs.com/badge/line-line-sdk-ios-swift.svg)](https://hysenlabs.com/projects/line-line-sdk-ios-swift)

Was this useful?