We have code samples in Curl and Python coming soon! You can view code examples in the dark area to the right, and you can switch the programming language of the examples with the tabs in the top right. Multi-country targeting is available through the API starting April 1st! This will enable advertisers to set up Ad Squads targeting any combination of countries across the world.
Multi-country targeting will help extend reach and optimize ads globally to the best audience. While setting up multi-country Ad Sqauds has its advantages, we do not guarentee evenly distributed delivery. If you want to test audiences between countries, then we advise that you set up separate Ad Squads.
Each country needs to be placed in a geos entry, a targeting spec that uses multi-country targeting needs to also include a demographics entry that incorporates languages with at least one entry. We are introducing breaking changes to our API. The deprecation date will be 90 days after the announcement date, with final end of life for legacy APIs and fields two weeks after the sunset date.
The highest level object is an Organization. Each Organization is tied to a specific BrandAdvertiseror Partner. An Organization has an over-arching line of credit established with Snap Inc.
Ad Accounts are the primary vehicle for organizing all relevant advertising objects. An Ad Account owns:. For calls that fetch many entities we recommend that you use pagination. The limit parameter specifies how many entities should be returned per page. Paginated calls are ordered by the attribute CreatedAt, non-paginated calls are unsorted. The Create endpoints support bulk creation, meaning you can create several objects at the same time as long as they share the same parent.
The Update endpoints support bulk update, meaning you can update several objects at the same time as long as they share the same parent. The access token should be included in all API requests to the server in the Authorization header like so:.
They will be presented with a login screen and confirmation prompt to grant access to their account. After the user approves or cancels the authorization, they will be redirected to your Redirect URI. If the user approved the request to access their account, there will be 2 query parameters passed along to your Redirect URI. Once you have the Code you can exchange it for a short-lived Access Token and long-lived Refresh Token.
Access Tokens are short-lived. When you receive a token expired erroryou should use your Refresh Token to generate a new Access Token and retry the request. Many standard OAuth2 libraries can handle this expiration-retry pattern for you. When a request is attempted with an expired token, the response will be a Not Authorized with additional headers.
The Partner Management team creates all Organizations on behalf of partners and advertisers. Please use this form to request an organization. This endpoint retrieves all organizations the logged in user has access to and the ad accounts beneath each of those organizations. Funding sources using credit cards can be set up using Business Manager.
The Partner Manager team creates all other types of Funding Sources on behalf of partners and advertisers. Please reach out to your partner manager for assistance. Ad Accounts can be created via the Snapchat Business Manager.
A campaign has a business objective and organizes Ad Squads. You can define a goal and view stats for this campaign to see whether your goal has been reached. The reports and stats combines all the ad squads within this campaign.
Reducing the limit is allowed as long as the new limit is 1.Snapchat is launching its first Mac and Windows software that takes over your webcam and brings its augmented reality effects to other video streaming and calling services. And through its easily equipped new Twitch extensionstreamers can trigger different masks with hotkeys.
Users can use Lens Explorer to preview effects and see who made them, Star their favorites for easy access and access a tab of your recently used Lenses. Despite Snap Inc. Instead the goal is to drive more attention to its community AR Lens platform so more developers and creators will make their own effects.
The desktop camera could win Lens creators more attention, and Snapchat connects to the most talented ones to brands for sponsorship deals. Snapchat first came to the desktop in January with its first embeddable content, designed for newsrooms that wanted to show off citizen journalism on their sites. But now Snapchat content creation is escaping the mobile medium. Strangely, Snap Camera has no interface of its own.
Really, it should have a Photo Booth-style app so you can record photos and videos of yourself with your webcam and share them wherever. With that number falling from million in Q1 to million in Q2 to million in Q3 as it announced yesterday, Snap really does need more ways to keep people from straying to Instagram Stories. The Snap camera equips Twitch broadcasters with extra features. Viewers will see the QR Snapcode for the Lens on the screen, which they can scan with Snapchat to try the mask on themselves for virality.
And with hotkeys, streamers can trigger different lenses, like an angry one for when they lose a game or victory lenses for if they manage to beat all the other Fortnite addicts. With the user count shrinking, Snap needs to show its business is growing to salvage its share price and pull in the outside investment or acquisition it will likely need to make it to profitability. A desktop presence could not only make Snapchat more ubiquitous, but get it in front of older users and advertisers who might be a little scared of its mobile app.Download sample code to get started with Creative Kit and Bitmoji Kit here.
Once you complete integration, manage testing, usage analytics, and more in the developer portal. We regularly update our documentation to give you everything you need for creative, easy integrations. Docs Getting Started. Overview Developer Portal. Creative Kit Tutorials. Login Kit Tutorials. Bitmoji Kit Tutorials. Creative Kit Enables easy, rich, visual sharing and linking between your app and Snapchat. Login Kit Makes it easier and faster for Snapchatters to log in to your app. Story Kit Enables you to display publicly shared Snapchat Stories in your app or site.
I Accept More Information.Inner Classes: Camera. DepthBufferModeCamera. DevicePropertyCamera. Renders the scene to a Render Target texture.
For more information, see the Camera and Layers guide. Converts a world space position to a raw screen space position.
The screen space position will be returned as a vec3 with xy representing normalized screen space, and z representing a raw depth value not directly convertible to world units. This returned value will mostly be useful for passing into unproject. Converts a screen space position to a world space position, given an absolute depth. The screen space position should be provided as a vec2 in the range , 0,0 being the top-left of the screen and 1,1 being the bottom-right. Converts a raw screen space position to a world space position.
Converts the world space position worldSpacePoint to a screen space position. Screen positions are represented in the range , 0,0 being the top-left of the screen and 1,1 being the bottom-right. Determines the way depth is handled on this Camera. Changing this can help sort objects at different distance ranges.
Controls which Camera settings will be overridden by physical device properties. If enabled, this Camera will clear the color on its renderTarget before drawing to it.
If enabled, this Camera will clear the depth buffer on its renderTarget before drawing to it.Android VS iPhone
If this texture is null, clearColor will be used instead. A texture controlling which parts of the output texture the camera will draw to.
For example, a completely black section will cause the camera to not draw there at all. A completely white or red section will cause the camera to draw normally. Colors in between, like gray, will be semitransparent.
The sorting order the Camera renders in. Every frame, Cameras render in ascending order determined by their renderOrder properties. Returns true if this object is the same as other.First time here? Visit the Snap Kit developer portal to add your application, exchange keys, and get set up with the proper API credentials. Initiates sharing into Snapchat. This method makes a user of the global UIPasteboard, and calling the method without synchronization might cause UIPasteboard data to be overwritten, while being read from Snapchat.
Either synchronize the method call yourself, or disable user interaction until the share is over. Callback executed when startSendingContent:completionHandler: method completes share. It provides a way to model a photo Snap for sharing to Snapchat.
It provides a way to model a video Snap for sharing to Snapchat.
It provides a way to model a share into Snapchat without a base image or video content. An attachment URL, a caption, or a sticker can be added. This class contains all the methods associated for authentication, session control, and information retrieval.
Links into the Snapchat app for authentication. This handles deeplink requests from Snapchat. Method to use to determine if current session has access to user data referenced by scope. Callback executed when refreshAccessTokenWithCompletion completes. This is a protocol for observing all changes that occur for a user's login status. Notifications will always occur on the main queue.
Optional Called whenever a user either explicitly unlinks their Snapchat account, or access to the user's account is revoked. This method is called when the user selects a Bitmoji from the BitmojiFragment. This method is optional. It is called when the user enters or exits the search bar inside the sticker picker.
Extends UIViewController. This delegate will be notified whenever a user selects a Bitmoji and whenever a user either enters or exits the search bar in the sticker picker view.You may have noticed improved photo quality in the Android Snapchat app in recent months.
Believe it or not, this is because Snapchat only just recently started using a decade-old camera API that predates every Android phone in existence. The basic premise of APIs is simple — they're tools that the operating system provides to let apps make use of hardware and other system functions.
With that in mind, let me explain why Snapchat is taking better photos recently, but is still far from being a high quality camera app for Android. Android actually has a robust camera API that apps can use to control your phone's cameras at a very deep level. If leveraged properly, Camera2 API will allow an app to control manual exposure, ISO, shutter speed, focus, and even capture RAW images using your phone's camera hardware, among other features.
A Snap Inc. This API was last updated in early with Android API level 2, which didn't even have a dessert-themed codename or version number because it was a prerelease version of Android.
In other words, the camera API Snapchat is currently using on most devices was finalized before commercially-available Android phones even existed. It's since been deprecated read: abandoned as of Junebecause Google would prefer that apps use the newer, more robust Camera2 API. Before the recent updates that brought in Camera1 API support, Snapchat was effectively taking a screen grab from your camera's viewfinder as a workaround so that it didn't have to use any Android camera APIs at all.
This was an effective method for supporting as many Android devices as possible, but the image quality it produced was infamously bad. To be clear, updating their app to use Camera1 API instead of this old workaround was a huge step in the right direction.
It's largely why so many users have recently reported a bump in image quality. An interesting aspect here is that, in using Camera1 API, Snapchat isn't getting many benefits for the front-facing camera — the camera many Snapchatters use most. This is because Camera1 API was written before most phones had front camerasso it doesn't provide tap-to-focus or other selfie cam enhancements. Some lower-end phones running Lollipop or higher don't have full support for the newer camera API.
In these cases, doing simple things like requesting to turn on the camera flash can cause the app to crash. However, Snapchat could get around these issues by coding their app to access Camera2's varying levels: Legacy, Limited, Full, or Level 3. We installed an older version We took a picture with v Ignore the slight differences in exposure level though that's a byproduct of not using the camera to its full potential and focus more on the details and clarity.
The newer version provides a greater HDR-like balance as well. If you look closely, you'll see that Snapchat still has a ways to go in order to close the gap in picture quality. To put it another way, there's a clear difference between Snapchat's old method of grabbing a still image from the camera feed when compared to the new method of using Camera1 API. But they're still not close to matching the image quality of Instagram and other apps using Camera2 API.
We started investigating this issue again for two reasons. First, user reports surfaced that Snapchat was asking for permissions using the granular Android 6. This is a step in the right direction, and another example of Snapchat finally using Android tools properly, but it's not an indication of Camera2 API support.
Add Bitmoji, Stories, Ads, and more to your app
The second reason we started looking into this issue was because Snapchat started a new ad campaign marketing itself as A New Kind of Camera. We were hoping this meant their rumored revamped Android app was ready and image quality had improved to Instagram levels, but Snapchat is still quite literally a decade behind.Over million people use Snapchat to keep in touch with their friends every day!
With Snap Kit, you can add their favorite features to your app, build your business, and reach this audience with free distribution and attribution back to your platform. Let your users show off their favorite moments from your app with their friends in Snaps and Stories. Let your users register and log in quickly, tap into new features, and bring along their Bitmoji. Let your users bring their favorite internet avatar into your app and express themselves in fun, new ways.
Find and feature Snapchat Stories on your own platform, or let your community share their own! We believe that privacy is essential to honest self-expression. Creative KIT Make your app more shareable Let your users show off their favorite moments from your app with their friends in Snaps and Stories.
Share a Sticker. Share in Fullscreen. Share to Camera. Share to Preview. Login KIT Sign up users securely and seamlessly Let your users register and log in quickly, tap into new features, and bring along their Bitmoji. Bitmoji KIT Make their conversations come alive Let your users bring their favorite internet avatar into your app and express themselves in fun, new ways.
Then, embed highlights right in your app to feature favorite moments or breaking news. You can even export data directly into analytics tools. Request Access Want early access to Story Kit?