Skip to main content
Version: 6.0.0

Track Network Calls

Finotes will be able to notify issues in API calls automatically.

Finotes is capable of reporting HTTP(s) based network errors automatically with just the basic integration.
Incase the basic integration is not complete, head over to How To Integrate section.

Privacy

Each network issue reports are tagged with corresponding request-response headers, request-response body and associated parameters.

Finotes provides a global and easy mechanism to mask sensitive header fields using maskHeaders in info.plist file as shown in code snippet. You may provide 1 or more header keys in the 'maskHeaders' field.

Open info.plist as Source Code, then add the follwing key.

Info.plist:

<key>MaskHeaders</key>
<array>
<string>Header-Key</string>
<string>Another-Header-Key</string>
</array>

Use case:

Let us say API calls from the app has header field 'X-Key' which contains the authentication token.
It can be masked by providing the 'X-Key' in the field as shown above, masked header fields are filtered out and are not sent to the Finotes dashboard.

The maskHeaders field is case insensitive.

Dynamic Path Component

When API call issues are reported, different urls are created as separate ticket.
This can cause large number of tickets generated for the same API incase the url contains an id or any other dynamic path component.

Use URLPatterns key in info.plist to specify the urls that contains dynamic path component. Wrap the corresponding dynamic path component or id inside '{}'.

Info.plist:

<key>URLPatterns</key>
<array>
<string>https://your-host.com/path_element/{id}/{another_id}/path_element</string>
<string>https://your-host.com/path_element/{id}</string>
</array>

Whitelisting domains

Using the ObservableDomains key in Info.plist file, domains can be whitelisted. Once set only HTTP(s) calls made to the whitelisted domains will be tracked by the Framework.

Info.plist:

<key>ObservableDomains</key>
<array>
<string>https://your-host.com/path_element/{id}/{another_id}/path_element</string>
<string>https://your-host.com/path_element/{id}</string>
</array>

Setting Domain timeout

Setting domain timeout is an extension of whitelisting domains. Developers can set timeout to whitelisted domains using the ObservableDomains key as comma separated value.

The timeout value should be in milliseconds. Once the value is set if any of the HTTP(s) calls to the domain takes more than the set amount of time, an issue report will be raised.

Info.plist:

<key>ObservableDomains</key>
<array>
<string>your-host.com, 10000</string>
<string>another-host.com, 5000</string>
</array>

Deprecated APIs

With the auto tracking capabilities of Finotes framework, the need to call the following APIs are eliminated. We have deprecated these APIs and will be removed in a future version.

//deprecated
[Fn registerDefaultProtocolMonitor];
NSURLSessionConfiguration *configuration = [NSURLSessionConfiguration 
defaultSessionConfiguration];
//deprecated
[Fn getProtocols:[configuration.protocolClasses mutableCopy] ];